> > needed.  What I am really desiring to know is if there are any devices
> > that depend on the apm::send_event(APM_NORMAL_RESUME) happening while
> > interrupts are disabled.
> 
> Good spotting...  If any devices depend on what you describe, I would
> argue that their drivers should handle that not the core apm code...

The drivers can't handle it at the moment. I've been talking to many people
about this all hitting this sort of driver problem.

I think the fix is to keep two classes of power management objects and do
the following

        Call each 'nonirq' suspend function
        (aborting if need be)
        cli()
        Call each irq blocked suspend function
        suspend


resume:
        call each irq blocked resume function
        sti();
        call each nonirq resume

That is an easy change set to make and solves a lot of grief

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to