From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51556) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YuiHQ-0006Nu-7g for qemu-devel@nongnu.org; Tue, 19 May 2015 10:14:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YuiHK-0005u7-E5 for qemu-devel@nongnu.org; Tue, 19 May 2015 10:14:00 -0400 Received: from mx1.redhat.com ([209.132.183.28]:52936) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YuiHK-0005tb-6n for qemu-devel@nongnu.org; Tue, 19 May 2015 10:13:54 -0400 Message-ID: <555B4520.7000109@redhat.com> Date: Tue, 19 May 2015 08:13:52 -0600 From: Eric Blake MIME-Version: 1.0 References: <1432034993-24431-1-git-send-email-dgilbert@redhat.com> <555B3FF1.6090205@redhat.com> <20150519140649.GB2127@work-vm> In-Reply-To: <20150519140649.GB2127@work-vm> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="rfbGMowRbwrN0jQ0FfhEGB9COLP8D9gvO" Subject: Re: [Qemu-devel] [PATCH 0/4] Add section footers to detect corrupted migration streams List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Dr. David Alan Gilbert" Cc: amit.shah@redhat.com, quintela@redhat.com, qemu-devel@nongnu.org, agraf@suse.de This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --rfbGMowRbwrN0jQ0FfhEGB9COLP8D9gvO Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 05/19/2015 08:06 AM, Dr. David Alan Gilbert wrote: >> Does it let us detect a corrupted >> stream earlier in the process? Or is the main benefit that it gives >> better error messages at the point corruption is first detected? >=20 > Both; there are two cases that often happen; both triggered by a sectio= n > reading too little or too much, and it gets back to the main loop and > we read the next byte: > 1) the next byte on the stream is a 0x00 - that's read as an end-of-= migration > marker, we start the VM and you get a hung VM with no errors. >=20 > 2) the next byte is between 0x01..0x04 - and it looks like a section= header, > then we try and read the next few bytes to figure out which secti= on; > this could a) result in an error saying it's an unknown section o= r > b) Happen to match a section ID and then get an error about a pro= blem > in that section. In either case you don't get an error pointing = to > the previous section which was the actual problem. Probably worth incorporating into the commit body then :) >=20 >>> >>> The footers are tied to new machine types (on both pc types). >> >> Good that you tied it to machine type, but is it enough? When we adde= d >> the optional section for giving the json representation of the stream,= >> we ended up having to add a knob to turn off that section, so that >> backwards migration from a new qemu to an older one did not send it. >> I'm wondering if we'll need to expose a knob to turn off footers, agai= n >> for the sake of backwards migration in downstream distros. >=20 > That knob is already the knob that I've created and tied to the machine= > type; the downstream distros will just turn the same knob in their old > machine types. I'm not asking about the machine type defaults, but a command line override: -machine suppress-vmdesc=3Don, commit 9850c604 [uggh - why'd we give that option an inverted name? Just so we could have a default of off? It might have been nicer as -machine send-vmdesc=3Doff with a default of on for new machine types] --=20 Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org --rfbGMowRbwrN0jQ0FfhEGB9COLP8D9gvO Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Public key at http://people.redhat.com/eblake/eblake.gpg Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQEcBAEBCAAGBQJVW0UgAAoJEKeha0olJ0NqmN8IAJidoKyCePzUG6iprgD7jIOF jTcOJkmNLGPK+AdPnzG0cpAWnTegRUU5MA7yxQH4t1mFWWFnMr1zmuIHrrh/V9NL kwvyTSqYKRSjeOym4LR78mQYFlBIwev0HjlWBCBKbW8+kHNpo04oHgWxteGV846A u54t3YmPEM+c/VIMQM1bqp02vlKSmvsOMqYTVAQ+WGhahEcGkxSh3KQXDMf5v6fF qTjJ22zq1AvgNO5rK0qZokg4vPTZUA3nfBmbfnfuVp3wKRDQFHiB/WcCgKFrBT0t yZNJp4qYP61Lg2qgMZHX/HKPVwNgVW+pr1JlFOtqb+9eDXKcHgww90xXtKGTQFA= =fuQr -----END PGP SIGNATURE----- --rfbGMowRbwrN0jQ0FfhEGB9COLP8D9gvO--