qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Luiz Capitulino <lcapitulino@redhat.com>
To: Juan Quintela <quintela@redhat.com>
Cc: qemu-devel@nongnu.org
Subject: [Qemu-devel] Re: [PATCH v3 0/5] Add QMP migration events
Date: Wed, 16 Jun 2010 15:01:55 -0300	[thread overview]
Message-ID: <20100616150155.49acbc50@redhat.com> (raw)
In-Reply-To: <m3y6eg5nec.fsf@trasno.mitica>

On Tue, 15 Jun 2010 17:24:59 +0200
Juan Quintela <quintela@redhat.com> wrote:

> Luiz Capitulino <lcapitulino@redhat.com> wrote:
> > On Tue, 15 Jun 2010 12:30:57 +0200
> > Juan Quintela <quintela@redhat.com> wrote:
> >
> >> Anthony Liguori <anthony@codemonkey.ws> wrote:
> >> > On 06/14/2010 02:54 PM, Juan Quintela wrote:
> >> >> Anthony Liguori<aliguori@linux.vnet.ibm.com>  wrote:
> >> 
> >> >>> What makes migration important and not savevm?
> >> >>>      
> >> >> That is the reason why I insist to have the events "both" in source and
> >> >> destination.  About how to integrate savevm on the whole picture ....
> >> >>
> >> >> VM_SAVE_START/VM_SAVE_END/VM_RESTORE_START/VM_RESTORE_END events?
> >> >>    
> >> >
> >> > If savevm is an asychronous command, then it's already there.
> >> >
> >> > You really want to support turning all command submissions/completions
> >> > into events.   You could do it with two events.  The first would be
> >> > COMMAND_REQUEST and would contain the request data and which monitor
> >> > it occurred on.  The second would be COMMAND_RESPONSE and would
> >> > contain the response data and which monitor it occurred on.
> >> >
> >> > But honestly, I think it's a stretch to say this functionality is
> >> > really needed.
> >> 
> >> As already told, what I need is the migration ones.
> >> 
> >> The imporant case is MIGRATION_ENDED on target when migration were
> >> sucessful.  This is the fast path, and it makes a difference here.
> >
> >  I think we could avoid this one too, but as it has a clear feature for
> > 0.13, I'm not too opposed either.
> >
> >> MIGRATION_STARTED on target is also quite "nice" to have.  At this point
> >> libvirt has an
> >> 
> >> sleep(250ms): echo "cont"
> >> 
> >> Due to a race here in incoming migration.
> >
> >  Hm. Did you investigate that race in detail? I hope we're not using events
> > to hide bugs.
> 
> Yes.  we can call "cont" while staying in "waiting for incomming
> migration" because we dont' have "waiting incoming migraiton" than
> vm_start/stop understand.
> 
> Reviewing all callers to see that I can add a new state.

 Will skip this one because it seems to be being discussed in a different
thread.

> >> As we only wanted one ending event, can agree on:
> >> 
> >> MIGRATION_STARTED(both source and target)
> >> MIGRATION_DONE(result) (both source and target)
> >> 
> >> where result can be ok or -1 (at this point we don't have anything else
> >> to put there).
> >> 
> >> That moves us from 4 events to 2?
> >
> >  I still don't see the need for MIGRATION_STARTED, it could be useful in
> > the target but I'd like to understand the use case in more detail.
> 
> At this point, if you are doing migration with tcp, and you are putting
> the wrong port on source (no path or any other error), you get no info
> at all of what is happening.

 Shouldn't the migrate command just the return the expected error?

> It is important to be sure than migration has started, i.e. something
> happenend.  It happens to me all the time, and users with more complex
> setup will like it to know what is happening.

 It already happened to me too, but I feel that the event is being used
as a workaround: we should return good error information instead, like this:

(qemu) migrate tcp:foobar:444
migrate: Can't locate host 'foobar'

