On 19.07.19 15:43, Kevin Wolf wrote: > From: Andrey Shinkevich <andrey.shinkev...@virtuozzo.com> > > The Valgrind tool reports about the uninitialised buffer 'buf' > instantiated on the stack of the function guess_disk_lchs(). > Pass 'read-zeroes=on' to the null block driver to make it deterministic. > The output of the tests 051, 186 and 227 now includes the parameter > 'read-zeroes'. So, the benchmark output files are being changed too. > > Suggested-by: Kevin Wolf <kw...@redhat.com> > Signed-off-by: Andrey Shinkevich <andrey.shinkev...@virtuozzo.com> > Signed-off-by: Kevin Wolf <kw...@redhat.com> > --- > tests/qemu-iotests/051 | 10 +-- > tests/qemu-iotests/051.pc.out | 10 +-- > tests/qemu-iotests/093 | 9 +- [...9
I now get the following on s390. Seems that you only fixed 051.pc.out but not 051.out 051 ... [09:01:49] ... 051 [1m[31mfail [0m [09:01:49] [09:01:50] output mismatch (see 051.out.bad) --- tests/qemu-iotests/051.out 2019-07-09 18:34:26.734654933 +0200 +++ build/tests/qemu-iotests/051.out.bad 2019-07-24 09:01:50.015024901 +0200 @@ -149,23 +149,23 @@ === Cache modes === -Testing: -drive driver=null-co,cache=none +Testing: -drive driver=null-co,read-zeroes=on,cache=none QEMU X.Y.Z monitor - type 'help' for more information (qemu) quit -Testing: -drive driver=null-co,cache=directsync +Testing: -drive driver=null-co,read-zeroes=on,cache=directsync QEMU X.Y.Z monitor - type 'help' for more information (qemu) quit -Testing: -drive driver=null-co,cache=writeback +Testing: -drive driver=null-co,read-zeroes=on,cache=writeback QEMU X.Y.Z monitor - type 'help' for more information (qemu) quit -Testing: -drive driver=null-co,cache=writethrough +Testing: -drive driver=null-co,read-zeroes=on,cache=writethrough QEMU X.Y.Z monitor - type 'help' for more information (qemu) quit -Testing: -drive driver=null-co,cache=unsafe +Testing: -drive driver=null-co,read-zeroes=on,cache=unsafe QEMU X.Y.Z monitor - type 'help' for more information (qemu) quit > > diff --git a/tests/qemu-iotests/051 b/tests/qemu-iotests/051 > index 200660f977..ce942a5444 100755 > --- a/tests/qemu-iotests/051 > +++ b/tests/qemu-iotests/051 > @@ -251,11 +251,11 @@ echo > # Cannot use the test image because cache=none might not work on the host FS > # Use cdrom so that we won't get errors about missing media > > -run_qemu -drive driver=null-co,cache=none > -run_qemu -drive driver=null-co,cache=directsync > -run_qemu -drive driver=null-co,cache=writeback > -run_qemu -drive driver=null-co,cache=writethrough > -run_qemu -drive driver=null-co,cache=unsafe > +run_qemu -drive driver=null-co,read-zeroes=on,cache=none > +run_qemu -drive driver=null-co,read-zeroes=on,cache=directsync > +run_qemu -drive driver=null-co,read-zeroes=on,cache=writeback > +run_qemu -drive driver=null-co,read-zeroes=on,cache=writethrough > +run_qemu -drive driver=null-co,read-zeroes=on,cache=unsafe > run_qemu -drive driver=null-co,cache=invalid_value > > # Can't test direct=on here because O_DIRECT might not be supported on this > FS > diff --git a/tests/qemu-iotests/051.pc.out b/tests/qemu-iotests/051.pc.out > index 2d811c166c..000557c7c8 100644 > --- a/tests/qemu-iotests/051.pc.out > +++ b/tests/qemu-iotests/051.pc.out > @@ -245,23 +245,23 @@ QEMU X.Y.Z monitor - type 'help' for more information > > === Cache modes === > > -Testing: -drive driver=null-co,cache=none > +Testing: -drive driver=null-co,read-zeroes=on,cache=none > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) quit > > -Testing: -drive driver=null-co,cache=directsync > +Testing: -drive driver=null-co,read-zeroes=on,cache=directsync > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) quit > > -Testing: -drive driver=null-co,cache=writeback > +Testing: -drive driver=null-co,read-zeroes=on,cache=writeback > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) quit > > -Testing: -drive driver=null-co,cache=writethrough > +Testing: -drive driver=null-co,read-zeroes=on,cache=writethrough > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) quit > > -Testing: -drive driver=null-co,cache=unsafe > +Testing: -drive driver=null-co,read-zeroes=on,cache=unsafe > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) quit > > diff --git a/tests/qemu-iotests/093 b/tests/qemu-iotests/093 > index d88fbc182e..4b2cac1d0c 100755 > --- a/tests/qemu-iotests/093 > +++ b/tests/qemu-iotests/093 > @@ -38,7 +38,7 @@ class ThrottleTestCase(iotests.QMPTestCase): > def setUp(self): > self.vm = iotests.VM() > for i in range(0, self.max_drives): > - self.vm.add_drive(self.test_img) > + self.vm.add_drive(self.test_img, "file.read-zeroes=on") > self.vm.launch() > > def tearDown(self): > @@ -273,7 +273,8 @@ class ThrottleTestGroupNames(iotests.QMPTestCase): > def setUp(self): > self.vm = iotests.VM() > for i in range(0, self.max_drives): > - self.vm.add_drive(self.test_img, "throttling.iops-total=100") > + self.vm.add_drive(self.test_img, > + > "throttling.iops-total=100,file.read-zeroes=on") > self.vm.launch() > > def tearDown(self): > @@ -378,10 +379,10 @@ class ThrottleTestRemovableMedia(iotests.QMPTestCase): > def test_removable_media(self): > # Add a couple of dummy nodes named cd0 and cd1 > result = self.vm.qmp("blockdev-add", driver="null-aio", > - node_name="cd0") > + read_zeroes=True, node_name="cd0") > self.assert_qmp(result, 'return', {}) > result = self.vm.qmp("blockdev-add", driver="null-aio", > - node_name="cd1") > + read_zeroes=True, node_name="cd1") > self.assert_qmp(result, 'return', {}) > > # Attach a CD drive with cd0 inserted > diff --git a/tests/qemu-iotests/136 b/tests/qemu-iotests/136 > index af7ffa4540..a46a7b7630 100755 > --- a/tests/qemu-iotests/136 > +++ b/tests/qemu-iotests/136 > @@ -74,6 +74,7 @@ sector = "%d" > (self.account_invalid and "on" or "off")) > drive_args.append("stats-account-failed=%s" % > (self.account_failed and "on" or "off")) > + drive_args.append("file.image.read-zeroes=on") > self.create_blkdebug_file() > self.vm = iotests.VM().add_drive('blkdebug:%s:%s' % > (blkdebug_file, self.test_img), > diff --git a/tests/qemu-iotests/186 b/tests/qemu-iotests/186 > index 7e7d45babc..5f6b18c150 100755 > --- a/tests/qemu-iotests/186 > +++ b/tests/qemu-iotests/186 > @@ -86,8 +86,8 @@ echo "=== -blockdev/-device=<node-name> ===" > echo > > for dev in $fixed $removable; do > - check_info_block -blockdev driver=null-co,node-name=null -device > $dev,drive=null > - check_info_block -blockdev driver=null-co,node-name=null -device > $dev,drive=null,id=qdev_id > + check_info_block -blockdev driver=null-co,read-zeroes=on,node-name=null > -device $dev,drive=null > + check_info_block -blockdev driver=null-co,read-zeroes=on,node-name=null > -device $dev,drive=null,id=qdev_id > done > > echo > @@ -97,7 +97,7 @@ echo > # This creates two BlockBackends that will show up in 'info block'! > # A monitor-owned one from -drive, and anonymous one from -device > for dev in $fixed $removable; do > - check_info_block -drive if=none,driver=null-co,node-name=null -device > $dev,drive=null,id=qdev_id > + check_info_block -drive > if=none,driver=null-co,read-zeroes=on,node-name=null -device > $dev,drive=null,id=qdev_id > done > > echo > @@ -105,8 +105,8 @@ echo "=== -drive if=none/-device=<bb-name> (with medium) > ===" > echo > > for dev in $fixed $removable; do > - check_info_block -drive if=none,driver=null-co,node-name=null -device > $dev,drive=none0 > - check_info_block -drive if=none,driver=null-co,node-name=null -device > $dev,drive=none0,id=qdev_id > + check_info_block -drive > if=none,driver=null-co,read-zeroes=on,node-name=null -device $dev,drive=none0 > + check_info_block -drive > if=none,driver=null-co,read-zeroes=on,node-name=null -device > $dev,drive=none0,id=qdev_id > done > > echo > @@ -125,15 +125,15 @@ echo "=== -drive if=... ===" > echo > > check_info_block -drive if=floppy > -check_info_block -drive if=floppy,driver=null-co > +check_info_block -drive if=floppy,driver=null-co,read-zeroes=on > > -check_info_block -drive if=ide,driver=null-co > +check_info_block -drive if=ide,driver=null-co,read-zeroes=on > check_info_block -drive if=ide,media=cdrom > -check_info_block -drive if=ide,driver=null-co,media=cdrom > +check_info_block -drive if=ide,driver=null-co,read-zeroes=on,media=cdrom > > -check_info_block -drive if=virtio,driver=null-co > +check_info_block -drive if=virtio,driver=null-co,read-zeroes=on > > -check_info_block -drive if=pflash,driver=null-co,size=1M > +check_info_block -drive if=pflash,driver=null-co,read-zeroes=on,size=1M > > # success, all done > echo "*** done" > diff --git a/tests/qemu-iotests/186.out b/tests/qemu-iotests/186.out > index 716b01ac3d..5b3504042a 100644 > --- a/tests/qemu-iotests/186.out > +++ b/tests/qemu-iotests/186.out > @@ -54,103 +54,103 @@ qdev_id: [not inserted] > > === -blockdev/-device=<node-name> === > > -Testing: -blockdev driver=null-co,node-name=null -device ide-hd,drive=null > +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device > ide-hd,drive=null > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -null: null-co:// (null-co) > +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) > Attached to: PATH > Cache mode: writeback > (qemu) quit > > -Testing: -blockdev driver=null-co,node-name=null -device > ide-hd,drive=null,id=qdev_id > +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device > ide-hd,drive=null,id=qdev_id > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -null: null-co:// (null-co) > +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) > Attached to: qdev_id > Cache mode: writeback > (qemu) quit > > -Testing: -blockdev driver=null-co,node-name=null -device scsi-hd,drive=null > +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device > scsi-hd,drive=null > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -null: null-co:// (null-co) > +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) > Attached to: PATH > Cache mode: writeback > (qemu) quit > > -Testing: -blockdev driver=null-co,node-name=null -device > scsi-hd,drive=null,id=qdev_id > +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device > scsi-hd,drive=null,id=qdev_id > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -null: null-co:// (null-co) > +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) > Attached to: qdev_id > Cache mode: writeback > (qemu) quit > > -Testing: -blockdev driver=null-co,node-name=null -device > virtio-blk-pci,drive=null > +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device > virtio-blk-pci,drive=null > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -null: null-co:// (null-co) > +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) > Attached to: PATH > Cache mode: writeback > (qemu) quit > > -Testing: -blockdev driver=null-co,node-name=null -device > virtio-blk-pci,drive=null,id=qdev_id > +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device > virtio-blk-pci,drive=null,id=qdev_id > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -null: null-co:// (null-co) > +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) > Attached to: PATH > Cache mode: writeback > (qemu) quit > > -Testing: -blockdev driver=null-co,node-name=null -device floppy,drive=null > +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device > floppy,drive=null > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -null: null-co:// (null-co) > +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) > Attached to: PATH > Removable device: not locked, tray closed > Cache mode: writeback > (qemu) quit > > -Testing: -blockdev driver=null-co,node-name=null -device > floppy,drive=null,id=qdev_id > +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device > floppy,drive=null,id=qdev_id > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -null: null-co:// (null-co) > +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) > Attached to: qdev_id > Removable device: not locked, tray closed > Cache mode: writeback > (qemu) quit > > -Testing: -blockdev driver=null-co,node-name=null -device ide-cd,drive=null > +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device > ide-cd,drive=null > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -null: null-co:// (null-co) > +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) > Attached to: PATH > Removable device: not locked, tray closed > Cache mode: writeback > (qemu) quit > > -Testing: -blockdev driver=null-co,node-name=null -device > ide-cd,drive=null,id=qdev_id > +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device > ide-cd,drive=null,id=qdev_id > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -null: null-co:// (null-co) > +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) > Attached to: qdev_id > Removable device: not locked, tray closed > Cache mode: writeback > (qemu) quit > > -Testing: -blockdev driver=null-co,node-name=null -device scsi-cd,drive=null > +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device > scsi-cd,drive=null > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -null: null-co:// (null-co) > +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) > Attached to: PATH > Removable device: not locked, tray closed > Cache mode: writeback > (qemu) quit > > -Testing: -blockdev driver=null-co,node-name=null -device > scsi-cd,drive=null,id=qdev_id > +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device > scsi-cd,drive=null,id=qdev_id > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -null: null-co:// (null-co) > +null: json:{"read-zeroes": true, "driver": "null-co"} (null-co) > Attached to: qdev_id > Removable device: not locked, tray closed > Cache mode: writeback > @@ -159,76 +159,76 @@ null: null-co:// (null-co) > > === -drive if=none/-device=<node-name> === > > -Testing: -drive if=none,driver=null-co,node-name=null -device > ide-hd,drive=null,id=qdev_id > +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device > ide-hd,drive=null,id=qdev_id > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -none0 (null): null-co:// (null-co) > +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Removable device: not locked, tray closed > Cache mode: writeback > > -null: null-co:// (null-co) > +null: json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Attached to: qdev_id > Cache mode: writeback > (qemu) quit > > -Testing: -drive if=none,driver=null-co,node-name=null -device > scsi-hd,drive=null,id=qdev_id > +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device > scsi-hd,drive=null,id=qdev_id > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -none0 (null): null-co:// (null-co) > +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Removable device: not locked, tray closed > Cache mode: writeback > > -null: null-co:// (null-co) > +null: json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Attached to: qdev_id > Cache mode: writeback > (qemu) quit > > -Testing: -drive if=none,driver=null-co,node-name=null -device > virtio-blk-pci,drive=null,id=qdev_id > +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device > virtio-blk-pci,drive=null,id=qdev_id > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -none0 (null): null-co:// (null-co) > +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Removable device: not locked, tray closed > Cache mode: writeback > > -null: null-co:// (null-co) > +null: json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Attached to: PATH > Cache mode: writeback > (qemu) quit > > -Testing: -drive if=none,driver=null-co,node-name=null -device > floppy,drive=null,id=qdev_id > +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device > floppy,drive=null,id=qdev_id > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -none0 (null): null-co:// (null-co) > +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Removable device: not locked, tray closed > Cache mode: writeback > > -null: null-co:// (null-co) > +null: json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Attached to: qdev_id > Removable device: not locked, tray closed > Cache mode: writeback > (qemu) quit > > -Testing: -drive if=none,driver=null-co,node-name=null -device > ide-cd,drive=null,id=qdev_id > +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device > ide-cd,drive=null,id=qdev_id > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -none0 (null): null-co:// (null-co) > +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Removable device: not locked, tray closed > Cache mode: writeback > > -null: null-co:// (null-co) > +null: json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Attached to: qdev_id > Removable device: not locked, tray closed > Cache mode: writeback > (qemu) quit > > -Testing: -drive if=none,driver=null-co,node-name=null -device > scsi-cd,drive=null,id=qdev_id > +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device > scsi-cd,drive=null,id=qdev_id > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -none0 (null): null-co:// (null-co) > +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Removable device: not locked, tray closed > Cache mode: writeback > > -null: null-co:// (null-co) > +null: json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Attached to: qdev_id > Removable device: not locked, tray closed > Cache mode: writeback > @@ -237,103 +237,103 @@ null: null-co:// (null-co) > > === -drive if=none/-device=<bb-name> (with medium) === > > -Testing: -drive if=none,driver=null-co,node-name=null -device > ide-hd,drive=none0 > +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device > ide-hd,drive=none0 > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -none0 (null): null-co:// (null-co) > +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Attached to: PATH > Cache mode: writeback > (qemu) quit > > -Testing: -drive if=none,driver=null-co,node-name=null -device > ide-hd,drive=none0,id=qdev_id > +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device > ide-hd,drive=none0,id=qdev_id > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -none0 (null): null-co:// (null-co) > +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Attached to: qdev_id > Cache mode: writeback > (qemu) quit > > -Testing: -drive if=none,driver=null-co,node-name=null -device > scsi-hd,drive=none0 > +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device > scsi-hd,drive=none0 > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -none0 (null): null-co:// (null-co) > +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Attached to: PATH > Cache mode: writeback > (qemu) quit > > -Testing: -drive if=none,driver=null-co,node-name=null -device > scsi-hd,drive=none0,id=qdev_id > +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device > scsi-hd,drive=none0,id=qdev_id > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -none0 (null): null-co:// (null-co) > +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Attached to: qdev_id > Cache mode: writeback > (qemu) quit > > -Testing: -drive if=none,driver=null-co,node-name=null -device > virtio-blk-pci,drive=none0 > +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device > virtio-blk-pci,drive=none0 > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -none0 (null): null-co:// (null-co) > +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Attached to: PATH > Cache mode: writeback > (qemu) quit > > -Testing: -drive if=none,driver=null-co,node-name=null -device > virtio-blk-pci,drive=none0,id=qdev_id > +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device > virtio-blk-pci,drive=none0,id=qdev_id > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -none0 (null): null-co:// (null-co) > +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Attached to: PATH > Cache mode: writeback > (qemu) quit > > -Testing: -drive if=none,driver=null-co,node-name=null -device > floppy,drive=none0 > +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device > floppy,drive=none0 > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -none0 (null): null-co:// (null-co) > +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Attached to: PATH > Removable device: not locked, tray closed > Cache mode: writeback > (qemu) quit > > -Testing: -drive if=none,driver=null-co,node-name=null -device > floppy,drive=none0,id=qdev_id > +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device > floppy,drive=none0,id=qdev_id > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -none0 (null): null-co:// (null-co) > +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Attached to: qdev_id > Removable device: not locked, tray closed > Cache mode: writeback > (qemu) quit > > -Testing: -drive if=none,driver=null-co,node-name=null -device > ide-cd,drive=none0 > +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device > ide-cd,drive=none0 > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -none0 (null): null-co:// (null-co) > +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Attached to: PATH > Removable device: not locked, tray closed > Cache mode: writeback > (qemu) quit > > -Testing: -drive if=none,driver=null-co,node-name=null -device > ide-cd,drive=none0,id=qdev_id > +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device > ide-cd,drive=none0,id=qdev_id > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -none0 (null): null-co:// (null-co) > +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Attached to: qdev_id > Removable device: not locked, tray closed > Cache mode: writeback > (qemu) quit > > -Testing: -drive if=none,driver=null-co,node-name=null -device > scsi-cd,drive=none0 > +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device > scsi-cd,drive=none0 > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -none0 (null): null-co:// (null-co) > +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Attached to: PATH > Removable device: not locked, tray closed > Cache mode: writeback > (qemu) quit > > -Testing: -drive if=none,driver=null-co,node-name=null -device > scsi-cd,drive=none0,id=qdev_id > +Testing: -drive if=none,driver=null-co,read-zeroes=on,node-name=null -device > scsi-cd,drive=none0,id=qdev_id > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -none0 (null): null-co:// (null-co) > +none0 (null): json:{"read-zeroes": "on", "driver": "null-co"} (null-co) > Attached to: qdev_id > Removable device: not locked, tray closed > Cache mode: writeback > @@ -408,19 +408,19 @@ floppy0: [not inserted] > Removable device: not locked, tray closed > (qemu) quit > > -Testing: -drive if=floppy,driver=null-co > +Testing: -drive if=floppy,driver=null-co,read-zeroes=on > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -floppy0 (NODE_NAME): null-co:// (null-co) > +floppy0 (NODE_NAME): json:{"read-zeroes": "on", "driver": "null-co"} > (null-co) > Attached to: PATH > Removable device: not locked, tray closed > Cache mode: writeback > (qemu) quit > > -Testing: -drive if=ide,driver=null-co > +Testing: -drive if=ide,driver=null-co,read-zeroes=on > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -ide0-hd0 (NODE_NAME): null-co:// (null-co) > +ide0-hd0 (NODE_NAME): json:{"read-zeroes": "on", "driver": "null-co"} > (null-co) > Attached to: PATH > Cache mode: writeback > (qemu) quit > @@ -433,27 +433,27 @@ ide0-cd0: [not inserted] > Removable device: not locked, tray closed > (qemu) quit > > -Testing: -drive if=ide,driver=null-co,media=cdrom > +Testing: -drive if=ide,driver=null-co,read-zeroes=on,media=cdrom > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -ide0-cd0 (NODE_NAME): null-co:// (null-co, read-only) > +ide0-cd0 (NODE_NAME): json:{"read-zeroes": "on", "driver": "null-co"} > (null-co, read-only) > Attached to: PATH > Removable device: not locked, tray closed > Cache mode: writeback > (qemu) quit > > -Testing: -drive if=virtio,driver=null-co > +Testing: -drive if=virtio,driver=null-co,read-zeroes=on > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -virtio0 (NODE_NAME): null-co:// (null-co) > +virtio0 (NODE_NAME): json:{"read-zeroes": "on", "driver": "null-co"} > (null-co) > Attached to: PATH > Cache mode: writeback > (qemu) quit > > -Testing: -drive if=pflash,driver=null-co,size=1M > +Testing: -drive if=pflash,driver=null-co,read-zeroes=on,size=1M > QEMU X.Y.Z monitor - type 'help' for more information > (qemu) info block > -pflash0 (NODE_NAME): json:{"driver": "null-co", "size": "1M"} (null-co) > +pflash0 (NODE_NAME): json:{"read-zeroes": "on", "driver": "null-co", "size": > "1M"} (null-co) > Attached to: PATH > Cache mode: writeback > (qemu) quit > diff --git a/tests/qemu-iotests/227 b/tests/qemu-iotests/227 > index bdd727a721..637d7c3726 100755 > --- a/tests/qemu-iotests/227 > +++ b/tests/qemu-iotests/227 > @@ -57,7 +57,7 @@ echo > echo '=== blockstats with -drive if=virtio ===' > echo > > -run_qemu -drive driver=null-co,if=virtio <<EOF > +run_qemu -drive driver=null-co,read-zeroes=on,if=virtio <<EOF > { "execute": "qmp_capabilities" } > { "execute": "query-blockstats"} > { "execute": "quit" } > @@ -87,7 +87,7 @@ echo > echo '=== blockstats with -blockdev and -device ===' > echo > > -run_qemu -blockdev driver=null-co,node-name=null -device > virtio-blk,drive=null,id=virtio0 <<EOF > +run_qemu -blockdev driver=null-co,read-zeroes=on,node-name=null -device > virtio-blk,drive=null,id=virtio0 <<EOF > { "execute": "qmp_capabilities" } > { "execute": "query-blockstats"} > { "execute": "quit" } > diff --git a/tests/qemu-iotests/227.out b/tests/qemu-iotests/227.out > index e77efaf4cf..3dd3ca5708 100644 > --- a/tests/qemu-iotests/227.out > +++ b/tests/qemu-iotests/227.out > @@ -2,7 +2,7 @@ QA output created by 227 > > === blockstats with -drive if=virtio === > > -Testing: -drive driver=null-co,if=virtio > +Testing: -drive driver=null-co,read-zeroes=on,if=virtio > { > QMP_VERSION > } > @@ -150,7 +150,7 @@ Testing: -blockdev driver=null-co,node-name=null > > === blockstats with -blockdev and -device === > > -Testing: -blockdev driver=null-co,node-name=null -device > virtio-blk,drive=null,id=virtio0 > +Testing: -blockdev driver=null-co,read-zeroes=on,node-name=null -device > virtio-blk,drive=null,id=virtio0 > { > QMP_VERSION > } > diff --git a/tests/qemu-iotests/238 b/tests/qemu-iotests/238 > index 1c0a46fa90..08bc7e6b4b 100755 > --- a/tests/qemu-iotests/238 > +++ b/tests/qemu-iotests/238 > @@ -31,7 +31,7 @@ else: > vm = iotests.VM() > vm.launch() > > -log(vm.qmp('blockdev-add', node_name='hd0', driver='null-co')) > +log(vm.qmp('blockdev-add', node_name='hd0', driver='null-co', > read_zeroes=True)) > log(vm.qmp('object-add', qom_type='iothread', id='iothread0')) > log(vm.qmp('device_add', id='scsi0', driver=virtio_scsi_device, > iothread='iothread0')) > log(vm.qmp('device_add', id='scsi-hd0', driver='scsi-hd', drive='hd0')) > diff --git a/tests/qemu-iotests/240 b/tests/qemu-iotests/240 > index 5be6b9c0f7..f73bc07d80 100755 > --- a/tests/qemu-iotests/240 > +++ b/tests/qemu-iotests/240 > @@ -76,7 +76,7 @@ echo > > run_qemu <<EOF > { "execute": "qmp_capabilities" } > -{ "execute": "blockdev-add", "arguments": {"driver": "null-co", "node-name": > "hd0"}} > +{ "execute": "blockdev-add", "arguments": {"driver": "null-co", > "read-zeroes": true, "node-name": "hd0"}} > { "execute": "object-add", "arguments": {"qom-type": "iothread", "id": > "iothread0"}} > { "execute": "device_add", "arguments": {"id": "scsi0", "driver": > "${virtio_scsi}", "iothread": "iothread0"}} > { "execute": "device_add", "arguments": {"id": "scsi-hd0", "driver": > "scsi-hd", "drive": "hd0"}} > @@ -94,7 +94,7 @@ echo > > run_qemu <<EOF > { "execute": "qmp_capabilities" } > -{ "execute": "blockdev-add", "arguments": {"driver": "null-co", "node-name": > "hd0", "read-only": true}} > +{ "execute": "blockdev-add", "arguments": {"driver": "null-co", > "read-zeroes": true, "node-name": "hd0", "read-only": true}} > { "execute": "object-add", "arguments": {"qom-type": "iothread", "id": > "iothread0"}} > { "execute": "device_add", "arguments": {"id": "scsi0", "driver": > "${virtio_scsi}", "iothread": "iothread0"}} > { "execute": "device_add", "arguments": {"id": "scsi-hd0", "driver": > "scsi-hd", "drive": "hd0"}} > @@ -112,7 +112,7 @@ echo > > run_qemu <<EOF > { "execute": "qmp_capabilities" } > -{ "execute": "blockdev-add", "arguments": {"driver": "null-co", "node-name": > "hd0", "read-only": true}} > +{ "execute": "blockdev-add", "arguments": {"driver": "null-co", > "read-zeroes": true, "node-name": "hd0", "read-only": true}} > { "execute": "object-add", "arguments": {"qom-type": "iothread", "id": > "iothread0"}} > { "execute": "object-add", "arguments": {"qom-type": "iothread", "id": > "iothread1"}} > { "execute": "device_add", "arguments": {"id": "scsi0", "driver": > "${virtio_scsi}", "iothread": "iothread0"}} > @@ -134,7 +134,7 @@ echo > > run_qemu <<EOF > { "execute": "qmp_capabilities" } > -{ "execute": "blockdev-add", "arguments": {"driver": "null-co", "node-name": > "hd0", "read-only": true}} > +{ "execute": "blockdev-add", "arguments": {"driver": "null-co", > "read-zeroes": true, "node-name": "hd0", "read-only": true}} > { "execute": "nbd-server-start", "arguments": > {"addr":{"type":"unix","data":{"path":"$TEST_DIR/nbd"}}}} > { "execute": "nbd-server-add", "arguments": {"device":"hd0"}} > { "execute": "object-add", "arguments": {"qom-type": "iothread", "id": > "iothread0"}} >