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

RE: [Xen-devel] [PATCH 1 of 3] fix S3 suspend error



>From: Keir Fraser
>Sent: Monday, February 23, 2009 8:39 PM
>
>On 23/02/2009 07:27, "Guanqun Lu" <guanqun.lu@xxxxxxxxx> wrote:
>
>> fix S3 suspend error.
>> 
>> invoke ioapic_pm_state_alloc() eariler,
>> thus avoiding check_lock() BUG_ON() in spin_lock().
>> 
>> Signed-off-by: Guanqun Lu <guanqun.lu@xxxxxxxxx>
>
>This one I think is a good idea anyway. The other two -- I 
>wonder why we do
>device suspend/resume with IRQs disabled? As far as I can tell 
>Linux does
>not do that. So would it be cleaner to move the device 
>suspend/resume hooks
>outside the IRQs-disabled region?
>

I can't ensure my understanding exactly matching latest Linux
S3 implementation which evolves quickly. But generally device
drivers typically are allowed with two callbacks, one being invoked
with irq enabled and the other with irq disabled, since some actions
have such requirement. On the other side, system device class,
such as ioapic, lapic, etc. are saved with irq disabled after other
external devices.

Xen owns a few devices with most as system class, so for 
simplicity interrupt is disabled from start. It's not worthy of touching
this flow for this simple spinlock issue, imo. :-)

Thanks,
Kevin
_______________________________________________
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®.