All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
To: Eric Blake <eblake@redhat.com>
Cc: ChenLiang <chenliang88@huawei.com>,
	weidong.huang@huawei.com, quintela@redhat.com,
	qemu-devel@nongnu.org, arei.gonglei@huawei.com,
	pbonzini@redhat.com
Subject: Re: [Qemu-devel] For 2.0? Re: [PATCH v5 00/10] migration: Optimizate the xbzrle and fix one corruption issue
Date: Fri, 4 Apr 2014 18:40:35 +0100	[thread overview]
Message-ID: <20140404174035.GD6393@work-vm> (raw)
In-Reply-To: <533EEAE1.3040005@redhat.com>

* Eric Blake (eblake@redhat.com) wrote:
> On 04/04/2014 03:57 AM, arei.gonglei@huawei.com wrote:
> > From: ChenLiang <chenliang88@huawei.com>
> > 
> > V5-->V4
> > * Fix two issues: one is cache_insert don't update the page which
> >   has been in the cache. Another avoiding the risk that run
> >   xbzrle_encode_buffer on changing data.
> 
> Is all or part of this series essential to have in 2.0 to avoid having a
> regression?

The first one (Fix one XBZRLE corruption issue) is probably worth it;
however my understanding is that it can only cause this corruption 
in the case where the source qemu runs out of RAM, and a few months
ago that used to be the case where the source qemu would abort at that
point, so it wasn't pleasent then.

Everything is else is an improvement.

Dave

> > 
> > 
> > a. Optimization the xbzrle remarkable decrease the cache misses.
> >     The efficiency of compress increases more than fifty times.
> >     Before the patch set, the cache almost totally miss when the
> >     number of cache item less than the dirty page number. Now the
> >     hot pages in the cache will not be replaced by other pages.
> > 
> > b. Reducing the data copy
> > 
> > c. Fix one corruption issues.
> > 
> > ChenLiang (10):
> >   XBZRLE: Fix one XBZRLE corruption issues
> 
> Based on name, this patch is worth including in the release, if it is
> not too late.
> 
> >   migration: Add counts of updating the dirty bitmap
> >   migration: expose the bitmap_sync_count to the end user
> >   migration: expose xbzrle cache miss rate
> 
> whereas these names sound like new features, and thus should wait for 2.1.
> 
> >   XBZRLE: optimize XBZRLE to decrease the cache misses
> >   XBZRLE: rebuild the cache_is_cached function
> >   xbzrle: don't check the value in the vm ram repeatedly
> >   xbzrle: check 8 bytes at a time after an concurrency scene
> >   migration: optimize xbzrle by reducing data copy
> >   migration: clear the dead code
> > 
> >  arch_init.c                    |  74 +++++++++++++++++-------------
> >  docs/xbzrle.txt                |   8 ++++
> >  hmp.c                          |   4 ++
> >  include/migration/migration.h  |   2 +
> >  include/migration/page_cache.h |  10 ++--
> >  migration.c                    |   3 ++
> >  page_cache.c                   | 101 +++++++++++------------------------------
> >  qapi-schema.json               |   9 +++-
> >  qmp-commands.hx                |  15 ++++--
> >  xbzrle.c                       |  48 ++++++++++++++------
> >  10 files changed, 144 insertions(+), 130 deletions(-)
> > 
> 
> -- 
> Eric Blake   eblake redhat com    +1-919-301-3266
> Libvirt virtualization library http://libvirt.org
> 


--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK

      reply	other threads:[~2014-04-04 18:38 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-04  9:57 [Qemu-devel] [PATCH v5 00/10] migration: Optimizate the xbzrle and fix one corruption issue arei.gonglei
2014-04-04  9:57 ` [Qemu-devel] [PATCH v5 01/10] XBZRLE: Fix one XBZRLE corruption issues arei.gonglei
2014-04-04  9:57 ` [Qemu-devel] [PATCH v5 02/10] migration: Add counts of updating the dirty bitmap arei.gonglei
2014-04-04  9:57 ` [Qemu-devel] [PATCH v5 03/10] migration: expose the bitmap_sync_count to the end arei.gonglei
2014-04-04  9:57 ` [Qemu-devel] [PATCH v5 04/10] migration: expose xbzrle cache miss rate arei.gonglei
2014-04-04  9:57 ` [Qemu-devel] [PATCH v5 05/10] XBZRLE: optimize XBZRLE to decrease the cache misses arei.gonglei
2014-05-01 14:24   ` Eric Blake
2014-04-04  9:57 ` [Qemu-devel] [PATCH v5 06/10] XBZRLE: rebuild the cache_is_cached function arei.gonglei
2014-05-01 14:29   ` Eric Blake
2014-04-04  9:57 ` [Qemu-devel] [PATCH v5 07/10] xbzrle: don't check the value in the vm ram repeatedly arei.gonglei
2014-04-04 19:50   ` Dr. David Alan Gilbert
2014-04-04  9:58 ` [Qemu-devel] [PATCH v5 08/10] xbzrle: check 8 bytes at a time after an concurrency scene arei.gonglei
2014-04-04 19:52   ` Dr. David Alan Gilbert
2014-04-05  2:39     ` 陈梁
2014-04-04  9:58 ` [Qemu-devel] [PATCH v5 09/10] migration: optimize xbzrle by reducing data copy arei.gonglei
2014-04-04 19:59   ` Dr. David Alan Gilbert
2014-04-04  9:58 ` [Qemu-devel] [PATCH v5 10/10] migration: clear the dead code arei.gonglei
2014-04-04 17:16 ` [Qemu-devel] [PATCH v5 00/10] migration: Optimizate the xbzrle and fix one corruption issue Dr. David Alan Gilbert
2014-04-04 17:24 ` [Qemu-devel] For 2.0? " Eric Blake
2014-04-04 17:40   ` Dr. David Alan Gilbert [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140404174035.GD6393@work-vm \
    --to=dgilbert@redhat.com \
    --cc=arei.gonglei@huawei.com \
    --cc=chenliang88@huawei.com \
    --cc=eblake@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=quintela@redhat.com \
    --cc=weidong.huang@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.