[PATCH] Add kthread_stop_sem()
Enhance the kthread API by adding kthread_stop_sem, for use in stopping threads that spend their idle time waiting on a semaphore. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
committed by
Linus Torvalds
parent
83521d3eb8
commit
61e1a9ea4b
@@ -69,6 +69,18 @@ void kthread_bind(struct task_struct *k, unsigned int cpu);
|
||||
* was never called. */
|
||||
int kthread_stop(struct task_struct *k);
|
||||
|
||||
/**
|
||||
* kthread_stop_sem: stop a thread created by kthread_create().
|
||||
* @k: thread created by kthread_create().
|
||||
* @s: semaphore that @k waits on while idle.
|
||||
*
|
||||
* Does essentially the same thing as kthread_stop() above, but wakes
|
||||
* @k by calling up(@s).
|
||||
*
|
||||
* Returns the result of threadfn(), or -EINTR if wake_up_process()
|
||||
* was never called. */
|
||||
int kthread_stop_sem(struct task_struct *k, struct semaphore *s);
|
||||
|
||||
/**
|
||||
* kthread_should_stop: should this kthread return now?
|
||||
*
|
||||
|
Reference in New Issue
Block a user