From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51516) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YqLjE-0002lO-38 for qemu-devel@nongnu.org; Thu, 07 May 2015 09:20:45 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YqLj8-00075t-4b for qemu-devel@nongnu.org; Thu, 07 May 2015 09:20:40 -0400 Date: Thu, 7 May 2015 14:20:28 +0100 From: Stefan Hajnoczi Message-ID: <20150507132028.GL13985@stefanha-thinkpad.redhat.com> References: <1430887928-18189-1-git-send-email-famz@redhat.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="rVkomL2febZOZtGQ" Content-Disposition: inline In-Reply-To: <1430887928-18189-1-git-send-email-famz@redhat.com> Subject: Re: [Qemu-devel] [Qemu-block] [PATCH v2 0/6] block: Mirror discarded sectors List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Fam Zheng Cc: qemu-block@nongnu.org, Jeff Cody , qemu-devel@nongnu.org, Stefan Hajnoczi , pbonzini@redhat.com, wangxiaolong@ucloud.cn --rVkomL2febZOZtGQ Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, May 06, 2015 at 12:52:02PM +0800, Fam Zheng wrote: > v2: Fix typo and add Eric's rev-by in patch 3. > Add patch 1 to discard target in mirror job. (Paolo) > Add patch 6 to improve iotests.wait_ready. (John) >=20 > This fixes the mirror assert failure reported by wangxiaolong: >=20 > https://lists.gnu.org/archive/html/qemu-devel/2015-04/msg04458.html >=20 > The direct cause is that hbitmap code couldn't handle unset of bits *afte= r* > iterator's current position. We could fix that, but the bdrv_reset_dirty(= ) call > is more questionable: >=20 > Before, if guest discarded some sectors during migration, it could see > different data after moving to dest side, depending on block backends of = the > src and the dest. This is IMO worse than mirroring the actual reading as = done > in this series, because we don't know what the guest is doing. >=20 > For example if a guest first issues WRITE SAME to wipe out the area then = issues > UNMAP to discard it, just to get rid of some sensitive data completely, w= e may > miss both operations and leave stale data on dest image. >=20 >=20 > Fam Zheng (6): > mirror: Discard target sectors if not allocated at source side > block: Fix dirty bitmap in bdrv_co_discard > block: Remove bdrv_reset_dirty > qemu-iotests: Make block job methods common > qemu-iotests: Add test case for mirror with unmap > iotests: Use event_wait in wait_ready >=20 > block.c | 12 -------- > block/io.c | 4 +-- > block/mirror.c | 12 ++++++-- > include/block/block_int.h | 2 -- > tests/qemu-iotests/041 | 66 ++++++++++---------------------------= ------ > tests/qemu-iotests/131 | 59 ++++++++++++++++++++++++++++++++++++++ > tests/qemu-iotests/131.out | 5 ++++ > tests/qemu-iotests/group | 1 + > tests/qemu-iotests/iotests.py | 23 +++++++++++++++ > 9 files changed, 115 insertions(+), 69 deletions(-) > create mode 100644 tests/qemu-iotests/131 > create mode 100644 tests/qemu-iotests/131.out CCing Jeff Cody for block jobs --rVkomL2febZOZtGQ Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQEcBAEBAgAGBQJVS2acAAoJEJykq7OBq3PIgQYH/iySThSFu5kBrEQdhlHxx3WH pga9KJFKDQ3MIYN5GLzpdxTOsJzd2WV78AGmZkOxAyqrDjHce+MuJlykAK7MjYe5 xOF6daSqplggOpTdc+65TSVR8Kjg2AtBKi58sdPieVWvTgUUczXcp72DVxJ370FR Vu4LhxRPaHo8Jee3MaMRYuvjb+iG8rdDAPdOKTe5LQ0VfWgTGFjdBwtYfgPpr4gk 5WN1mCWHpfh99dkEGcHJAYCtlNhjrwUgHjlPJcPXdoSQdlMbEg+VFNbRd9RRB4pd bsnc4cblWWedoapnJ0/nEUsh/n41drS0T6XeM9bWK5BjDW/3ORt+zKGpYOTmRGI= =eHhJ -----END PGP SIGNATURE----- --rVkomL2febZOZtGQ--