From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:48428) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Um5Yp-0006Xp-Ot for qemu-devel@nongnu.org; Mon, 10 Jun 2013 13:07:16 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Um5Yo-0004Az-Eu for qemu-devel@nongnu.org; Mon, 10 Jun 2013 13:07:15 -0400 Received: from mx1.redhat.com ([209.132.183.28]:11110) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Um5Yo-0004Ai-8P for qemu-devel@nongnu.org; Mon, 10 Jun 2013 13:07:14 -0400 Message-ID: <51B60813.6060003@redhat.com> Date: Mon, 10 Jun 2013 20:08:35 +0300 From: Orit Wasserman MIME-Version: 1.0 References: <1370859260-8183-1-git-send-email-pl@kamp.de> <1370859260-8183-2-git-send-email-pl@kamp.de> In-Reply-To: <1370859260-8183-2-git-send-email-pl@kamp.de> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCHv2 1/2] Revert "migration: do not sent zero pages in bulk stage" List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Lieven Cc: quintela@redhat.com, aik@ozlabs.ru, qemu-devel@nongnu.org, pbonzini@redhat.com, xiawenc@linux.vnet.ibm.com, david@gibson.dropbear.id.au On 06/10/2013 01:14 PM, Peter Lieven wrote: > Not sending zero pages breaks migration if a page is zero > at the source but not at the destination. This can e.g. happen > if different BIOS versions are used at source and destination. > It has also been reported that migration on pseries is completely > broken with this patch. > > This effectively reverts commit f1c72795af573b24a7da5eb52375c9aba8a37972. > > Conflicts: > > arch_init.c > > Signed-off-by: Peter Lieven > --- > arch_init.c | 13 ++++--------- > 1 file changed, 4 insertions(+), 9 deletions(-) > > diff --git a/arch_init.c b/arch_init.c > index 5d32ecf..08fccf6 100644 > --- a/arch_init.c > +++ b/arch_init.c > @@ -457,15 +457,10 @@ static int ram_save_block(QEMUFile *f, bool last_stage) > bytes_sent = -1; > if (is_zero_page(p)) { > acct_info.dup_pages++; > - if (!ram_bulk_stage) { > - bytes_sent = save_block_hdr(f, block, offset, cont, > - RAM_SAVE_FLAG_COMPRESS); > - qemu_put_byte(f, 0); > - bytes_sent++; > - } else { > - acct_info.skipped_pages++; > - bytes_sent = 0; > - } > + bytes_sent = save_block_hdr(f, block, offset, cont, > + RAM_SAVE_FLAG_COMPRESS); > + qemu_put_byte(f, 0); > + bytes_sent++; > } else if (!ram_bulk_stage && migrate_use_xbzrle()) { > current_addr = block->offset + offset; > bytes_sent = save_xbzrle_page(f, p, current_addr, block, > Reviewed-by: Orit Wasserman