]> git.baikalelectronics.ru Git - kernel.git/commit
bcache: Move journal work to new flush wq
authorKai Krakow <kai@kaishome.de>
Wed, 10 Feb 2021 05:07:27 +0000 (13:07 +0800)
committerJens Axboe <axboe@kernel.dk>
Wed, 10 Feb 2021 15:06:00 +0000 (08:06 -0700)
commitcf6c1f371e6e041beae9dfce172cfddb6e5911aa
tree8c7f39e4bb4d89486a814c48002d4cd0eb843069
parentbe7f89effa5c2e972b434d202896c5524f359ae7
bcache: Move journal work to new flush wq

This is potentially long running and not latency sensitive, let's get
it out of the way of other latency sensitive events.

As observed in the previous commit, the `system_wq` comes easily
congested by bcache, and this fixes a few more stalls I was observing
every once in a while.

Let's not make this `WQ_MEM_RECLAIM` as it showed to reduce performance
of boot and file system operations in my tests. Also, without
`WQ_MEM_RECLAIM`, I no longer see desktop stalls. This matches the
previous behavior as `system_wq` also does no memory reclaim:

> // workqueue.c:
> system_wq = alloc_workqueue("events", 0, 0);

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>
drivers/md/bcache/bcache.h
drivers/md/bcache/journal.c
drivers/md/bcache/super.c