From 0068768b2a98e4bb9cc15aa73a11e908aed9ffc3 Mon Sep 17 00:00:00 2001 From: Jens Axboe Date: Wed, 27 Sep 2017 06:08:57 -0600 Subject: [PATCH] buffer: eliminate the need to call free_more_memory() in __getblk_slow() Since the previous commit removed any case where grow_buffers() would return failure due to memory allocations, we can safely remove the case where we have to call free_more_memory() in this function. Since this is also the last user of free_more_memory(), kill it off completely. Reviewed-by: Nikolay Borisov Reviewed-by: Jan Kara Signed-off-by: Jens Axboe --- fs/buffer.c | 23 ----------------------- 1 file changed, 23 deletions(-) diff --git a/fs/buffer.c b/fs/buffer.c index 3d59afd5c50b..fee800936bfb 100755 --- a/fs/buffer.c +++ b/fs/buffer.c @@ -254,27 +254,6 @@ out: return ret; } -/* - * Kick the writeback threads then try to free up some ZONE_NORMAL memory. - */ -static void free_more_memory(void) -{ - struct zoneref *z; - int nid; - - wakeup_flusher_threads(1024, WB_REASON_FREE_MORE_MEM); - yield(); - - for_each_online_node(nid) { - - z = first_zones_zonelist(node_zonelist(nid, GFP_NOFS), - gfp_zone(GFP_NOFS), NULL); - if (z->zone) - try_to_free_pages(node_zonelist(nid, GFP_NOFS), 0, - GFP_NOFS, NULL); - } -} - /* * I/O completion handler for block_read_full_page() - pages * which come unlocked at the end of I/O. @@ -1096,8 +1075,6 @@ __getblk_slow(struct block_device *bdev, sector_t block, ret = grow_buffers(bdev, block, size, gfp); if (ret < 0) return NULL; - if (ret == 0) - free_more_memory(); } }