get_work_pwq() is possible to return NULL, add a check point for that in
the context inside pwq_activate_delayed_work().

CC: Tejun Heo <t...@kernel.org>
Signed-off-by: Michael Wang <wang...@linux.vnet.ibm.com>
---
 kernel/workqueue.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/kernel/workqueue.c b/kernel/workqueue.c
index ee8e29a..ea2ec38 100644
--- a/kernel/workqueue.c
+++ b/kernel/workqueue.c
@@ -1072,6 +1072,7 @@ static void put_pwq_unlocked(struct pool_workqueue *pwq)
 static void pwq_activate_delayed_work(struct work_struct *work)
 {
        struct pool_workqueue *pwq = get_work_pwq(work);
+       BUG_ON(!pwq);
 
        trace_workqueue_activate_work(work);
        move_linked_works(work, &pwq->pool->worklist, NULL);
-- 
1.7.4.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to