Cui, Dexuan
2008-Aug-29 14:07 UTC
[Xen-devel] [PATCH] vtd: fix Dom0 S3 when VT-d is enabled.
Now if VT-d is enabled, when Dom0 does S3, Xen doesn''t suspend/resume the IOMMU states. The patch adds the missing invocations of iommu_suspend()/iommu_resume() and makes some nesessary fixes: 1) In iommu_set_root_entry(), we should not re-allocate the root-entry when Xen returns from S3; 2) Define the array iommu_state correctly (u8 -> u32); 3) Only save/restore the necessary IOMMU registers. The patch was tested on Weybridge. NOTE: if we have some HVM guests which have assigned devices, and we want to do Dom S3, we MUST do HVM S3 for each HVM guest first. Namely, the steps are: 1) Use HVM S3 in guest to suspend the guest (for example, in Linux HVM guest, this is "echo mem > /sys/power/state"); 2) Use Dom0 S3 to suspend Dom0: "echo mem > /sys/power/state"; 3) At some point, Dom0 resumes from S3 (for example, by pressing the power button or using the acpi alarm); 4) Use "xm trigger HVM_DOM_ID s3resume" to resume every HVM guest which were suspended previously. Signed-off-by: Dexuan Cui <dexuan.cui@intel.com> _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Maybe Matching Threads
- [PATCH] libxl: implement trigger s3resume
- VMX status report. Xen: #16481 & Dom0: #323
- [PATCH] vtd: Define a struct IO_xAPIC_route_entry to accommodate both ioapic and iosapic
- VTD-XML 2.3 released
- [PATCH] vtd: fix compilation error on ia64 for 19185:1eb6afcad849.