Commit 5b0f437d authored by Bart Van Assche's avatar Bart Van Assche Committed by Ingo Molnar

workqueues: Improve schedule_work() documentation

Two important aspects of the schedule_work() function are not
yet documented:

 - that it is allowed to pass a struct work_struct * to this
   function that is already on the kernel-global workqueue;

 - the meaning of its return value.

The patch below documents both aspects.
Signed-off-by: default avatarBart Van Assche <bart.vanassche@gmail.com>
Cc: "Greg Kroah-Hartman" <gregkh@suse.de>
Cc: Andrew Morton <akpm@linux-foundation.org>
LKML-Reference: <200907301900.54202.bart.vanassche@gmail.com>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent a33a052f
...@@ -600,7 +600,12 @@ static struct workqueue_struct *keventd_wq __read_mostly; ...@@ -600,7 +600,12 @@ static struct workqueue_struct *keventd_wq __read_mostly;
* schedule_work - put work task in global workqueue * schedule_work - put work task in global workqueue
* @work: job to be done * @work: job to be done
* *
* This puts a job in the kernel-global workqueue. * Returns zero if @work was already on the kernel-global workqueue and
* non-zero otherwise.
*
* This puts a job in the kernel-global workqueue if it was not already
* queued and leaves it in the same position on the kernel-global
* workqueue otherwise.
*/ */
int schedule_work(struct work_struct *work) int schedule_work(struct work_struct *work)
{ {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment