Xen 
 
Home Products Support Community News
 
   
 

xen-devel

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

To: <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] [PATCH 0/4] HVM Virtual S3
From: "Yu, Ke" <ke.yu@xxxxxxxxx>
Date: Thu, 17 May 2007 00:48:16 +0800
Delivery-date: Wed, 16 May 2007 09:46:55 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
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>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AceX2gAl4h+XcEYPRxOJnM8JUiP1/Q==
Thread-topic: [PATCH 0/4] HVM Virtual S3
[PATCH 0/4] HVM Virtual S3

These set of patches are our prototype for HVM virtual ACPI S3 support:
 - patch 1/4: Xen interface for HVM S3
 - patch 2/4: QEMU interface for HVM S3
 - patch 3/4: rombios interface for HVM S3
 - patch 4/4: xend interface for HVM S3

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 VMXASSIST BASE, which
will start rombios post code
- rombios post code will start s3 resume by jumping to wakeup vector set
by guest OS.

How to use it:
- apply this patch to changeset 15050:05c128b0188a
- create and boot HVM domain 
- In HVM guest, enter S3 state
  * for Linux, "echo mem >/sys/power/state"
  * for Windows, shutdown windows by Standby
- to resume HVM domain, "xm resume <domid>"

Note: FC6 guest can successfully S3 suspend/resume in both text mode and
X window. However, Windows guest can not suspend, because the windows
driver for QEMU VGA and monitor has no power management support, and
windows refuse to enter S3 sleep state. 

Kevin/Ke

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