Re: [PATCH 1/6] buffer: cleanup free_more_memory() flusher wakeup

From: Jan Kara
Date: Wed Sep 20 2017 - 10:17:35 EST


On Tue 19-09-17 13:53:02, Jens Axboe wrote:
> This whole function is... interesting. Change the wakeup call
> to the flusher threads to pass in nr_pages == 0, instead of
> some random number of pages. This matches more closely what
> similar cases do for memory shortage/reclaim.
>
> Signed-off-by: Jens Axboe <axboe@xxxxxxxxx>

Ok, probably makes sense. You can add:

Reviewed-by: Jan Kara <jack@xxxxxxx>

BTW, after this nobody seems to use the number of pages for
wakeup_flusher_threads() so can you just delete the argument for the
function? After all system-wide wakeup is useful only for system wide
sync(2) or memory reclaim so number of pages isn't very useful...

Honza

> ---
> fs/buffer.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/buffer.c b/fs/buffer.c
> index 170df856bdb9..9471a445e370 100644
> --- a/fs/buffer.c
> +++ b/fs/buffer.c
> @@ -260,7 +260,7 @@ static void free_more_memory(void)
> struct zoneref *z;
> int nid;
>
> - wakeup_flusher_threads(1024, WB_REASON_FREE_MORE_MEM);
> + wakeup_flusher_threads(0, WB_REASON_FREE_MORE_MEM);
> yield();
>
> for_each_online_node(nid) {
> --
> 2.7.4
>
--
Jan Kara <jack@xxxxxxxx>
SUSE Labs, CR