On 02/20/2015 05:02 AM, Stefan Hajnoczi wrote:
On Fri, Feb 13, 2015 at 05:08:56PM -0500, John Snow wrote:
+    def check_incremental(self, target=None):
+        if target is None:
+            target = self.bitmaps[-1].last_target()
+        self.assertTrue(iotests.compare_images(self.test_img, target))
+        return True
+
+
+    def hmp_io_writes(self, drive, patterns):
+        for pattern in patterns:
+            self.vm.hmp_qemu_io(drive, 'write -P%s %s %s' % pattern)
+        self.vm.hmp_qemu_io(drive, 'flush')

Please don't read image files while the guest is still running.  Image
formats do not support concurrent readers and writers.

Three options:
1. Stop the guest before accessing self.test_img
2. Use drive-backup to make a full copy of self.test_img that can be
    accessed.
3. Test specific patterns in the backup file instead of using
    compare_images (qemu-io -c 'read -P 0xff 0 512' img)


I'm not sure I understand the complication, here. There is no "running guest," so these HMP writes are emulating the guest writes. As Max says, we're using -qtest here.

If you really want, I can introduce emulated stop/resume commands just for the sake of demonstration (I had them in there before) but for iotests I don't see why it's strictly necessary.

--js

Reply via email to