All of lore.kernel.org
 help / color / mirror / Atom feed
From: Juan Quintela <quintela@redhat.com>
To: Anthony Liguori <anthony@codemonkey.ws>
Cc: aliguori@us.ibm.com, qemu-devel@nongnu.org,
	Luiz Capitulino <lcapitulino@redhat.com>
Subject: [Qemu-devel] Re: [PATCH v3 0/5] Add QMP migration events
Date: Sat, 12 Jun 2010 13:14:17 +0200	[thread overview]
Message-ID: <m3zkz0bj06.fsf@trasno.mitica> (raw)
In-Reply-To: <4C124A72.9000807@codemonkey.ws> (Anthony Liguori's message of "Fri, 11 Jun 2010 09:38:42 -0500")

Anthony Liguori <anthony@codemonkey.ws> wrote:
> On 06/11/2010 09:30 AM, Luiz Capitulino wrote:
>> On Thu, 10 Jun 2010 12:44:55 +0200
>> Juan Quintela<quintela@redhat.com>  wrote:

>
> I think we've more or less agreed that MIGRATION_CONNECTED is really
> the event we want.

This had the problem of migrating to a file/whatever.

MIGRATION_CONECTED only makes sense when you have TCP or similar.
MIGRATION_STARTED it just means that migration has started,
independently of whatever method you have.  For TCP it is possible that
we want another event each time that somebody connected to a port (not
only for migration), but that is something different.

>>> - MIGRATION_ENDED: migration ended with sucess, all needed data is in
>>>    target machine.  Also emitted in all monitors on source and target.
>>>
>>> - MIGRATION_CANCELED: in one of the source monitors somebody typed:
>>>    migrate_cancel.  It is only emmited on the source monitors, target
>>>    monitors will receive a MIGRATION_FAILED event.
>>>
>>> - MIGRATION_FAILED (with this error).  At this point we don't have
>>>    neither the QMP infraestructure for sending (with this error) nor
>>>    migration infrastructure to put there anything different than -1.
>>>      
>>   Aren't all the three events above duplicating the async response?
>>    
>
> Yes.  Today, we should just generate a MIGRATION_DONE event and let a
> client poll for failure status.

I disagree completely.  It just defeat the reason for this.

MIGRATION_ENDED on destination machine: go ahead, everything is ok.
MIGRATION_FAILED: Uh, oh, something got wrong, we are in the slow path.

With MIGRATION_DONE + polling, we are delaying the "success" case just
to avoid having a new event.  I don't buy it.

>>>    This event is emmited on all source and target monitors.
>>>    - For 0.13: Event don't have a QError.
>>>    - For 0.14: It will gain a QError.
>>>
>>>    About migration becoming an async command.  Really it is independent
>>>    of what events we emit.  If migration becomes async command, only
>>>    difference is for the monitor that emitted the command, rest of
>>>    monitors see nothing.  If we want to be able to see that informantion
>>>    in the other monitors, we need the events anyways.
>>>      
>>   Somewhere else in this discussion someone has said that we should assume
>> that the client talking to the source is the same one which is going to
>> talk to the target, in this case all the communication is done through
>> the source qemu instance.
>>    
>
> MIGRATION_DONE gets deprecated for 0.14.

I still think that we want the 4 events that I described.  My
understanding is that libvirt people also would love to have that 4
events.

Answer here is that: you can do this workaround and this other
workaround and you can get that information.

About semantics of messages, I don't see anytime soon that migration are
going to change from:

Start migration and then end with success or failure.

The only one that we could change/remove is MIGRATION_CANCEL to
MIGRATION_FAILURE(User canceled) it.  But that is it.

Why have to do a polling when none is needed?
If you preffer to change the MIGRATION_ENDED + MIGRATION_FAILURE(error)
to MIGRATION_ENDED(result code), and you have to check the error code, I
can also live with that.  But that is it.

Later, Juan.

  parent reply	other threads:[~2010-06-12 11:14 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 [this message]
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
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=m3zkz0bj06.fsf@trasno.mitica \
    --to=quintela@redhat.com \
    --cc=aliguori@us.ibm.com \
    --cc=anthony@codemonkey.ws \
    --cc=lcapitulino@redhat.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 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.