summaryrefslogtreecommitdiffstats
path: root/drivers/block/loop.h
diff options
context:
space:
mode:
authorMing Lei <ming.lei@canonical.com>2015-05-05 13:49:54 +0200
committerJens Axboe <axboe@fb.com>2015-05-05 21:46:53 +0200
commitf4aa4c7bbac6c4afdd4adccf90898c1a3685396d (patch)
tree9e22cc47f6a22f8536ae40ec76aff6611f0c8414 /drivers/block/loop.h
parentnbd: stop using req->cmd (diff)
downloadlinux-f4aa4c7bbac6c4afdd4adccf90898c1a3685396d.tar.xz
linux-f4aa4c7bbac6c4afdd4adccf90898c1a3685396d.zip
block: loop: convert to per-device workqueue
Documentation/workqueue.txt: If there is dependency among multiple work items used during memory reclaim, they should be queued to separate wq each with WQ_MEM_RECLAIM. Loop devices can be stacked, so we have to convert to per-device workqueue. One example is Fedora live CD. Fixes: b5dd2f6047ca108001328aac0e8588edd15f1778 Cc: stable@vger.kernel.org (v4.0) Cc: Justin M. Forbes <jforbes@fedoraproject.org> Signed-off-by: Ming Lei <ming.lei@canonical.com> Acked-by: Tejun Heo <tj@kernel.org> Signed-off-by: Jens Axboe <axboe@fb.com>
Diffstat (limited to 'drivers/block/loop.h')
-rw-r--r--drivers/block/loop.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/block/loop.h b/drivers/block/loop.h
index 301c27f8323f..49564edf5581 100644
--- a/drivers/block/loop.h
+++ b/drivers/block/loop.h
@@ -54,6 +54,7 @@ struct loop_device {
gfp_t old_gfp_mask;
spinlock_t lo_lock;
+ struct workqueue_struct *wq;
struct list_head write_cmd_head;
struct work_struct write_work;
bool write_started;