• Kai Krakow's avatar
    bcache: Move journal work to new flush wq · afe78ab4
    Kai Krakow authored
    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: default avatarKai Krakow <kai@kaishome.de>
    Signed-off-by: default avatarColy Li <colyli@suse.de>
    Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
    afe78ab4
journal.c 23.1 KB