summaryrefslogtreecommitdiff
path: root/drivers/md
diff options
context:
space:
mode:
authorKai Krakow <kai@kaishome.de>2021-02-10 13:07:26 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-03-04 10:26:42 +0100
commita339f0998eb1b06606a794ff37957b1d1d13311d (patch)
tree29fcd3bc8aa2353ddaf1817d287d0909aba38d94 /drivers/md
parentde5510b9825cd74b07412591a15bba1bd422c6aa (diff)
bcache: Give btree_io_wq correct semantics again
commit d797bd9897e3559eb48d68368550d637d32e468c upstream. Before killing `btree_io_wq`, the queue was allocated using `create_singlethread_workqueue()` which has `WQ_MEM_RECLAIM`. After killing it, it no longer had this property but `system_wq` is not single threaded. Let's combine both worlds and make it multi threaded but able to reclaim memory. Cc: Coly Li <colyli@suse.de> Cc: stable@vger.kernel.org # 5.4+ Signed-off-by: Kai Krakow <kai@kaishome.de> Signed-off-by: Coly Li <colyli@suse.de> Signed-off-by: Jens Axboe <axboe@kernel.dk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/md')
-rw-r--r--drivers/md/bcache/btree.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/md/bcache/btree.c b/drivers/md/bcache/btree.c
index 1108460880fd..5a33910aea78 100644
--- a/drivers/md/bcache/btree.c
+++ b/drivers/md/bcache/btree.c
@@ -2670,7 +2670,7 @@ void bch_btree_exit(void)
int __init bch_btree_init(void)
{
- btree_io_wq = create_singlethread_workqueue("bch_btree_io");
+ btree_io_wq = alloc_workqueue("bch_btree_io", WQ_MEM_RECLAIM, 0);
if (!btree_io_wq)
return -ENOMEM;