From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43569) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YOq5S-0005cz-4R for qemu-devel@nongnu.org; Fri, 20 Feb 2015 11:05:55 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YOq5M-00078s-IS for qemu-devel@nongnu.org; Fri, 20 Feb 2015 11:05:54 -0500 Received: from mx1.redhat.com ([209.132.183.28]:33763) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YOq5M-00078Z-BL for qemu-devel@nongnu.org; Fri, 20 Feb 2015 11:05:48 -0500 Message-ID: <54E75B58.505@redhat.com> Date: Fri, 20 Feb 2015 11:05:44 -0500 From: John Snow MIME-Version: 1.0 References: <1423865338-8576-1-git-send-email-jsnow@redhat.com> <1423865338-8576-16-git-send-email-jsnow@redhat.com> <20150220100235.GC3867@stefanha-thinkpad.redhat.com> In-Reply-To: <20150220100235.GC3867@stefanha-thinkpad.redhat.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH v13 15/17] iotests: add simple incremental backup case List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Stefan Hajnoczi Cc: kwolf@redhat.com, famz@redhat.com, armbru@redhat.com, qemu-devel@nongnu.org, vsementsov@parallels.com, mreitz@redhat.com 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