Thread (12 messages) 12 messages, 6 authors, 2005-08-08

Re: [PATCH] Workqueue freezer support.

From: Nigel Cunningham <hidden>
Date: 2005-08-08 21:16:21
Also in: lkml

Ok. Now that I've actually done some work toward getting it to work with
Suspend2, I'll give a more cogent response to Christoph's approach.

I believe it can work, but the algorithm in freeze() is a bit of a
concern.

Checking whether the todo list is empty is fine while we're the only
user, but when other functionality is using this, it will be unreliable.
We'll either need a quick way to check what todo work is pending for a
task (traverse list would be racy). We can't say "We know we signalled
them all already" because more might have forked.

One possibility might be to leverage the existing counting - when
num_signalled = num_frozen, we can signal a new batch with impunity. But
this assumes everything signalled properly enters the fridge (which
might not always be guaranteed).

Perhaps it's best to keep PF_FREEZING? Perhaps there's another
possibility.

Regards,

Nigel
-- 
Evolution.
Enumerate the requirements.
Consider the interdependencies.
Calculate the probabilities.

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help