1QA output created by 051 2Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728 3Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728 backing_file=TEST_DIR/t.IMGFMT.base backing_fmt=IMGFMT 4 5=== Unknown option === 6 7Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,unknown_opt=,if=none,id=drive0 8QEMU_PROG: -drive file=TEST_DIR/t.qcow2,format=qcow2,unknown_opt=,if=none,id=drive0: Block format 'qcow2' does not support the option 'unknown_opt' 9 10Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,unknown_opt=on,if=none,id=drive0 11QEMU_PROG: -drive file=TEST_DIR/t.qcow2,format=qcow2,unknown_opt=on,if=none,id=drive0: Block format 'qcow2' does not support the option 'unknown_opt' 12 13Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,unknown_opt=1234,if=none,id=drive0 14QEMU_PROG: -drive file=TEST_DIR/t.qcow2,format=qcow2,unknown_opt=1234,if=none,id=drive0: Block format 'qcow2' does not support the option 'unknown_opt' 15 16Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,unknown_opt=foo,if=none,id=drive0 17QEMU_PROG: -drive file=TEST_DIR/t.qcow2,format=qcow2,unknown_opt=foo,if=none,id=drive0: Block format 'qcow2' does not support the option 'unknown_opt' 18 19 20=== Unknown protocol option === 21 22Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,file.unknown_opt= 23QEMU_PROG: -drive file=TEST_DIR/t.qcow2,format=qcow2,file.unknown_opt=: Block protocol 'file' doesn't support the option 'unknown_opt' 24 25Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,file.unknown_opt=on 26QEMU_PROG: -drive file=TEST_DIR/t.qcow2,format=qcow2,file.unknown_opt=on: Block protocol 'file' doesn't support the option 'unknown_opt' 27 28Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,file.unknown_opt=1234 29QEMU_PROG: -drive file=TEST_DIR/t.qcow2,format=qcow2,file.unknown_opt=1234: Block protocol 'file' doesn't support the option 'unknown_opt' 30 31Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,file.unknown_opt=foo 32QEMU_PROG: -drive file=TEST_DIR/t.qcow2,format=qcow2,file.unknown_opt=foo: Block protocol 'file' doesn't support the option 'unknown_opt' 33 34 35=== Invalid format === 36 37Testing: -drive file=TEST_DIR/t.qcow2,format=foo 38QEMU_PROG: -drive file=TEST_DIR/t.qcow2,format=foo: Unknown driver 'foo' 39 40Testing: -drive file=TEST_DIR/t.qcow2,driver=foo 41QEMU_PROG: -drive file=TEST_DIR/t.qcow2,driver=foo: Unknown driver 'foo' 42 43Testing: -drive file=TEST_DIR/t.qcow2,driver=raw,format=qcow2 44QEMU_PROG: -drive file=TEST_DIR/t.qcow2,driver=raw,format=qcow2: Cannot specify both 'driver' and 'format' 45 46Testing: -drive file=TEST_DIR/t.qcow2,driver=qcow2,format=qcow2 47QEMU_PROG: -drive file=TEST_DIR/t.qcow2,driver=qcow2,format=qcow2: Cannot specify both 'driver' and 'format' 48 49 50=== Node names === 51 52Testing: -drive file=TEST_DIR/t.qcow2,node-name=x123456789012345678901234567890 53QEMU X.Y.Z monitor - type 'help' for more information 54(qemu) quit 55 56Testing: -drive file=TEST_DIR/t.qcow2,node-name=x1234567890123456789012345678901 57QEMU_PROG: -drive file=TEST_DIR/t.qcow2,node-name=x1234567890123456789012345678901: Node name too long 58 59Testing: -drive file=TEST_DIR/t.qcow2,node-name=All-Types.of_all0wed_chars 60QEMU X.Y.Z monitor - type 'help' for more information 61(qemu) quit 62 63Testing: -drive file=TEST_DIR/t.qcow2,node-name=123foo 64QEMU_PROG: -drive file=TEST_DIR/t.qcow2,node-name=123foo: Invalid node-name: '123foo' 65 66Testing: -drive file=TEST_DIR/t.qcow2,node-name=_foo 67QEMU_PROG: -drive file=TEST_DIR/t.qcow2,node-name=_foo: Invalid node-name: '_foo' 68 69Testing: -drive file=TEST_DIR/t.qcow2,node-name=foo#12 70QEMU_PROG: -drive file=TEST_DIR/t.qcow2,node-name=foo#12: Invalid node-name: 'foo#12' 71 72 73=== Device without drive === 74 75Testing: -device virtio-scsi -device scsi-hd 76QEMU X.Y.Z monitor - type 'help' for more information 77(qemu) QEMU_PROG: -device scsi-hd: drive property not set 78 79 80=== Overriding backing file === 81 82Testing: -drive file=TEST_DIR/t.qcow2,driver=qcow2,backing.file.filename=TEST_DIR/t.qcow2.orig,if=none,id=drive0 -nodefaults 83QEMU X.Y.Z monitor - type 'help' for more information 84(qemu) info block 85drive0 (NODE_NAME): json:{"backing": {"driver": "qcow2", "file": {"driver": "file", "filename": "TEST_DIR/t.qcow2.orig"}}, "driver": "qcow2", "file": {"driver": "file", "filename": "TEST_DIR/t.qcow2"}} (qcow2) 86 Removable device: not locked, tray closed 87 Cache mode: writeback 88 Backing file: TEST_DIR/t.qcow2.orig (chain depth: 1) 89(qemu) quit 90 91Testing: -drive file=TEST_DIR/t.qcow2,driver=raw,backing.file.filename=TEST_DIR/t.qcow2.orig 92QEMU_PROG: -drive file=TEST_DIR/t.qcow2,driver=raw,backing.file.filename=TEST_DIR/t.qcow2.orig: Driver doesn't support backing files 93 94Testing: -drive file=TEST_DIR/t.qcow2,file.backing.driver=file,file.backing.filename=TEST_DIR/t.qcow2.orig 95QEMU_PROG: -drive file=TEST_DIR/t.qcow2,file.backing.driver=file,file.backing.filename=TEST_DIR/t.qcow2.orig: Driver doesn't support backing files 96 97Testing: -drive file=TEST_DIR/t.qcow2,file.backing.driver=qcow2,file.backing.file.filename=TEST_DIR/t.qcow2.orig 98QEMU_PROG: -drive file=TEST_DIR/t.qcow2,file.backing.driver=qcow2,file.backing.file.filename=TEST_DIR/t.qcow2.orig: Driver doesn't support backing files 99 100 101=== Enable and disable lazy refcounting on the command line, plus some invalid values === 102 103Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728 104Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,lazy-refcounts=on 105QEMU X.Y.Z monitor - type 'help' for more information 106(qemu) quit 107 108Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,lazy-refcounts=off 109QEMU X.Y.Z monitor - type 'help' for more information 110(qemu) quit 111 112Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,lazy-refcounts= 113QEMU_PROG: -drive file=TEST_DIR/t.qcow2,format=qcow2,lazy-refcounts=: Parameter 'lazy-refcounts' expects 'on' or 'off' 114 115Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,lazy-refcounts=42 116QEMU_PROG: -drive file=TEST_DIR/t.qcow2,format=qcow2,lazy-refcounts=42: Parameter 'lazy-refcounts' expects 'on' or 'off' 117 118Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,lazy-refcounts=foo 119QEMU_PROG: -drive file=TEST_DIR/t.qcow2,format=qcow2,lazy-refcounts=foo: Parameter 'lazy-refcounts' expects 'on' or 'off' 120 121 122=== With version 2 images enabling lazy refcounts must fail === 123 124Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728 125Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,lazy-refcounts=on 126QEMU_PROG: -drive file=TEST_DIR/t.qcow2,format=qcow2,lazy-refcounts=on: Lazy refcounts require a qcow2 image with at least qemu 1.1 compatibility level 127 128Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,lazy-refcounts=off 129QEMU X.Y.Z monitor - type 'help' for more information 130(qemu) quit 131 132 133=== No medium === 134 135Testing: -drive if=floppy 136QEMU X.Y.Z monitor - type 'help' for more information 137(qemu) quit 138 139Testing: -drive if=ide,media=cdrom 140QEMU X.Y.Z monitor - type 'help' for more information 141(qemu) quit 142 143Testing: -drive if=ide 144QEMU X.Y.Z monitor - type 'help' for more information 145(qemu) QEMU_PROG: Device needs media, but drive is empty 146 147Testing: -drive if=virtio 148QEMU X.Y.Z monitor - type 'help' for more information 149(qemu) QEMU_PROG: -drive if=virtio: Device needs media, but drive is empty 150 151Testing: -drive if=none,id=disk -device ide-cd,drive=disk 152QEMU X.Y.Z monitor - type 'help' for more information 153(qemu) quit 154 155Testing: -drive if=none,id=disk -device lsi53c895a -device scsi-cd,drive=disk 156QEMU X.Y.Z monitor - type 'help' for more information 157(qemu) quit 158 159Testing: -drive if=none,id=disk -device ide-hd,drive=disk 160QEMU X.Y.Z monitor - type 'help' for more information 161(qemu) QEMU_PROG: -device ide-hd,drive=disk: Device needs media, but drive is empty 162 163Testing: -drive if=none,id=disk -device lsi53c895a -device scsi-hd,drive=disk 164QEMU X.Y.Z monitor - type 'help' for more information 165(qemu) QEMU_PROG: -device scsi-hd,drive=disk: Device needs media, but drive is empty 166 167 168=== Attach to node in non-default iothread === 169 170Testing: -drive file=TEST_DIR/t.qcow2,if=none,node-name=disk -object iothread,id=thread0 -device virtio-scsi,iothread=thread0,id=virtio-scsi0 -device scsi-hd,bus=virtio-scsi0.0,drive=disk,share-rw=on -device ide-hd,drive=disk,share-rw=on 171QEMU X.Y.Z monitor - type 'help' for more information 172(qemu) QEMU_PROG: -device ide-hd,drive=disk,share-rw=on: Cannot change iothread of active block backend 173 174Testing: -drive file=TEST_DIR/t.qcow2,if=none,node-name=disk -object iothread,id=thread0 -device virtio-scsi,iothread=thread0,id=virtio-scsi0 -device scsi-hd,bus=virtio-scsi0.0,drive=disk,share-rw=on -device virtio-blk-pci,drive=disk,share-rw=on 175QEMU X.Y.Z monitor - type 'help' for more information 176(qemu) QEMU_PROG: -device virtio-blk-pci,drive=disk,share-rw=on: Cannot change iothread of active block backend 177 178Testing: -drive file=TEST_DIR/t.qcow2,if=none,node-name=disk -object iothread,id=thread0 -device virtio-scsi,iothread=thread0,id=virtio-scsi0 -device scsi-hd,bus=virtio-scsi0.0,drive=disk,share-rw=on -device lsi53c895a,id=lsi0 -device scsi-hd,bus=lsi0.0,drive=disk,share-rw=on 179QEMU X.Y.Z monitor - type 'help' for more information 180(qemu) QEMU_PROG: -device scsi-hd,bus=lsi0.0,drive=disk,share-rw=on: HBA does not support iothreads 181 182Testing: -drive file=TEST_DIR/t.qcow2,if=none,node-name=disk -object iothread,id=thread0 -device virtio-scsi,iothread=thread0,id=virtio-scsi0 -device scsi-hd,bus=virtio-scsi0.0,drive=disk,share-rw=on -device virtio-scsi,id=virtio-scsi1 -device scsi-hd,bus=virtio-scsi1.0,drive=disk,share-rw=on 183QEMU X.Y.Z monitor - type 'help' for more information 184(qemu) QEMU_PROG: -device scsi-hd,bus=virtio-scsi1.0,drive=disk,share-rw=on: Cannot change iothread of active block backend 185 186Testing: -drive file=TEST_DIR/t.qcow2,if=none,node-name=disk -object iothread,id=thread0 -device virtio-scsi,iothread=thread0,id=virtio-scsi0 -device scsi-hd,bus=virtio-scsi0.0,drive=disk,share-rw=on -device virtio-blk-pci,drive=disk,iothread=iothread0,share-rw=on 187QEMU X.Y.Z monitor - type 'help' for more information 188(qemu) QEMU_PROG: -device virtio-blk-pci,drive=disk,iothread=iothread0,share-rw=on: Cannot change iothread of active block backend 189 190Testing: -drive file=TEST_DIR/t.qcow2,if=none,node-name=disk -object iothread,id=thread0 -device virtio-scsi,iothread=thread0,id=virtio-scsi0 -device scsi-hd,bus=virtio-scsi0.0,drive=disk,share-rw=on -device virtio-scsi,id=virtio-scsi1,iothread=thread0 -device scsi-hd,bus=virtio-scsi1.0,drive=disk,share-rw=on 191QEMU X.Y.Z monitor - type 'help' for more information 192(qemu) quit 193 194 195=== Read-only === 196 197Testing: -drive file=TEST_DIR/t.qcow2,if=floppy,readonly=on 198QEMU X.Y.Z monitor - type 'help' for more information 199(qemu) quit 200 201Testing: -drive file=TEST_DIR/t.qcow2,if=ide,media=cdrom,readonly=on 202QEMU X.Y.Z monitor - type 'help' for more information 203(qemu) quit 204 205Testing: -drive file=TEST_DIR/t.qcow2,if=ide,readonly=on 206QEMU X.Y.Z monitor - type 'help' for more information 207(qemu) QEMU_PROG: Block node is read-only 208 209Testing: -drive file=TEST_DIR/t.qcow2,if=virtio,readonly=on 210QEMU X.Y.Z monitor - type 'help' for more information 211(qemu) quit 212 213Testing: -drive file=TEST_DIR/t.qcow2,if=none,id=disk,readonly=on -device ide-cd,drive=disk 214QEMU X.Y.Z monitor - type 'help' for more information 215(qemu) quit 216 217Testing: -drive file=TEST_DIR/t.qcow2,if=none,id=disk,readonly=on -device lsi53c895a -device scsi-cd,drive=disk 218QEMU X.Y.Z monitor - type 'help' for more information 219(qemu) quit 220 221Testing: -drive file=TEST_DIR/t.qcow2,if=none,id=disk,readonly=on -device ide-hd,drive=disk 222QEMU X.Y.Z monitor - type 'help' for more information 223(qemu) QEMU_PROG: -device ide-hd,drive=disk: Block node is read-only 224 225Testing: -drive file=TEST_DIR/t.qcow2,if=none,id=disk,readonly=on -device lsi53c895a -device scsi-hd,drive=disk 226QEMU X.Y.Z monitor - type 'help' for more information 227(qemu) quit 228 229 230=== Cache modes === 231 232Testing: -drive driver=null-co,read-zeroes=on,cache=none 233QEMU X.Y.Z monitor - type 'help' for more information 234(qemu) quit 235 236Testing: -drive driver=null-co,read-zeroes=on,cache=directsync 237QEMU X.Y.Z monitor - type 'help' for more information 238(qemu) quit 239 240Testing: -drive driver=null-co,read-zeroes=on,cache=writeback 241QEMU X.Y.Z monitor - type 'help' for more information 242(qemu) quit 243 244Testing: -drive driver=null-co,read-zeroes=on,cache=writethrough 245QEMU X.Y.Z monitor - type 'help' for more information 246(qemu) quit 247 248Testing: -drive driver=null-co,read-zeroes=on,cache=unsafe 249QEMU X.Y.Z monitor - type 'help' for more information 250(qemu) quit 251 252Testing: -drive driver=null-co,cache=invalid_value 253QEMU_PROG: -drive driver=null-co,cache=invalid_value: invalid cache option 254 255Testing: -drive file=TEST_DIR/t.qcow2,cache=writeback,backing.file.filename=TEST_DIR/t.qcow2.base,backing.cache.no-flush=on,backing.node-name=backing,backing.file.node-name=backing-file,file.node-name=file,if=none,id=drive0 -nodefaults 256QEMU X.Y.Z monitor - type 'help' for more information 257(qemu) info block 258drive0 (NODE_NAME): json:{"backing": {"driver": "qcow2", "file": {"driver": "file", "filename": "TEST_DIR/t.qcow2.base"}}, "driver": "qcow2", "file": {"driver": "file", "filename": "TEST_DIR/t.qcow2"}} (qcow2) 259 Removable device: not locked, tray closed 260 Cache mode: writeback 261 Backing file: TEST_DIR/t.qcow2.base (chain depth: 1) 262(qemu) info block file 263 264file: TEST_DIR/t.qcow2 (file) 265 Cache mode: writeback 266(qemu) info block backing 267backing: TEST_DIR/t.qcow2.base (qcow2, read-only) 268 Cache mode: writeback, ignore flushes 269(qemu) info block backing-file 270 271backing-file: TEST_DIR/t.qcow2.base (file, read-only) 272 Cache mode: writeback, ignore flushes 273(qemu) quit 274 275Testing: -drive file=TEST_DIR/t.qcow2,cache=writethrough,backing.file.filename=TEST_DIR/t.qcow2.base,backing.cache.no-flush=on,backing.node-name=backing,backing.file.node-name=backing-file,file.node-name=file,if=none,id=drive0 -nodefaults 276QEMU X.Y.Z monitor - type 'help' for more information 277(qemu) info block 278drive0 (NODE_NAME): json:{"backing": {"driver": "qcow2", "file": {"driver": "file", "filename": "TEST_DIR/t.qcow2.base"}}, "driver": "qcow2", "file": {"driver": "file", "filename": "TEST_DIR/t.qcow2"}} (qcow2) 279 Removable device: not locked, tray closed 280 Cache mode: writethrough 281 Backing file: TEST_DIR/t.qcow2.base (chain depth: 1) 282(qemu) info block file 283 284file: TEST_DIR/t.qcow2 (file) 285 Cache mode: writeback 286(qemu) info block backing 287backing: TEST_DIR/t.qcow2.base (qcow2, read-only) 288 Cache mode: writeback, ignore flushes 289(qemu) info block backing-file 290 291backing-file: TEST_DIR/t.qcow2.base (file, read-only) 292 Cache mode: writeback, ignore flushes 293(qemu) quit 294 295Testing: -drive file=TEST_DIR/t.qcow2,cache=unsafe,backing.file.filename=TEST_DIR/t.qcow2.base,backing.cache.no-flush=on,backing.node-name=backing,backing.file.node-name=backing-file,file.node-name=file,if=none,id=drive0 -nodefaults 296QEMU X.Y.Z monitor - type 'help' for more information 297(qemu) info block 298drive0 (NODE_NAME): json:{"backing": {"driver": "qcow2", "file": {"driver": "file", "filename": "TEST_DIR/t.qcow2.base"}}, "driver": "qcow2", "file": {"driver": "file", "filename": "TEST_DIR/t.qcow2"}} (qcow2) 299 Removable device: not locked, tray closed 300 Cache mode: writeback, ignore flushes 301 Backing file: TEST_DIR/t.qcow2.base (chain depth: 1) 302(qemu) info block file 303 304file: TEST_DIR/t.qcow2 (file) 305 Cache mode: writeback, ignore flushes 306(qemu) info block backing 307backing: TEST_DIR/t.qcow2.base (qcow2, read-only) 308 Cache mode: writeback, ignore flushes 309(qemu) info block backing-file 310 311backing-file: TEST_DIR/t.qcow2.base (file, read-only) 312 Cache mode: writeback, ignore flushes 313(qemu) quit 314 315Testing: -drive file=TEST_DIR/t.qcow2,cache=invalid_value,backing.file.filename=TEST_DIR/t.qcow2.base,backing.cache.no-flush=on,backing.node-name=backing,backing.file.node-name=backing-file,file.node-name=file,if=none,id=drive0 -nodefaults 316QEMU_PROG: -drive file=TEST_DIR/t.qcow2,cache=invalid_value,backing.file.filename=TEST_DIR/t.qcow2.base,backing.cache.no-flush=on,backing.node-name=backing,backing.file.node-name=backing-file,file.node-name=file,if=none,id=drive0: invalid cache option 317 318 319=== Specifying the protocol layer === 320 321Testing: -drive file=TEST_DIR/t.qcow2,file.driver=file 322QEMU X.Y.Z monitor - type 'help' for more information 323(qemu) quit 324 325 326=== Leaving out required options === 327 328Testing: -drive driver=file 329QEMU_PROG: -drive driver=file: The 'file' block driver requires a file name 330 331Testing: -drive driver=file,filename= 332QEMU_PROG: -drive driver=file,filename=: The 'file' block driver requires a file name 333 334Testing: -drive driver=nbd 335QEMU_PROG: -drive driver=nbd: NBD server address missing 336 337Testing: -drive driver=raw 338QEMU_PROG: -drive driver=raw: A block device must be specified for "file" 339 340Testing: -drive file.driver=file 341QEMU_PROG: -drive file.driver=file: The 'file' block driver requires a file name 342 343Testing: -drive file.driver=nbd 344QEMU_PROG: -drive file.driver=nbd: NBD server address missing 345 346Testing: -drive file.driver=raw 347QEMU_PROG: -drive file.driver=raw: A block device must be specified for "file" 348 349Testing: -drive foo=bar 350QEMU_PROG: -drive foo=bar: Must specify either driver or file 351 352 353=== Specifying both an option and its legacy alias === 354 355Testing: -drive file=TEST_DIR/t.qcow2,iops=1234,throttling.iops-total=5678 356QEMU_PROG: -drive file=TEST_DIR/t.qcow2,iops=1234,throttling.iops-total=5678: 'throttling.iops-total' and its alias 'iops' can't be used at the same time 357 358Testing: -drive file=TEST_DIR/t.qcow2,iops_rd=1234,throttling.iops-read=5678 359QEMU_PROG: -drive file=TEST_DIR/t.qcow2,iops_rd=1234,throttling.iops-read=5678: 'throttling.iops-read' and its alias 'iops_rd' can't be used at the same time 360 361Testing: -drive file=TEST_DIR/t.qcow2,iops_wr=1234,throttling.iops-write=5678 362QEMU_PROG: -drive file=TEST_DIR/t.qcow2,iops_wr=1234,throttling.iops-write=5678: 'throttling.iops-write' and its alias 'iops_wr' can't be used at the same time 363 364Testing: -drive file=TEST_DIR/t.qcow2,bps=1234,throttling.bps-total=5678 365QEMU_PROG: -drive file=TEST_DIR/t.qcow2,bps=1234,throttling.bps-total=5678: 'throttling.bps-total' and its alias 'bps' can't be used at the same time 366 367Testing: -drive file=TEST_DIR/t.qcow2,bps_rd=1234,throttling.bps-read=5678 368QEMU_PROG: -drive file=TEST_DIR/t.qcow2,bps_rd=1234,throttling.bps-read=5678: 'throttling.bps-read' and its alias 'bps_rd' can't be used at the same time 369 370Testing: -drive file=TEST_DIR/t.qcow2,bps_wr=1234,throttling.bps-write=5678 371QEMU_PROG: -drive file=TEST_DIR/t.qcow2,bps_wr=1234,throttling.bps-write=5678: 'throttling.bps-write' and its alias 'bps_wr' can't be used at the same time 372 373Testing: -drive file=TEST_DIR/t.qcow2,iops_max=1234,throttling.iops-total-max=5678 374QEMU_PROG: -drive file=TEST_DIR/t.qcow2,iops_max=1234,throttling.iops-total-max=5678: 'throttling.iops-total-max' and its alias 'iops_max' can't be used at the same time 375 376Testing: -drive file=TEST_DIR/t.qcow2,iops_rd_max=1234,throttling.iops-read-max=5678 377QEMU_PROG: -drive file=TEST_DIR/t.qcow2,iops_rd_max=1234,throttling.iops-read-max=5678: 'throttling.iops-read-max' and its alias 'iops_rd_max' can't be used at the same time 378 379Testing: -drive file=TEST_DIR/t.qcow2,iops_wr_max=1234,throttling.iops-write-max=5678 380QEMU_PROG: -drive file=TEST_DIR/t.qcow2,iops_wr_max=1234,throttling.iops-write-max=5678: 'throttling.iops-write-max' and its alias 'iops_wr_max' can't be used at the same time 381 382Testing: -drive file=TEST_DIR/t.qcow2,bps_max=1234,throttling.bps-total-max=5678 383QEMU_PROG: -drive file=TEST_DIR/t.qcow2,bps_max=1234,throttling.bps-total-max=5678: 'throttling.bps-total-max' and its alias 'bps_max' can't be used at the same time 384 385Testing: -drive file=TEST_DIR/t.qcow2,bps_rd_max=1234,throttling.bps-read-max=5678 386QEMU_PROG: -drive file=TEST_DIR/t.qcow2,bps_rd_max=1234,throttling.bps-read-max=5678: 'throttling.bps-read-max' and its alias 'bps_rd_max' can't be used at the same time 387 388Testing: -drive file=TEST_DIR/t.qcow2,bps_wr_max=1234,throttling.bps-write-max=5678 389QEMU_PROG: -drive file=TEST_DIR/t.qcow2,bps_wr_max=1234,throttling.bps-write-max=5678: 'throttling.bps-write-max' and its alias 'bps_wr_max' can't be used at the same time 390 391Testing: -drive file=TEST_DIR/t.qcow2,iops_size=1234,throttling.iops-size=5678 392QEMU_PROG: -drive file=TEST_DIR/t.qcow2,iops_size=1234,throttling.iops-size=5678: 'throttling.iops-size' and its alias 'iops_size' can't be used at the same time 393 394Testing: -drive file=TEST_DIR/t.qcow2,readonly=on,read-only=off 395QEMU_PROG: -drive file=TEST_DIR/t.qcow2,readonly=on,read-only=off: 'read-only' and its alias 'readonly' can't be used at the same time 396 397 398=== Catching negative/large throttling values === 399 400Testing: -drive file=TEST_DIR/t.qcow2,iops=-1 401QEMU_PROG: -drive file=TEST_DIR/t.qcow2,iops=-1: bps/iops/max values must be within [0, 1000000000000000] 402 403Testing: -drive file=TEST_DIR/t.qcow2,bps=-2 404QEMU_PROG: -drive file=TEST_DIR/t.qcow2,bps=-2: bps/iops/max values must be within [0, 1000000000000000] 405 406Testing: -drive file=TEST_DIR/t.qcow2,bps_rd=-3 407QEMU_PROG: -drive file=TEST_DIR/t.qcow2,bps_rd=-3: bps/iops/max values must be within [0, 1000000000000000] 408 409Testing: -drive file=TEST_DIR/t.qcow2,bps_rd_max=-3 410QEMU_PROG: -drive file=TEST_DIR/t.qcow2,bps_rd_max=-3: bps/iops/max values must be within [0, 1000000000000000] 411 412Testing: -drive file=TEST_DIR/t.qcow2,throttling.iops-total=-4 413QEMU_PROG: -drive file=TEST_DIR/t.qcow2,throttling.iops-total=-4: bps/iops/max values must be within [0, 1000000000000000] 414 415Testing: -drive file=TEST_DIR/t.qcow2,throttling.bps-total=-5 416QEMU_PROG: -drive file=TEST_DIR/t.qcow2,throttling.bps-total=-5: bps/iops/max values must be within [0, 1000000000000000] 417 418Testing: -drive file=TEST_DIR/t.qcow2,bps=0 419QEMU X.Y.Z monitor - type 'help' for more information 420(qemu) quit 421 422Testing: -drive file=TEST_DIR/t.qcow2,bps=1 423QEMU X.Y.Z monitor - type 'help' for more information 424(qemu) quit 425 426Testing: -drive file=TEST_DIR/t.qcow2,bps=1000000000000000 427QEMU X.Y.Z monitor - type 'help' for more information 428(qemu) quit 429 430Testing: -drive file=TEST_DIR/t.qcow2,bps=1000000000000001 431QEMU_PROG: -drive file=TEST_DIR/t.qcow2,bps=1000000000000001: bps/iops/max values must be within [0, 1000000000000000] 432 433Testing: -drive file=TEST_DIR/t.qcow2,bps=9999999999999999 434QEMU_PROG: -drive file=TEST_DIR/t.qcow2,bps=9999999999999999: bps/iops/max values must be within [0, 1000000000000000] 435 436 437=== Parsing protocol from file name === 438 439Testing: -hda foo:bar 440QEMU_PROG: -hda foo:bar: Unknown protocol 'foo' 441 442Testing: -drive file=foo:bar 443QEMU_PROG: -drive file=foo:bar: Unknown protocol 'foo' 444 445Testing: -drive file.filename=foo:bar 446QEMU_PROG: -drive file.filename=foo:bar: Could not open 'foo:bar': No such file or directory 447 448Testing: -hda file:TEST_DIR/t.qcow2 449QEMU X.Y.Z monitor - type 'help' for more information 450(qemu) quit 451 452Testing: -drive file=file:TEST_DIR/t.qcow2 453QEMU X.Y.Z monitor - type 'help' for more information 454(qemu) quit 455 456Testing: -drive file.filename=file:TEST_DIR/t.qcow2 457QEMU_PROG: -drive file.filename=file:TEST_DIR/t.qcow2: Could not open 'file:TEST_DIR/t.qcow2': No such file or directory 458 459 460=== Snapshot mode === 461 462wrote 4096/4096 bytes at offset 0 4634 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) 464Testing: -drive file=TEST_DIR/t.qcow2,if=none,id=drive0 -snapshot 465QEMU X.Y.Z monitor - type 'help' for more information 466(qemu) qemu-io drive0 "write -P 0x22 0 4k" 467wrote 4096/4096 bytes at offset 0 4684 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) 469(qemu) quit 470 471Testing: -drive file=TEST_DIR/t.qcow2,snapshot=on,if=none,id=drive0 472QEMU X.Y.Z monitor - type 'help' for more information 473(qemu) qemu-io drive0 "write -P 0x22 0 4k" 474wrote 4096/4096 bytes at offset 0 4754 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) 476(qemu) quit 477 478Testing: -drive file.filename=TEST_DIR/t.qcow2,driver=qcow2,snapshot=on,if=none,id=drive0 479QEMU X.Y.Z monitor - type 'help' for more information 480(qemu) qemu-io drive0 "write -P 0x22 0 4k" 481wrote 4096/4096 bytes at offset 0 4824 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) 483(qemu) quit 484 485Testing: -drive file.filename=TEST_DIR/t.qcow2,driver=qcow2,if=none,id=drive0 -snapshot 486QEMU X.Y.Z monitor - type 'help' for more information 487(qemu) qemu-io drive0 "write -P 0x22 0 4k" 488wrote 4096/4096 bytes at offset 0 4894 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) 490(qemu) quit 491 492Testing: -drive file=file:TEST_DIR/t.qcow2,if=none,id=drive0 -snapshot 493QEMU X.Y.Z monitor - type 'help' for more information 494(qemu) qemu-io drive0 "write -P 0x22 0 4k" 495wrote 4096/4096 bytes at offset 0 4964 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) 497(qemu) quit 498 499Testing: -drive file=file:TEST_DIR/t.qcow2,snapshot=on,if=none,id=drive0 500QEMU X.Y.Z monitor - type 'help' for more information 501(qemu) qemu-io drive0 "write -P 0x22 0 4k" 502wrote 4096/4096 bytes at offset 0 5034 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) 504(qemu) quit 505 506Testing: -drive file=TEST_DIR/t.qcow2,if=none,id=drive0 -snapshot 507QEMU X.Y.Z monitor - type 'help' for more information 508(qemu) qemu-io drive0 "write -P 0x22 0 4k" 509wrote 4096/4096 bytes at offset 0 5104 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) 511(qemu) quit 512 513Testing: -drive file=TEST_DIR/t.qcow2,snapshot=on,if=none,id=drive0 514QEMU X.Y.Z monitor - type 'help' for more information 515(qemu) qemu-io drive0 "write -P 0x22 0 4k" 516wrote 4096/4096 bytes at offset 0 5174 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) 518(qemu) quit 519 520read 4096/4096 bytes at offset 0 5214 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) 522Testing: -drive file=TEST_DIR/t.qcow2,snapshot=off,if=none,id=drive0 523QEMU X.Y.Z monitor - type 'help' for more information 524(qemu) qemu-io drive0 "write -P 0x22 0 4k" 525wrote 4096/4096 bytes at offset 0 5264 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) 527(qemu) quit 528 529read 4096/4096 bytes at offset 0 5304 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) 531Testing: -drive file=TEST_DIR/t.qcow2,snapshot=on,if=none,id=drive0 532QEMU X.Y.Z monitor - type 'help' for more information 533(qemu) qemu-io drive0 "write -P 0x33 0 4k" 534wrote 4096/4096 bytes at offset 0 5354 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) 536(qemu) commit drive0 537(qemu) quit 538 539read 4096/4096 bytes at offset 0 5404 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) 541Testing: -drive driver=null-co,snapshot=on 542QEMU_PROG: -drive driver=null-co,snapshot=on: Could not get temporary filename: No such file or directory 543 544Testing: -drive file=TEST_DIR/t.qcow2,snapshot=on,read-only=on,if=none,id=drive0 545QEMU X.Y.Z monitor - type 'help' for more information 546(qemu) info block 547drive0 (NODE_NAME): json:{"backing": {"driver": "qcow2", "file": {"driver": "file", "filename": "TEST_DIR/t.qcow2"}}, "driver": "qcow2", "file": {"driver": "file", "filename": SNAPSHOT_PATH}} (qcow2, read-only) 548 Removable device: not locked, tray closed 549 Cache mode: writeback, ignore flushes 550 Backing file: TEST_DIR/t.qcow2 (chain depth: 1) 551(qemu) quit 552 553*** done 554