qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Andrea Arcangeli <aarcange@redhat.com>
To: Anthony Liguori <anthony@codemonkey.ws>
Cc: Michael Roth <mdroth@linux.vnet.ibm.com>,
	Jes Sorensen <Jes.Sorensen@redhat.com>,
	qemu-devel@nongnu.org, Luiz Capitulino <lcapitulino@redhat.com>
Subject: Re: [Qemu-devel] RFC: moving fsfreeze support from the userland guest agent to the guest kernel
Date: Wed, 27 Jul 2011 18:50:03 +0200	[thread overview]
Message-ID: <20110727165003.GB3087@redhat.com> (raw)
In-Reply-To: <4E303E24.3050800@codemonkey.ws>

On Wed, Jul 27, 2011 at 11:34:44AM -0500, Anthony Liguori wrote:
> Currently, QEMU doesn't know about fsfreeze.  I don't think it ever will 
> either.

Ah, sorry thanks for the correction, it's some other repo that you
were modifying (qga).

> One challenge though is that it's highly desirable to have script hooks 
> as part of the freeze process to let other userspace applications 
> participate which means you will always need some userspace daemon to 
> kick things off.
> 
> Instead of having a virtio-fsfreeze, I think it would be better to think 
> about if the kernel needs a higher level interface such that the 
> userspace operation is dirt-simple.
> 
> But I don't see a way to avoid userspace involvement in this set of 
> operations unfortunately.

A /dev/virtio-fsfreeze chardevice created by udev when
virtio-fsfreeze.ko is loaded may be enough to do it. Or maybe it
should be a host kernel solution /dev/fsfreeze that talks with
fsfreeze (not just the virtio case).

The apps liekly must be modified for this, I doubt the scripts would
do much on their own (they'd likely just tell the app to do something
through an unix domain socket) but if scripts are needed the agent
could open that chardev instead of talking QMP/QAPI.

It also depends if people prefers a single agent do it all, or a
fsfreeze agent and some other agent for something else. Even if they
want a single agent for everything they could still have it talk
QMP/QAPI on the virtio-serial vmchannel for everything else and open
/dev/virtio-fsfreeze or /dev/freeze if available.

It's up to you... you understand the customer requirements better. For
me a kernel update and no agent sounds nicer and looks more reliable
considering what fsfreeze does.

  reply	other threads:[~2011-07-27 16:50 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-07-27 15:24 [Qemu-devel] RFC: moving fsfreeze support from the userland guest agent to the guest kernel Andrea Arcangeli
2011-07-27 16:07 ` Michael Roth
2011-07-27 16:40   ` Andrea Arcangeli
2011-07-28  8:54     ` Jes Sorensen
2011-07-28 15:26       ` Michael Roth
2011-07-27 16:34 ` Anthony Liguori
2011-07-27 16:50   ` Andrea Arcangeli [this message]
2011-07-27 18:36   ` Christoph Hellwig
2011-07-27 19:47     ` Andrea Arcangeli
2011-07-28  8:56     ` Jes Sorensen
2011-07-28  2:53 ` Fernando Luis Vázquez Cao
2011-07-28  8:03   ` Andrea Arcangeli
2011-07-28 15:11     ` Michael Roth
2011-07-29  0:29       ` Fernando Luis Vazquez Cao
2011-08-07 18:28 ` Ronen Hod
2011-08-08 13:26   ` Luiz Capitulino

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=20110727165003.GB3087@redhat.com \
    --to=aarcange@redhat.com \
    --cc=Jes.Sorensen@redhat.com \
    --cc=anthony@codemonkey.ws \
    --cc=lcapitulino@redhat.com \
    --cc=mdroth@linux.vnet.ibm.com \
    --cc=qemu-devel@nongnu.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).