WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

RE: [Xen-devel] [PATCH 0/4] HVM Virtual S3

To: "Ke, Liping" <liping.ke@xxxxxxxxx>, "Ian Pratt" <Ian.Pratt@xxxxxxxxxxxxx>, <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: RE: [Xen-devel] [PATCH 0/4] HVM Virtual S3
From: "Yu, Ke" <ke.yu@xxxxxxxxx>
Date: Thu, 8 May 2008 23:10:09 +0800
Cc: "Tian, Kevin" <kevin.tian@xxxxxxxxx>, "Jiang, Yunhong" <yunhong.jiang@xxxxxxxxx>
Delivery-date: Thu, 08 May 2008 08:12:12 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <391BF3CDD2DC0848B40ACB72FA97AD590352E41A@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <391BF3CDD2DC0848B40ACB72FA97AD590352E058@xxxxxxxxxxxxxxxxxxxxxxxxxxxx> <DD74FBB8EE28D441903D56487861CD9D2DFDA9B3@xxxxxxxxxxxxxxxxxxxxxx> <391BF3CDD2DC0848B40ACB72FA97AD590352E41A@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: Aciwyj3GC5kFZyVcS9eJk6QW6cxy6gAO58GAAASSNxAAAQ9pEA==
Thread-topic: [Xen-devel] [PATCH 0/4] HVM Virtual S3
Ke, Liping wrote:
> Ian Pratt wrote:
>>> The main idea is:
>>> - emulate ACPI PM1A control resiger in QEMU to capture guest S3
>>> request 
>>> - when QEMU capture guest S3 request, it call hypercall to trap to
>>> Xen 
>>> - Xen will suspend HVM by reseting all vcpus
>>> - on resume, "xm resume" will call hypercall to trap to Xen
>>> - Xen will resume HVM by setting HVM vcpu EIP to 0xfff0, cs base to
>>>   0xf0000, and also set other related registers/msr to the correct
>>>   value/attributes in realmode environment which will start from
>>>   rombios post Entry code in realmode directly when resuming.
>>> - rombios post code will start s3 resume by jumping to wakeup vector
>>>   set by guest OS.
>> 
>> Have you checked save/restore works when the guest is in S3 state?
>> This is essential for some of the server (as opposed to client) use
>> cases for guest S3.
> Yes, save/restore should work when guest is in S3 state. When
> S3_sleep, domain is still alive, just only that VCPU is blocked.
> We'll do further test on it these days.

We did not try yet. Since our original purose is for PCI passthrouhg
device. And surely we will test it. Thanks for reminder.

>> 
>> [One thing to watch out for is that if the guest is in S3 it should
>> be possible to skip the usual synchronization with PV drivers as they
>> will already be shutdown.]
> Yes, when guest is in S3, PV drivers should not deal with any
> synchronization Jobs. When resume back, it returns back to work again.

Oh, right, we will look more on this. Basic test shows vritual S3 works
fine with Linux PV drivers.

>> 
>> 
>> Further, do we actually need the s3 resume hypercall? Couldn't we
>> just put the VCPUs and xen-emulated devices into the right state for
>> resume at the end of s3 sleep and just leave the domain paused (i.e.
>> unscheduled)?
> As I can understand, when S3, HVM will perform like native-machine S3,
> all execution context are in memory When resume back, jump to the
> CS/EIP, those vcpus resume execution normally.
> Ke& Kevin, any coments here?

That is good idea. Basically we will combine suspend/resume into one
logic. And use "xm unpause" for resume. We will look into more.

> 
>> 
>> 
>> Also, do you have plans to implement an "xm send-power-event" type
>> thing that enables us to inform the guest of actions such as lid
>> switch open/close, power cable in/out, power button pressed etc ?
> Since now host S3 and HVM S3 is not integrated yet, I am not sure
> whether those lid/cable/power button are appropriate to be involved
> with Guest notification. Especially if we have multiple guest. Yet I
> think we must consider it carefully as part of VMM PM solution :)
> If both host and HVM is S3 done, when lid open,
> Xen is back, host is back and then HVM is back. It is a possible
> senario? 

We are also thinking about this. This is basically qemu work, and we see
qemu upstream already has some logic like GPE event. We will analysis
the gap and propose task plan for next step. 

> 
>> 
>> Many Thanks,
>> Ian

Thanks for the valuable comments :)

Best Regards
Ke

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