[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] xc_save: ignore the first suspend event channel notification


  • To: Brendan Cully <brendan@xxxxxxxxx>
  • From: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
  • Date: Tue, 09 Sep 2008 08:18:21 +0100
  • Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
  • Delivery-date: Tue, 09 Sep 2008 00:18:21 -0700
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>
  • Thread-index: AckSTD0te6tnDH4/Ed2RyQAWy6hiGQ==
  • Thread-topic: [Xen-devel] [PATCH] xc_save: ignore the first suspend event channel notification

On 8/9/08 23:36, "Brendan Cully" <brendan@xxxxxxxxx> wrote:

>> I checked in your patch as is. One question: do we need the
>> wait-one-second-for-shutdown loop in suspend_and_state() at all? My reading
>> of (*suspend)() is that it should be sure the domain is suspended when it
>> returns, and hence should suspend_and_state() not simply raise an error if
>> it finds that domaininfo does not indicate the guest is shut down? The retry
>> loop may simply be allowing bugs of the sort you've just fixed to linger.
> 
> I agree that that retry loop is a bit dubious. It appears to come from
> changeset 2147:949f21fc9e77 (Fix migrate to cope with domains that are
> paused.) This was long before device migration appeared in xend
> (changeset 9657:1fe63743a147), when the only thing that mattered was
> that the domain be suspended before the final round.
> 
> Removing the poll in suspend_and_state undoes 2147. If we want to keep
> that logic, we could probably just hoist it up into *suspend.

If the domain is paused then we're boned, since the evtchn will never fire /
we won't get shutdown acknowledgement from xend. The subsequent checks in
suspend_and_state() are too late. So, if you revert 2147 does everything
still work okay? If so we should do that.

 -- Keir



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.