From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:47183) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RdMff-00080S-4j for qemu-devel@nongnu.org; Wed, 21 Dec 2011 08:57:31 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RdMfZ-0000tp-6x for qemu-devel@nongnu.org; Wed, 21 Dec 2011 08:57:27 -0500 Received: from mail-gx0-f173.google.com ([209.85.161.173]:46405) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RdMfZ-0000ti-1n for qemu-devel@nongnu.org; Wed, 21 Dec 2011 08:57:21 -0500 Received: by ggnk1 with SMTP id k1so6396087ggn.4 for ; Wed, 21 Dec 2011 05:57:20 -0800 (PST) Message-ID: <4EF1E5BE.80108@codemonkey.ws> Date: Wed, 21 Dec 2011 07:57:18 -0600 From: Anthony Liguori MIME-Version: 1.0 References: <1324474477-22267-1-git-send-email-avi@redhat.com> <1324474477-22267-5-git-send-email-avi@redhat.com> In-Reply-To: <1324474477-22267-5-git-send-email-avi@redhat.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 4/8] Remove support for version 3 ram_load List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Avi Kivity Cc: qemu-devel@nongnu.org, quintela@redhat.com On 12/21/2011 07:34 AM, Avi Kivity wrote: > Version 3 ram_load depends on ram_addrs, which are not stable. Version 4 > was introduced in 0.13 (and RHEL 6), so this means live migration from 0.12 > and earlier to 1.1 or later will not work. Can you please make a note on http://wiki.qemu.org/ChangeLog/Next Reviewed-by: Anthony Liguori Regards, Anthony Liguori > > Signed-off-by: Avi Kivity > --- > arch_init.c | 18 ++++-------------- > 1 files changed, 4 insertions(+), 14 deletions(-) > > diff --git a/arch_init.c b/arch_init.c > index 8a3f052..9b8a1f3 100644 > --- a/arch_init.c > +++ b/arch_init.c > @@ -366,7 +366,7 @@ int ram_load(QEMUFile *f, void *opaque, int version_id) > int flags; > int error; > > - if (version_id< 3 || version_id> 4) { > + if (version_id< 4 || version_id> 4) { > return -EINVAL; > } > > @@ -377,11 +377,7 @@ int ram_load(QEMUFile *f, void *opaque, int version_id) > addr&= TARGET_PAGE_MASK; > > if (flags& RAM_SAVE_FLAG_MEM_SIZE) { > - if (version_id == 3) { > - if (addr != ram_bytes_total()) { > - return -EINVAL; > - } > - } else { > + if (version_id == 4) { > /* Synchronize RAM block list */ > char id[256]; > ram_addr_t length; > @@ -419,10 +415,7 @@ int ram_load(QEMUFile *f, void *opaque, int version_id) > void *host; > uint8_t ch; > > - if (version_id == 3) > - host = qemu_get_ram_ptr(addr); > - else > - host = host_from_stream_offset(f, addr, flags); > + host = host_from_stream_offset(f, addr, flags); > if (!host) { > return -EINVAL; > } > @@ -438,10 +431,7 @@ int ram_load(QEMUFile *f, void *opaque, int version_id) > } else if (flags& RAM_SAVE_FLAG_PAGE) { > void *host; > > - if (version_id == 3) > - host = qemu_get_ram_ptr(addr); > - else > - host = host_from_stream_offset(f, addr, flags); > + host = host_from_stream_offset(f, addr, flags); > > qemu_get_buffer(f, host, TARGET_PAGE_SIZE); > }