[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] RE: [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
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |