Re: Async resume patch (was: Re: [GIT PULL] PM updates for 2.6.33)

Alan Stern
2009-12-09T16:22:53Z

On Wed, 9 Dec 2009, Mark Brown wrote:

> On Wed, Dec 09, 2009 at 10:49:56AM -0500, Alan Stern wrote:
> > On Wed, 9 Dec 2009, Mark Brown wrote:
>
> > > There's some potential for this in embedded audio - it wants to bring
> > > down the entire embedded audio subsystem at once before the individual
> > > devices (and their parents) get suspended since bringing them down out
>
> > For something like bringing down the entire embedded audio subsystem,
> > which isn't directly tied to a single device, you would probably be
> > better off doing it when the PM core broadcasts a suspend notification
> > (see register_pm_notifier() in include/linux/suspend.h). This occurs
> > before any devices are suspended, so synchronization isn't an issue.
>
> I'm not convinced that helps with the fact that the suspend may take a
> long time - ideally we'd be able to start the suspend process off but
> let other things carry on while it completes without having to worry
> about something we're relying on getting suspended underneath us.

The suspend procedure is oriented around device structures, and what
you're talking about isn't. It's something separate which has to be
finished before _any_ of the audio devices are suspended.

How long does it take to bring down the entire embedded audio
subsystem? And how critical is the timing for typical systems?

Alan Stern