]> git.baikalelectronics.ru Git - kernel.git/commit
writeback: eliminate work item allocation in bd_start_writeback()
authorJens Axboe <axboe@kernel.dk>
Sat, 30 Sep 2017 08:09:06 +0000 (02:09 -0600)
committerJens Axboe <axboe@kernel.dk>
Wed, 4 Oct 2017 17:24:12 +0000 (11:24 -0600)
commitf86c24f31b8bf89b5f9e1bd2b8fcfe0eaed6306c
tree9aa95947a827cf53f7d48cf187b99fa4f03411d2
parentc2f84c58f47072300304a7664c5af1ef528abb8b
writeback: eliminate work item allocation in bd_start_writeback()

Handle start-all writeback like we do periodic or kupdate
style writeback - by marking the bdi_writeback as needing a full
flush, and simply waking the thread. This eliminates the need to
allocate and queue a specific work item just for this purpose.

After this change, we truly only ever have one of them running at
any point in time. We mark the need to start all flushes, and the
writeback thread will clear it once it has processed the request.

Reviewed-by: Jan Kara <jack@suse.cz>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
fs/fs-writeback.c
include/linux/backing-dev-defs.h
include/linux/writeback.h
include/trace/events/writeback.h