On Tue 03-10-17 09:16:20, Jens Axboe wrote: > 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. > > Signed-off-by: Jens Axboe <axboe@xxxxxxxxx> Just one nit below. You can add: Reviewed-by: Jan Kara <jack@xxxxxxx> > diff --git a/include/linux/backing-dev-defs.h b/include/linux/backing-dev-defs.h > index 420de5c7c7f9..f0f1df29d6b8 100644 > --- a/include/linux/backing-dev-defs.h > +++ b/include/linux/backing-dev-defs.h > @@ -116,6 +116,7 @@ struct bdi_writeback { > > struct fprop_local_percpu completions; > int dirty_exceeded; > + int start_all_reason; This should be 'enum wb_reason' instead of 'int'. Honza -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR