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

Re: [Xen-devel] [PATCH][PV_OPS_DOM0]Fix the host S3 resume hang



Instead of doing the check twice in the suspend and resume handlers, why
don't you just suppress registration of the sysdev(s) in ioapic_init_sysfs()?

Jan

>>> "Wei, Gang" <gang.wei@xxxxxxxxx> 03.09.09 11:40 >>>
Fix the host S3 resume hang

Current pv-ops dom0 is doing ioapic suspend/resume while doing host S3. The
ioapic resume will cause a guest_write_ioapic error and hang the S3 resume
process. It is actually not necessary for dom0 to do ioapic suspend/resume
because hypervisor already cover this.

Signed-off-by: Wei Gang <gang.wei@xxxxxxxxx>

diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c
index 18d957e..c2756d2 100644
--- a/arch/x86/kernel/apic/io_apic.c
+++ b/arch/x86/kernel/apic/io_apic.c
@@ -3119,6 +3119,9 @@ static int ioapic_suspend(struct sys_device *dev, 
pm_message_t state)
        struct sysfs_ioapic_data *data;
        int i;
 
+       if (xen_initial_domain())
+               return 0;
+
        data = container_of(dev, struct sysfs_ioapic_data, dev);
        entry = data->entry;
        for (i = 0; i < nr_ioapic_registers[dev->id]; i ++, entry ++ )
@@ -3135,6 +3138,9 @@ static int ioapic_resume(struct sys_device *dev)
        union IO_APIC_reg_00 reg_00;
        int i;
 
+       if (xen_initial_domain())
+               return 0;
+
        data = container_of(dev, struct sysfs_ioapic_data, dev);
        entry = data->entry;
 
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx 
http://lists.xensource.com/xen-devel


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