All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anthony Liguori <anthony@codemonkey.ws>
To: "Daniel P. Berrange" <berrange@redhat.com>
Cc: Lucas Meneghel Rodrigues <lmr@redhat.com>,
	Kevin Wolf <kwolf@redhat.com>,
	KVM mailing list <kvm@vger.kernel.org>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	"libvir-list@redhat.com" <libvir-list@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	QEMU devel <qemu-devel@nongnu.org>,
	Juan Jose Quintela Carreira <quintela@redhat.com>,
	Avi Kivity <avi@redhat.com>
Subject: Re: [Qemu-devel] qemu and qemu.git -> Migration + disk stress introduces qcow2 corruptions
Date: Thu, 10 Nov 2011 13:11:42 -0600	[thread overview]
Message-ID: <4EBC21EE.2010102@codemonkey.ws> (raw)
In-Reply-To: <20111110184200.GC17987@redhat.com>

On 11/10/2011 12:42 PM, Daniel P. Berrange wrote:
> On Thu, Nov 10, 2011 at 12:27:30PM -0600, Anthony Liguori wrote:
>> What does libvirt actually do in the monitor prior to migration
>> completing on the destination?  The least invasive way of doing
>> delayed open of block devices is probably to make -incoming create a
>> monitor and run a main loop before the block devices (and full
>> device model) is initialized.  Since this isolates the changes
>> strictly to migration, I'd feel okay doing this for 1.0 (although it
>> might need to be in the stable branch).
>
> The way migration works with libvirt wrt QEMU interactions is now
> as follows
>
>   1. Destination.
>         Run   qemu -incoming ...args...
>         Query chardevs via monitor
>         Query vCPU threads via monitor
>         Set disk / vnc passwords

Since RHEL carries Juan's patch, and Juan's patch doesn't handle disk passwords 
gracefully, how does libvirt cope with that?

Regards,

Anthony Liguori

>         Set netdev link states
>         Set balloon target
>
>   2. Source
>         Set  migration speed
>         Set  migration max downtime
>         Run  migrate command (detached)
>         while 1
>            Query migration status
>            if status is failed or success
>              break;
>
>   3. Destination
>        If final status was success
>           Run  'cont' in monitor
>        else
>           kill QEMU process
>
>   4. Source
>        If final status was success and 'cont' on dest succeeded
>           kill QEMU process
>        else
>           Run 'cont' in monitor
>
>
> In older libvirt, the bits from step 4, would actually take place
> at the end of step 2. This meant we could end up with no QEMU
> on either the source or dest, if starting CPUs on the dest QEMU
> failed for some reason.
>
>
> We would still really like to have a 'query-migrate' command for
> the destination, so that we can confirm that the destination has
> consumed all incoming migrate data successfully, rather than just
> blindly starting CPUs and hoping for the best.
>
> Regards,
> Daniel


  reply	other threads:[~2011-11-10 19:11 UTC|newest]