(qemu) migrate tcp:doriath:1
migrate: Host 'doriath' is not listening for migration in port 1

(qemu) migrate 'exec:asd'
migrate: Can't execute 'asd'

 In QMP the client does get an event, it's the completion response of the
async command, with the error information.

> As a workaround, we can try something like "info status" or ony read
> only version to know that migration is not happening (because) monitor
> is working (as I tell an workaround).
> 
> Later, Juan.
> 

  reply	other threads:[~2010-06-16 18:02 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-06-09 12:10 [Qemu-devel] [PATCH v3 0/5] Add QMP migration events Juan Quintela
2010-06-09 12:10 ` [Qemu-devel] [PATCH v3 1/5] Exit if incoming migration fails Juan Quintela
2010-06-23  1:47   ` Anthony Liguori
2010-06-24 20:41     ` [Qemu-devel] [PATCH] win32: Add define for missing EPROTONOSUPPORT Stefan Weil
2010-06-27 20:25       ` Blue Swirl
2010-06-09 12:10 ` [Qemu-devel] [PATCH v3 2/5] Factorize common migration incoming code Juan Quintela
2010-06-09 12:10 ` [Qemu-devel] [PATCH v3 3/5] QMP: Introduce MIGRATION events Juan Quintela
2010-06-09 20:54   ` Luiz Capitulino
2010-06-10 10:33     ` [Qemu-devel] " Juan Quintela
2010-06-11 13:12       ` Luiz Capitulino
2010-06-09 12:10 ` [Qemu-devel] [PATCH v3 4/5] QMP: Emit migration events on incoming migration Juan Quintela
2010-06-09 12:10 ` [Qemu-devel] [PATCH v3 5/5] QMP: Emit migration events on outgoing migration Juan Quintela
2010-06-09 14:47 ` [Qemu-devel] [PATCH v3 0/5] Add QMP migration events Yoshiaki Tamura
2010-06-09 15:59   ` [Qemu-devel] " Juan Quintela
2010-06-09 22:07     ` Yoshiaki Tamura
2010-06-09 20:52 ` [Qemu-devel] " Luiz Capitulino
2010-06-09 21:19   ` Yoshiaki Tamura
2010-06-10 10:44   ` [Qemu-devel] " Juan Quintela
2010-06-11 14:30     ` Luiz Capitulino
2010-06-11 14:38       ` Anthony Liguori
2010-06-11 16:42         ` Luiz Capitulino
2010-06-12 11:20           ` Juan Quintela
2010-06-14 14:36             ` Luiz Capitulino
2010-06-14 15:45               ` Juan Quintela
2010-06-12 11:14         ` Juan Quintela
2010-06-14 13:58           ` Anthony Liguori
2010-06-14 14:24             ` Luiz Capitulino
2010-06-14 14:35               ` Anthony Liguori
2010-06-14 14:42                 ` Luiz Capitulino
2010-06-12 11:05       ` Juan Quintela
2010-06-14 14:03         ` Anthony Liguori
2010-06-14 16:02           ` Juan Quintela
2010-06-14 16:10             ` Anthony Liguori
2010-06-14 18:35               ` Juan Quintela
2010-06-14 19:07                 ` Anthony Liguori
2010-06-14 19:54                   ` Juan Quintela
2010-06-14 20:01                     ` Anthony Liguori
2010-06-15 10:30                       ` Juan Quintela
2010-06-15 13:40                         ` Luiz Capitulino
2010-06-15 15:24                           ` Juan Quintela
2010-06-16 18:01                             ` Luiz Capitulino [this message]
2010-06-16 19:10                               ` Juan Quintela
2010-06-17 14:23                                 ` Luiz Capitulino
2010-06-17 16:34                                   ` Juan Quintela
2010-06-17 16:45                                     ` Luiz Capitulino
2010-06-17 17:53                                       ` Anthony Liguori

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=20100616150155.49acbc50@redhat.com \
    --to=lcapitulino@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 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).