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

Re: [Xen-devel] [PATCH] fix save or snapshot at kernel loading time with HVM vm


  • To: xen-devel@xxxxxxxxxxxxxxxxxxx
  • From: "James (song wei)" <jsong@xxxxxxxxxx>
  • Date: Tue, 18 May 2010 23:44:18 -0700 (PDT)
  • Delivery-date: Tue, 18 May 2010 23:45:13 -0700
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>



Keir Fraser-3 wrote:
> 
> On 17/05/2010 06:57, "James (song wei)" <jsong@xxxxxxxxxx> wrote:
> 
>> 
>> If doing save or snapshot at the time of kernel loading of a HVN vm,
>> event_channel haven't been initialized, so that make this saving with
>> xenstore. a string named "suspend" not "suspended"  will be sent to xend
>> from checkpoint thread.
>>  But in the shutdown function with parameter "suspend" think this request
>> should shutdown this hvm guest, but obviously, this is not the
>> expectation
>> of save or  snapshot.
> 
>>>I don't really understand this patch comment, and the solution just looks
>>>like a poor hack which noone in future will be able to fathom.
> 
> Keir,
>     Sorry for not descripting this issue clearly.  When I do save at the
> beginning of HVM guest booting(first stage - loading kernel), I found
> guest os destoryed after saving completely. So I see the code and get this
> flow:
> xc_save()( here, call this function, when loading the kernel at the time
> of guest booting. Event channel haven't been initialized,so that go to 
> compat_suspend() path in suspend()(save.c) -->> then, notify  the thread
> named saveInputHandler in xend with a string "suspend". so  that
> dominfo.shutdown is invoked.
> So, VM shutdown after do saving operator.
> 
> -James (Song Wei)
>> 
>> Signed-off-by:James (Song Wei) <jsong@xxxxxxxxxx>
>> diff -r baccadfd9418 tools/python/xen/xend/XendDomainInfo.py
>> --- a/tools/python/xen/xend/XendDomainInfo.py   Fri May 14 08:05:05 2010
>> +0100
>> +++ b/tools/python/xen/xend/XendDomainInfo.py   Mon May 17 13:56:15 2010
>> +0800
>> @@ -530,7 +530,7 @@
>>          self.storeDom("control/shutdown", reason)
>>  
>>          # HVM domain shuts itself down only if it has PV drivers
>> -        if self.info.is_hvm():
>> +        if self.info.is_hvm() and reason != 'suspend':
>>              hvm_pvdrv = xc.hvm_get_param(self.domid,
>> HVM_PARAM_CALLBACK_IRQ)
>>              hvm_s_state = xc.hvm_get_param(self.domid,
>> HVM_PARAM_ACPI_S_STATE)
>>              if not hvm_pvdrv or hvm_s_state != 0:
> 
> 
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel
> 
> 

-- 
View this message in context: 
http://old.nabble.com/-PATCH--fix-save-or-snapshot-at-kernel-loading-time-with-HVM-vm-tp28579732p28604661.html
Sent from the Xen - Dev mailing list archive at Nabble.com.


_______________________________________________
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®.