On Mon, 13 Aug 2007, Rafael J. Wysocki wrote:

> On Sunday, 12 August 2007 10:11, Stefan Richter wrote:
> > In which situations is create_freezeable_workqueue() to be preferred
> > over create_singlethread_workqueue()?
> > 
> > Is a freezable worqueue preferable whenever the worker thread /can/ be
> > frozen, or is it only to be used if the thread /must/ be frozen during
> > suspend?
> 
> The latter, IMO.
> 
> Generally, if you want it to be frozen.

A good example of a reason for making a workqueue freezable is that the 
workqueue contains entries which would cause a suspended device to be 
resumed.  Obviously you don't want such things to happen while the 
system is going to sleep.  A little less obviously, there might also be 
problems if such a routine ran while the system was waking up.

Another reason might be that the workqueue contains entries which would
try to register or unregister a device.  Such actions aren't a good
idea at times when the PM core is iterating through a list of all
devices in order to suspend or resume them.  And in the future such
actions may block, effectively freezing the workqueue anyway -- which
could be troublesome if you don't want the workqueue to be frozen!

Alan Stern

-
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