All of lore.kernel.org
 help / color / mirror / Atom feed
From: Fam Zheng <famz@redhat.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: kwolf@redhat.com, jcody@redhat.com, qemu-devel@nongnu.org,
	stefanha@redhat.com
Subject: Re: [Qemu-devel] [PATCH 1/2] block: allow live commit of active image
Date: Tue, 23 Jul 2013 10:03:43 +0800	[thread overview]
Message-ID: <20130723020343.GB25603@T430s.redhat.com> (raw)
In-Reply-To: <51ED1262.4000000@redhat.com>

On Mon, 07/22 13:07, Paolo Bonzini wrote:
> Il 22/07/2013 08:48, Fam Zheng ha scritto:
> >> > I have only skimmed the patch, but I think this is incomplete.
> >> > Management needs to know the moment when 'active' is not valid anymore,
> >> > thus this job needs to be completed manually with "block-job-complete".
> > Does management need access to 'active' image outside of QEMU process?
> > Although original 'active' it is "dropped" by bdrv_drop_intermediate,
> > the pointers to original 'active' is still valid because 'base' is moved
> > to this address (with bdrv_swap). I don't know, what is the problem here
> > for management?
> 
> Management needs to know, in case of a crash in QEMU or management
> itself at exactly the right time, whether any I/O have been issued by
> the guest to the 'base'.  The only way to do this is, at this time,
> something like
> 
>     stop
>     block-job-complete ide0-hd0
>     cont
> 
I see, this way the job needs to stop vm in the point of all copying
drained, then report 'ready' and wait for manual complete before
swapping active, sounds not so good. Ideally we should mirror writes
_synchronously_ to 'top' and 'base' after 'ready' state and wait for
manual complete to switch image. Do you think this is easy to do?

Fam

  reply	other threads:[~2013-07-23  2:03 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-22  3:46 [Qemu-devel] [PATCH 0/2] block: allow commit active as top Fam Zheng
2013-07-22  3:46 ` [Qemu-devel] [PATCH 1/2] block: allow live commit of active image Fam Zheng
2013-07-22  6:34   ` Paolo Bonzini
2013-07-22  6:48     ` Fam Zheng
2013-07-22 11:07       ` Paolo Bonzini
2013-07-23  2:03         ` Fam Zheng [this message]
2013-07-23 11:13           ` Paolo Bonzini
2013-07-22  3:46 ` [Qemu-devel] [PATCH 2/2] qemu-iotests: update test cases for commit active Fam Zheng
2013-07-22  6:43 ` [Qemu-devel] [PATCH 0/2] block: allow commit active as top Wenchao Xia
2013-07-22  7:05   ` Fam Zheng

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=20130723020343.GB25603@T430s.redhat.com \
    --to=famz@redhat.com \
    --cc=jcody@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@redhat.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.