| 1 | QA output created by 051 |
| 2 | Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728 |
| 3 | Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728 backing_file=TEST_DIR/t.IMGFMT.base backing_fmt=IMGFMT |
| 4 | |
| 5 | === Unknown option === |
| 6 | |
| 7 | Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,unknown_opt=,if=none,id=drive0 |
| 8 | QEMU_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 | |
| 10 | Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,unknown_opt=on,if=none,id=drive0 |
| 11 | QEMU_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 | |
| 13 | Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,unknown_opt=1234,if=none,id=drive0 |
| 14 | QEMU_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 | |
| 16 | Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,unknown_opt=foo,if=none,id=drive0 |
| 17 | QEMU_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 | |
| 22 | Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,file.unknown_opt= |
| 23 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,format=qcow2,file.unknown_opt=: Block protocol 'file' doesn't support the option 'unknown_opt' |
| 24 | |
| 25 | Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,file.unknown_opt=on |
| 26 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,format=qcow2,file.unknown_opt=on: Block protocol 'file' doesn't support the option 'unknown_opt' |
| 27 | |
| 28 | Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,file.unknown_opt=1234 |
| 29 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,format=qcow2,file.unknown_opt=1234: Block protocol 'file' doesn't support the option 'unknown_opt' |
| 30 | |
| 31 | Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,file.unknown_opt=foo |
| 32 | QEMU_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 | |
| 37 | Testing: -drive file=TEST_DIR/t.qcow2,format=foo |
| 38 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,format=foo: Unknown driver 'foo' |
| 39 | |
| 40 | Testing: -drive file=TEST_DIR/t.qcow2,driver=foo |
| 41 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,driver=foo: Unknown driver 'foo' |
| 42 | |
| 43 | Testing: -drive file=TEST_DIR/t.qcow2,driver=raw,format=qcow2 |
| 44 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,driver=raw,format=qcow2: Cannot specify both 'driver' and 'format' |
| 45 | |
| 46 | Testing: -drive file=TEST_DIR/t.qcow2,driver=qcow2,format=qcow2 |
| 47 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,driver=qcow2,format=qcow2: Cannot specify both 'driver' and 'format' |
| 48 | |
| 49 | |
| 50 | === Node names === |
| 51 | |
| 52 | Testing: -drive file=TEST_DIR/t.qcow2,node-name=x123456789012345678901234567890 |
| 53 | QEMU X.Y.Z monitor - type 'help' for more information |
| 54 | (qemu) quit |
| 55 | |
| 56 | Testing: -drive file=TEST_DIR/t.qcow2,node-name=x1234567890123456789012345678901 |
| 57 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,node-name=x1234567890123456789012345678901: Node name too long |
| 58 | |
| 59 | Testing: -drive file=TEST_DIR/t.qcow2,node-name=All-Types.of_all0wed_chars |
| 60 | QEMU X.Y.Z monitor - type 'help' for more information |
| 61 | (qemu) quit |
| 62 | |
| 63 | Testing: -drive file=TEST_DIR/t.qcow2,node-name=123foo |
| 64 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,node-name=123foo: Invalid node-name: '123foo' |
| 65 | |
| 66 | Testing: -drive file=TEST_DIR/t.qcow2,node-name=_foo |
| 67 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,node-name=_foo: Invalid node-name: '_foo' |
| 68 | |
| 69 | Testing: -drive file=TEST_DIR/t.qcow2,node-name=foo#12 |
| 70 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,node-name=foo#12: Invalid node-name: 'foo#12' |
| 71 | |
| 72 | |
| 73 | === Device without drive === |
| 74 | |
| 75 | Testing: -device virtio-scsi -device scsi-hd |
| 76 | QEMU X.Y.Z monitor - type 'help' for more information |
| 77 | QEMU_PROG: -device scsi-hd: drive property not set |
| 78 | |
| 79 | |
| 80 | === Overriding backing file === |
| 81 | |
| 82 | Testing: -drive file=TEST_DIR/t.qcow2,driver=qcow2,backing.file.filename=TEST_DIR/t.qcow2.orig,if=none,id=drive0 -nodefaults |
| 83 | QEMU X.Y.Z monitor - type 'help' for more information |
| 84 | (qemu) info block |
| 85 | drive0 (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 | |
| 91 | Testing: -drive file=TEST_DIR/t.qcow2,driver=raw,backing.file.filename=TEST_DIR/t.qcow2.orig |
| 92 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,driver=raw,backing.file.filename=TEST_DIR/t.qcow2.orig: Driver doesn't support backing files |
| 93 | |
| 94 | Testing: -drive file=TEST_DIR/t.qcow2,file.backing.driver=file,file.backing.filename=TEST_DIR/t.qcow2.orig |
| 95 | QEMU_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 | |
| 97 | Testing: -drive file=TEST_DIR/t.qcow2,file.backing.driver=qcow2,file.backing.file.filename=TEST_DIR/t.qcow2.orig |
| 98 | QEMU_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 | |
| 103 | Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728 |
| 104 | Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,lazy-refcounts=on |
| 105 | QEMU X.Y.Z monitor - type 'help' for more information |
| 106 | (qemu) quit |
| 107 | |
| 108 | Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,lazy-refcounts=off |
| 109 | QEMU X.Y.Z monitor - type 'help' for more information |
| 110 | (qemu) quit |
| 111 | |
| 112 | Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,lazy-refcounts= |
| 113 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,format=qcow2,lazy-refcounts=: Parameter 'lazy-refcounts' expects 'on' or 'off' |
| 114 | |
| 115 | Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,lazy-refcounts=42 |
| 116 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,format=qcow2,lazy-refcounts=42: Parameter 'lazy-refcounts' expects 'on' or 'off' |
| 117 | |
| 118 | Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,lazy-refcounts=foo |
| 119 | QEMU_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 | |
| 124 | Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728 |
| 125 | Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,lazy-refcounts=on |
| 126 | QEMU_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 | |
| 128 | Testing: -drive file=TEST_DIR/t.qcow2,format=qcow2,lazy-refcounts=off |
| 129 | QEMU X.Y.Z monitor - type 'help' for more information |
| 130 | (qemu) quit |
| 131 | |
| 132 | |
| 133 | === No medium === |
| 134 | |
| 135 | Testing: -drive if=virtio |
| 136 | QEMU X.Y.Z monitor - type 'help' for more information |
| 137 | QEMU_PROG: -drive if=virtio: Device needs media, but drive is empty |
| 138 | |
| 139 | |
| 140 | === Attach to node in non-default iothread === |
| 141 | |
| 142 | |
| 143 | === Read-only === |
| 144 | |
| 145 | Testing: -drive file=TEST_DIR/t.qcow2,if=virtio,readonly=on |
| 146 | QEMU X.Y.Z monitor - type 'help' for more information |
| 147 | (qemu) quit |
| 148 | |
| 149 | |
| 150 | === Cache modes === |
| 151 | |
| 152 | Testing: -drive driver=null-co,read-zeroes=on,cache=none |
| 153 | QEMU X.Y.Z monitor - type 'help' for more information |
| 154 | (qemu) quit |
| 155 | |
| 156 | Testing: -drive driver=null-co,read-zeroes=on,cache=directsync |
| 157 | QEMU X.Y.Z monitor - type 'help' for more information |
| 158 | (qemu) quit |
| 159 | |
| 160 | Testing: -drive driver=null-co,read-zeroes=on,cache=writeback |
| 161 | QEMU X.Y.Z monitor - type 'help' for more information |
| 162 | (qemu) quit |
| 163 | |
| 164 | Testing: -drive driver=null-co,read-zeroes=on,cache=writethrough |
| 165 | QEMU X.Y.Z monitor - type 'help' for more information |
| 166 | (qemu) quit |
| 167 | |
| 168 | Testing: -drive driver=null-co,read-zeroes=on,cache=unsafe |
| 169 | QEMU X.Y.Z monitor - type 'help' for more information |
| 170 | (qemu) quit |
| 171 | |
| 172 | Testing: -drive driver=null-co,cache=invalid_value |
| 173 | QEMU_PROG: -drive driver=null-co,cache=invalid_value: invalid cache option |
| 174 | |
| 175 | Testing: -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 |
| 176 | QEMU X.Y.Z monitor - type 'help' for more information |
| 177 | (qemu) info block |
| 178 | drive0 (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) |
| 179 | Removable device: not locked, tray closed |
| 180 | Cache mode: writeback |
| 181 | Backing file: TEST_DIR/t.qcow2.base (chain depth: 1) |
| 182 | (qemu) info block file |
| 183 | |
| 184 | file: TEST_DIR/t.qcow2 (file) |
| 185 | Cache mode: writeback |
| 186 | (qemu) info block backing |
| 187 | backing: TEST_DIR/t.qcow2.base (qcow2, read-only) |
| 188 | Cache mode: writeback, ignore flushes |
| 189 | (qemu) info block backing-file |
| 190 | |
| 191 | backing-file: TEST_DIR/t.qcow2.base (file, read-only) |
| 192 | Cache mode: writeback, ignore flushes |
| 193 | (qemu) quit |
| 194 | |
| 195 | Testing: -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 |
| 196 | QEMU X.Y.Z monitor - type 'help' for more information |
| 197 | (qemu) info block |
| 198 | drive0 (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) |
| 199 | Removable device: not locked, tray closed |
| 200 | Cache mode: writethrough |
| 201 | Backing file: TEST_DIR/t.qcow2.base (chain depth: 1) |
| 202 | (qemu) info block file |
| 203 | |
| 204 | file: TEST_DIR/t.qcow2 (file) |
| 205 | Cache mode: writeback |
| 206 | (qemu) info block backing |
| 207 | backing: TEST_DIR/t.qcow2.base (qcow2, read-only) |
| 208 | Cache mode: writeback, ignore flushes |
| 209 | (qemu) info block backing-file |
| 210 | |
| 211 | backing-file: TEST_DIR/t.qcow2.base (file, read-only) |
| 212 | Cache mode: writeback, ignore flushes |
| 213 | (qemu) quit |
| 214 | |
| 215 | Testing: -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 |
| 216 | QEMU X.Y.Z monitor - type 'help' for more information |
| 217 | (qemu) info block |
| 218 | drive0 (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) |
| 219 | Removable device: not locked, tray closed |
| 220 | Cache mode: writeback, ignore flushes |
| 221 | Backing file: TEST_DIR/t.qcow2.base (chain depth: 1) |
| 222 | (qemu) info block file |
| 223 | |
| 224 | file: TEST_DIR/t.qcow2 (file) |
| 225 | Cache mode: writeback, ignore flushes |
| 226 | (qemu) info block backing |
| 227 | backing: TEST_DIR/t.qcow2.base (qcow2, read-only) |
| 228 | Cache mode: writeback, ignore flushes |
| 229 | (qemu) info block backing-file |
| 230 | |
| 231 | backing-file: TEST_DIR/t.qcow2.base (file, read-only) |
| 232 | Cache mode: writeback, ignore flushes |
| 233 | (qemu) quit |
| 234 | |
| 235 | Testing: -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 |
| 236 | QEMU_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 |
| 237 | |
| 238 | |
| 239 | === Specifying the protocol layer === |
| 240 | |
| 241 | Testing: -drive file=TEST_DIR/t.qcow2,file.driver=file |
| 242 | QEMU X.Y.Z monitor - type 'help' for more information |
| 243 | (qemu) quit |
| 244 | |
| 245 | |
| 246 | === Leaving out required options === |
| 247 | |
| 248 | Testing: -drive driver=file |
| 249 | QEMU_PROG: -drive driver=file: The 'file' block driver requires a file name |
| 250 | |
| 251 | Testing: -drive driver=file,filename= |
| 252 | QEMU_PROG: -drive driver=file,filename=: The 'file' block driver requires a file name |
| 253 | |
| 254 | Testing: -drive driver=nbd |
| 255 | QEMU_PROG: -drive driver=nbd: NBD server address missing |
| 256 | |
| 257 | Testing: -drive driver=raw |
| 258 | QEMU_PROG: -drive driver=raw: A block device must be specified for "file" |
| 259 | |
| 260 | Testing: -drive file.driver=file |
| 261 | QEMU_PROG: -drive file.driver=file: The 'file' block driver requires a file name |
| 262 | |
| 263 | Testing: -drive file.driver=nbd |
| 264 | QEMU_PROG: -drive file.driver=nbd: NBD server address missing |
| 265 | |
| 266 | Testing: -drive file.driver=raw |
| 267 | QEMU_PROG: -drive file.driver=raw: A block device must be specified for "file" |
| 268 | |
| 269 | Testing: -drive foo=bar |
| 270 | QEMU_PROG: -drive foo=bar: Must specify either driver or file |
| 271 | |
| 272 | |
| 273 | === Specifying both an option and its legacy alias === |
| 274 | |
| 275 | Testing: -drive file=TEST_DIR/t.qcow2,iops=1234,throttling.iops-total=5678 |
| 276 | QEMU_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 |
| 277 | |
| 278 | Testing: -drive file=TEST_DIR/t.qcow2,iops_rd=1234,throttling.iops-read=5678 |
| 279 | QEMU_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 |
| 280 | |
| 281 | Testing: -drive file=TEST_DIR/t.qcow2,iops_wr=1234,throttling.iops-write=5678 |
| 282 | QEMU_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 |
| 283 | |
| 284 | Testing: -drive file=TEST_DIR/t.qcow2,bps=1234,throttling.bps-total=5678 |
| 285 | QEMU_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 |
| 286 | |
| 287 | Testing: -drive file=TEST_DIR/t.qcow2,bps_rd=1234,throttling.bps-read=5678 |
| 288 | QEMU_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 |
| 289 | |
| 290 | Testing: -drive file=TEST_DIR/t.qcow2,bps_wr=1234,throttling.bps-write=5678 |
| 291 | QEMU_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 |
| 292 | |
| 293 | Testing: -drive file=TEST_DIR/t.qcow2,iops_max=1234,throttling.iops-total-max=5678 |
| 294 | QEMU_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 |
| 295 | |
| 296 | Testing: -drive file=TEST_DIR/t.qcow2,iops_rd_max=1234,throttling.iops-read-max=5678 |
| 297 | QEMU_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 |
| 298 | |
| 299 | Testing: -drive file=TEST_DIR/t.qcow2,iops_wr_max=1234,throttling.iops-write-max=5678 |
| 300 | QEMU_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 |
| 301 | |
| 302 | Testing: -drive file=TEST_DIR/t.qcow2,bps_max=1234,throttling.bps-total-max=5678 |
| 303 | QEMU_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 |
| 304 | |
| 305 | Testing: -drive file=TEST_DIR/t.qcow2,bps_rd_max=1234,throttling.bps-read-max=5678 |
| 306 | QEMU_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 |
| 307 | |
| 308 | Testing: -drive file=TEST_DIR/t.qcow2,bps_wr_max=1234,throttling.bps-write-max=5678 |
| 309 | QEMU_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 |
| 310 | |
| 311 | Testing: -drive file=TEST_DIR/t.qcow2,iops_size=1234,throttling.iops-size=5678 |
| 312 | QEMU_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 |
| 313 | |
| 314 | Testing: -drive file=TEST_DIR/t.qcow2,readonly=on,read-only=off |
| 315 | QEMU_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 |
| 316 | |
| 317 | |
| 318 | === Catching negative/large throttling values === |
| 319 | |
| 320 | Testing: -drive file=TEST_DIR/t.qcow2,iops=-1 |
| 321 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,iops=-1: bps/iops/max values must be within [0, 1000000000000000] |
| 322 | |
| 323 | Testing: -drive file=TEST_DIR/t.qcow2,bps=-2 |
| 324 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,bps=-2: bps/iops/max values must be within [0, 1000000000000000] |
| 325 | |
| 326 | Testing: -drive file=TEST_DIR/t.qcow2,bps_rd=-3 |
| 327 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,bps_rd=-3: bps/iops/max values must be within [0, 1000000000000000] |
| 328 | |
| 329 | Testing: -drive file=TEST_DIR/t.qcow2,bps_rd_max=-3 |
| 330 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,bps_rd_max=-3: bps/iops/max values must be within [0, 1000000000000000] |
| 331 | |
| 332 | Testing: -drive file=TEST_DIR/t.qcow2,throttling.iops-total=-4 |
| 333 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,throttling.iops-total=-4: bps/iops/max values must be within [0, 1000000000000000] |
| 334 | |
| 335 | Testing: -drive file=TEST_DIR/t.qcow2,throttling.bps-total=-5 |
| 336 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,throttling.bps-total=-5: bps/iops/max values must be within [0, 1000000000000000] |
| 337 | |
| 338 | Testing: -drive file=TEST_DIR/t.qcow2,bps=0 |
| 339 | QEMU X.Y.Z monitor - type 'help' for more information |
| 340 | (qemu) quit |
| 341 | |
| 342 | Testing: -drive file=TEST_DIR/t.qcow2,bps=1 |
| 343 | QEMU X.Y.Z monitor - type 'help' for more information |
| 344 | (qemu) quit |
| 345 | |
| 346 | Testing: -drive file=TEST_DIR/t.qcow2,bps=1000000000000000 |
| 347 | QEMU X.Y.Z monitor - type 'help' for more information |
| 348 | (qemu) quit |
| 349 | |
| 350 | Testing: -drive file=TEST_DIR/t.qcow2,bps=1000000000000001 |
| 351 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,bps=1000000000000001: bps/iops/max values must be within [0, 1000000000000000] |
| 352 | |
| 353 | Testing: -drive file=TEST_DIR/t.qcow2,bps=9999999999999999 |
| 354 | QEMU_PROG: -drive file=TEST_DIR/t.qcow2,bps=9999999999999999: bps/iops/max values must be within [0, 1000000000000000] |
| 355 | |
| 356 | |
| 357 | === Parsing protocol from file name === |
| 358 | |
| 359 | Testing: -hda foo:bar |
| 360 | QEMU_PROG: -hda foo:bar: Unknown protocol 'foo' |
| 361 | |
| 362 | Testing: -drive file=foo:bar |
| 363 | QEMU_PROG: -drive file=foo:bar: Unknown protocol 'foo' |
| 364 | |
| 365 | Testing: -drive file.filename=foo:bar |
| 366 | QEMU_PROG: -drive file.filename=foo:bar: Could not open 'foo:bar': No such file or directory |
| 367 | |
| 368 | Testing: -hda file:TEST_DIR/t.qcow2 |
| 369 | QEMU X.Y.Z monitor - type 'help' for more information |
| 370 | (qemu) quit |
| 371 | |
| 372 | Testing: -drive file=file:TEST_DIR/t.qcow2 |
| 373 | QEMU X.Y.Z monitor - type 'help' for more information |
| 374 | (qemu) quit |
| 375 | |
| 376 | Testing: -drive file.filename=file:TEST_DIR/t.qcow2 |
| 377 | QEMU_PROG: -drive file.filename=file:TEST_DIR/t.qcow2: Could not open 'file:TEST_DIR/t.qcow2': No such file or directory |
| 378 | |
| 379 | |
| 380 | === Snapshot mode === |
| 381 | |
| 382 | wrote 4096/4096 bytes at offset 0 |
| 383 | 4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) |
| 384 | Testing: -drive file=TEST_DIR/t.qcow2,if=none,id=drive0 -snapshot |
| 385 | QEMU X.Y.Z monitor - type 'help' for more information |
| 386 | (qemu) qemu-io drive0 "write -P 0x22 0 4k" |
| 387 | wrote 4096/4096 bytes at offset 0 |
| 388 | 4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) |
| 389 | (qemu) quit |
| 390 | |
| 391 | Testing: -drive file=TEST_DIR/t.qcow2,snapshot=on,if=none,id=drive0 |
| 392 | QEMU X.Y.Z monitor - type 'help' for more information |
| 393 | (qemu) qemu-io drive0 "write -P 0x22 0 4k" |
| 394 | wrote 4096/4096 bytes at offset 0 |
| 395 | 4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) |
| 396 | (qemu) quit |
| 397 | |
| 398 | Testing: -drive file.filename=TEST_DIR/t.qcow2,driver=qcow2,snapshot=on,if=none,id=drive0 |
| 399 | QEMU X.Y.Z monitor - type 'help' for more information |
| 400 | (qemu) qemu-io drive0 "write -P 0x22 0 4k" |
| 401 | wrote 4096/4096 bytes at offset 0 |
| 402 | 4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) |
| 403 | (qemu) quit |
| 404 | |
| 405 | Testing: -drive file.filename=TEST_DIR/t.qcow2,driver=qcow2,if=none,id=drive0 -snapshot |
| 406 | QEMU X.Y.Z monitor - type 'help' for more information |
| 407 | (qemu) qemu-io drive0 "write -P 0x22 0 4k" |
| 408 | wrote 4096/4096 bytes at offset 0 |
| 409 | 4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) |
| 410 | (qemu) quit |
| 411 | |
| 412 | Testing: -drive file=file:TEST_DIR/t.qcow2,if=none,id=drive0 -snapshot |
| 413 | QEMU X.Y.Z monitor - type 'help' for more information |
| 414 | (qemu) qemu-io drive0 "write -P 0x22 0 4k" |
| 415 | wrote 4096/4096 bytes at offset 0 |
| 416 | 4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) |
| 417 | (qemu) quit |
| 418 | |
| 419 | Testing: -drive file=file:TEST_DIR/t.qcow2,snapshot=on,if=none,id=drive0 |
| 420 | QEMU X.Y.Z monitor - type 'help' for more information |
| 421 | (qemu) qemu-io drive0 "write -P 0x22 0 4k" |
| 422 | wrote 4096/4096 bytes at offset 0 |
| 423 | 4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) |
| 424 | (qemu) quit |
| 425 | |
| 426 | Testing: -drive file=TEST_DIR/t.qcow2,if=none,id=drive0 -snapshot |
| 427 | QEMU X.Y.Z monitor - type 'help' for more information |
| 428 | (qemu) qemu-io drive0 "write -P 0x22 0 4k" |
| 429 | wrote 4096/4096 bytes at offset 0 |
| 430 | 4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) |
| 431 | (qemu) quit |
| 432 | |
| 433 | Testing: -drive file=TEST_DIR/t.qcow2,snapshot=on,if=none,id=drive0 |
| 434 | QEMU X.Y.Z monitor - type 'help' for more information |
| 435 | (qemu) qemu-io drive0 "write -P 0x22 0 4k" |
| 436 | wrote 4096/4096 bytes at offset 0 |
| 437 | 4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) |
| 438 | (qemu) quit |
| 439 | |
| 440 | read 4096/4096 bytes at offset 0 |
| 441 | 4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) |
| 442 | Testing: -drive file=TEST_DIR/t.qcow2,snapshot=off,if=none,id=drive0 |
| 443 | QEMU X.Y.Z monitor - type 'help' for more information |
| 444 | (qemu) qemu-io drive0 "write -P 0x22 0 4k" |
| 445 | wrote 4096/4096 bytes at offset 0 |
| 446 | 4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) |
| 447 | (qemu) quit |
| 448 | |
| 449 | read 4096/4096 bytes at offset 0 |
| 450 | 4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) |
| 451 | Testing: -drive file=TEST_DIR/t.qcow2,snapshot=on,if=none,id=drive0 |
| 452 | QEMU X.Y.Z monitor - type 'help' for more information |
| 453 | (qemu) qemu-io drive0 "write -P 0x33 0 4k" |
| 454 | wrote 4096/4096 bytes at offset 0 |
| 455 | 4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) |
| 456 | (qemu) commit drive0 |
| 457 | (qemu) quit |
| 458 | |
| 459 | read 4096/4096 bytes at offset 0 |
| 460 | 4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) |
| 461 | Testing: -drive driver=null-co,snapshot=on |
| 462 | QEMU_PROG: -drive driver=null-co,snapshot=on: Could not open temporary file SNAPSHOT_PATH: No such file or directory |
| 463 | |
| 464 | Testing: -drive file=TEST_DIR/t.qcow2,snapshot=on,read-only=on,if=none,id=drive0 |
| 465 | QEMU X.Y.Z monitor - type 'help' for more information |
| 466 | (qemu) info block |
| 467 | drive0 (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) |
| 468 | Removable device: not locked, tray closed |
| 469 | Cache mode: writeback, ignore flushes |
| 470 | Backing file: TEST_DIR/t.qcow2 (chain depth: 1) |
| 471 | (qemu) quit |
| 472 | |
| 473 | *** done |