• Vlastimil Babka's avatar
    mm: reduce try_to_compact_pages parameters · 1a6d53a1
    Vlastimil Babka authored
    Expand the usage of the struct alloc_context introduced in the previous
    patch also for calling try_to_compact_pages(), to reduce the number of its
    parameters.  Since the function is in different compilation unit, we need
    to move alloc_context definition in the shared mm/internal.h header.
    
    With this change we get simpler code and small savings of code size and stack
    usage:
    
    add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-27 (-27)
    function                                     old     new   delta
    __alloc_pages_direct_compact                 283     256     -27
    add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-13 (-13)
    function                                     old     new   delta
    try_to_compact_pages                         582     569     -13
    
    Stack usage of __alloc_pages_direct_compact goes from 24 to none (per
    scripts/checkstack.pl).
    Signed-off-by: default avatarVlastimil Babka <vbabka@suse.cz>
    Acked-by: default avatarMichal Hocko <mhocko@suse.cz>
    Cc: Mel Gorman <mgorman@suse.de>
    Cc: Zhang Yanfei <zhangyanfei@cn.fujitsu.com>
    Cc: Minchan Kim <minchan@kernel.org>
    Cc: David Rientjes <rientjes@google.com>
    Cc: Rik van Riel <riel@redhat.com>
    Cc: "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com>
    Cc: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>
    Cc: Johannes Weiner <hannes@cmpxchg.org>
    Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    1a6d53a1
internal.h 13.5 KB