diff options
| author | David S. Miller <davem@davemloft.net> | 2017-11-10 10:00:18 +0900 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2017-11-10 10:00:18 +0900 |
| commit | 4dc6758d7824a6d25717ccceefc488cafdb07210 (patch) | |
| tree | 992e5d5996910af35a5c12fe94da14d0bb167452 /kernel/workqueue_internal.h | |
| parent | 19aeeb9f46cb4b9474ebeb50cb01b9a1adba73b8 (diff) | |
| parent | 3fefc31843cfe2b5f072efe11ed9ccaf6a7a5092 (diff) | |
| download | cachepc-linux-4dc6758d7824a6d25717ccceefc488cafdb07210.tar.gz cachepc-linux-4dc6758d7824a6d25717ccceefc488cafdb07210.zip | |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Simple cases of overlapping changes in the packet scheduler.
Must easier to resolve this time.
Which probably means that I screwed it up somehow.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'kernel/workqueue_internal.h')
| -rw-r--r-- | kernel/workqueue_internal.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/kernel/workqueue_internal.h b/kernel/workqueue_internal.h index efdd72e15794..d390d1be3748 100644 --- a/kernel/workqueue_internal.h +++ b/kernel/workqueue_internal.h @@ -10,6 +10,7 @@ #include <linux/workqueue.h> #include <linux/kthread.h> +#include <linux/preempt.h> struct worker_pool; @@ -60,7 +61,7 @@ struct worker { */ static inline struct worker *current_wq_worker(void) { - if (current->flags & PF_WQ_WORKER) + if (in_task() && (current->flags & PF_WQ_WORKER)) return kthread_data(current); return NULL; } |
