mm/page_alloc.c: clean code by merging two functions
authorMateusz Nosek <mateusznosek0@gmail.com>
Tue, 13 Oct 2020 23:55:51 +0000 (16:55 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 14 Oct 2020 01:38:33 +0000 (18:38 -0700)
finalise_ac() is just 'epilogue' for 'prepare_alloc_pages'.  Therefore
there is no need to keep them both so 'finalise_ac' content can be merged
into prepare_alloc_pages() code.  It would make __alloc_pages_nodemask()
cleaner when it comes to readability.

Signed-off-by: Mateusz Nosek <mateusznosek0@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Reviewed-by: Andrew Morton <akpm@linux-foundation.org>
Cc: Mel Gorman <mgorman@techsingularity.net>
Cc: Mike Rapoport <rppt@kernel.org>
Link: https://lkml.kernel.org/r/20200916110118.6537-1-mateusznosek0@gmail.com
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
mm/page_alloc.c

index 0907884e6913c544e1d1cb97462a0ccf7669ce68..12bac250c8e4ef56a7ea8b9dbae72ffd67c28def 100644 (file)
@@ -4838,12 +4838,6 @@ static inline bool prepare_alloc_pages(gfp_t gfp_mask, unsigned int order,
 
        *alloc_flags = current_alloc_flags(gfp_mask, *alloc_flags);
 
-       return true;
-}
-
-/* Determine whether to spread dirty pages and what the first usable zone */
-static inline void finalise_ac(gfp_t gfp_mask, struct alloc_context *ac)
-{
        /* Dirty zone balancing only done in the fast path */
        ac->spread_dirty_pages = (gfp_mask & __GFP_WRITE);
 
@@ -4854,6 +4848,8 @@ static inline void finalise_ac(gfp_t gfp_mask, struct alloc_context *ac)
         */
        ac->preferred_zoneref = first_zones_zonelist(ac->zonelist,
                                        ac->highest_zoneidx, ac->nodemask);
+
+       return true;
 }
 
 /*
@@ -4882,8 +4878,6 @@ __alloc_pages_nodemask(gfp_t gfp_mask, unsigned int order, int preferred_nid,
        if (!prepare_alloc_pages(gfp_mask, order, preferred_nid, nodemask, &ac, &alloc_mask, &alloc_flags))
                return NULL;
 
-       finalise_ac(gfp_mask, &ac);
-
        /*
         * Forbid the first pass from falling back to types that fragment
         * memory until all local zones are considered.