Thread overview: 102+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-11-09 16:29 qemu and qemu.git -> Migration + disk stress introduces qcow2 corruptions Lucas Meneghel Rodrigues
2011-11-09 16:29 ` [Qemu-devel] " Lucas Meneghel Rodrigues
2011-11-09 16:39 ` Anthony Liguori
2011-11-09 16:39   ` [Qemu-devel] " Anthony Liguori
2011-11-09 17:02   ` Avi Kivity
2011-11-09 17:02     ` Avi Kivity
2011-11-09 17:35     ` Anthony Liguori
2011-11-09 17:35       ` [Qemu-devel] " Anthony Liguori
2011-11-09 19:53       ` Juan Quintela
2011-11-09 19:53         ` [Qemu-devel] " Juan Quintela
2011-11-09 20:18       ` Michael S. Tsirkin
2011-11-09 20:18         ` [Qemu-devel] " Michael S. Tsirkin
2011-11-09 20:22         ` Anthony Liguori
2011-11-09 21:00           ` Michael S. Tsirkin
2011-11-09 21:00             ` [Qemu-devel] " Michael S. Tsirkin
2011-11-09 21:01             ` Anthony Liguori
2011-11-09 21:01               ` [Qemu-devel] " Anthony Liguori
2011-11-10 10:41               ` Kevin Wolf
2011-11-10 10:41                 ` Kevin Wolf
2011-11-10 16:50                 ` Juan Quintela
2011-11-10 16:50                   ` [Qemu-devel] " Juan Quintela
2011-11-10 17:59                   ` Anthony Liguori
2011-11-10 17:59                     ` [Qemu-devel] " Anthony Liguori
2011-11-10 18:00                 ` Anthony Liguori
2011-11-10 18:00                   ` Anthony Liguori
2011-11-09 20:57         ` Juan Quintela
2011-11-09 20:57           ` [Qemu-devel] " Juan Quintela
2011-11-10  8:55       ` Avi Kivity
2011-11-10 17:50         ` Juan Quintela
2011-11-10 17:50           ` [Qemu-devel] " Juan Quintela
2011-11-10 17:54         ` Anthony Liguori
2011-11-10 17:54           ` [Qemu-devel] " Anthony Liguori
2011-11-12 10:20           ` Avi Kivity
2011-11-12 10:20             ` [Qemu-devel] " Avi Kivity
2011-11-12 13:30             ` Anthony Liguori
2011-11-12 13:30               ` [Qemu-devel] " Anthony Liguori
2011-11-12 14:36               ` Avi Kivity
2011-11-12 14:36                 ` [Qemu-devel] " Avi Kivity
2011-11-10 18:27         ` Anthony Liguori
2011-11-10 18:27           ` Anthony Liguori
2011-11-10 18:42           ` Daniel P. Berrange
2011-11-10 18:42             ` [Qemu-devel] " Daniel P. Berrange
2011-11-10 19:11             ` Anthony Liguori [this message]
2011-11-10 20:06               ` Daniel P. Berrange
2011-11-10 20:07                 ` Anthony Liguori
2011-11-10 21:30           ` Anthony Liguori
2011-11-10 21:30             ` Anthony Liguori
2011-11-11 10:15             ` Kevin Wolf
2011-11-11 10:15               ` [Qemu-devel] " Kevin Wolf
2011-11-11 14:03               ` Anthony Liguori
2011-11-11 14:29                 ` Kevin Wolf
2011-11-11 14:35                   ` Anthony Liguori
2011-11-11 14:44                     ` Kevin Wolf
2011-11-11 20:38                       ` Anthony Liguori
2011-11-12 10:27                 ` Avi Kivity
2011-11-12 13:39                   ` Anthony Liguori
2011-11-12 14:43                     ` Avi Kivity
2011-11-12 16:01                       ` Anthony Liguori
2011-11-12 10:25               ` Avi Kivity
2011-11-12 10:25                 ` Avi Kivity
2011-11-14  9:58                 ` Kevin Wolf
2011-11-14  9:58                   ` Kevin Wolf
2011-11-14 10:10                   ` Michael S. Tsirkin
2011-11-14 10:10                     ` [Qemu-devel] " Michael S. Tsirkin
2011-11-15 13:28                   ` Avi Kivity
2011-11-15 13:28                     ` Avi Kivity
2011-11-14 10:16                 ` Daniel P. Berrange
2011-11-14 10:16                   ` Daniel P. Berrange
2011-11-14 10:24                   ` Michael S. Tsirkin
2011-11-14 10:24                     ` Michael S. Tsirkin
2011-11-14 11:08                     ` Daniel P. Berrange
2011-11-14 11:08                       ` Daniel P. Berrange
2011-11-14 11:21                       ` Kevin Wolf
2011-11-14 11:21                         ` [Qemu-devel] " Kevin Wolf
2011-11-14 11:29                         ` Daniel P. Berrange
2011-11-14 11:29                           ` Daniel P. Berrange
2011-11-14 11:34                           ` Michael S. Tsirkin
2011-11-14 11:34                             ` Michael S. Tsirkin
2011-11-14 11:37                             ` Daniel P. Berrange
2011-11-14 11:37                               ` Daniel P. Berrange
2011-11-14 11:51                               ` Michael S. Tsirkin
2011-11-14 11:51                                 ` Michael S. Tsirkin
2011-11-14 11:55                                 ` Daniel P. Berrange
2011-11-14 11:55                                   ` Daniel P. Berrange
2011-11-14 11:56                               ` Michael S. Tsirkin
2011-11-14 11:56                                 ` [Qemu-devel] " Michael S. Tsirkin
2011-11-14 11:58                                 ` Daniel P. Berrange
2011-11-14 11:58                                   ` Daniel P. Berrange
2011-11-14 12:17                                   ` Michael S. Tsirkin
2011-11-14 12:17                                     ` Michael S. Tsirkin
2011-11-14 11:36                           ` Gleb Natapov
2011-11-14 11:32                       ` Michael S. Tsirkin
2011-11-14 11:32                         ` Michael S. Tsirkin
2011-11-14 14:19                   ` Anthony Liguori
2011-11-14 14:19                     ` Anthony Liguori
2011-11-15 13:20                     ` Juan Quintela
2011-11-15 13:20                       ` [Qemu-devel] " Juan Quintela
2011-11-15 13:56                       ` Anthony Liguori
2011-11-09 19:25 ` Juan Quintela
2011-11-09 19:25   ` [Qemu-devel] " Juan Quintela
2011-11-09 23:33   ` Lucas Meneghel Rodrigues
2011-11-09 23:33     ` [Qemu-devel] " Lucas Meneghel Rodrigues

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=4EBC21EE.2010102@codemonkey.ws \
    --to=anthony@codemonkey.ws \
    --cc=avi@redhat.com \
    --cc=berrange@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=kwolf@redhat.com \
    --cc=libvir-list@redhat.com \
    --cc=lmr@redhat.com \
    --cc=mst@redhat.com \
    --cc=mtosatti@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=quintela@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.