projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
a67da70
)
workqueues: queue_work() can use queue_work_on()
author
Oleg Nesterov
<
[email protected]
>
Fri, 25 Jul 2008 08:47:53 +0000
(
01:47
-0700)
committer
Linus Torvalds
<
[email protected]
>
Fri, 25 Jul 2008 17:53:40 +0000
(10:53 -0700)
queue_work() can use queue_work_on() to avoid the code duplication.
Signed-off-by: Oleg Nesterov <
[email protected]
>
Signed-off-by: Andrew Morton <
[email protected]
>
Signed-off-by: Linus Torvalds <
[email protected]
>
kernel/workqueue.c
patch
|
blob
|
history
diff --git
a/kernel/workqueue.c
b/kernel/workqueue.c
index 4fcb75b98443f6d2b3680d1e3bd200fc232f39b5..fe08a8512ddddd5e8081ec33718cbc91584d8c79 100644
(file)
--- a/
kernel/workqueue.c
+++ b/
kernel/workqueue.c
@@
-159,14
+159,11
@@
static void __queue_work(struct cpu_workqueue_struct *cwq,
*/
int queue_work(struct workqueue_struct *wq, struct work_struct *work)
{
- int ret = 0;
+ int ret;
+
+ ret = queue_work_on(get_cpu(), wq, work);
+ put_cpu();
- if (!test_and_set_bit(WORK_STRUCT_PENDING, work_data_bits(work))) {
- BUG_ON(!list_empty(&work->entry));
- __queue_work(wq_per_cpu(wq, get_cpu()), work);
- put_cpu();
- ret = 1;
- }
return ret;
}
EXPORT_SYMBOL_GPL(queue_work);