• Denys Vlasenko's avatar
    mmap.c: deinline a few functions · cb8f488c
    Denys Vlasenko authored
    __vma_link_file and expand_downwards functions are not small, yeat they
    are marked inline.  They probably had one callsite sometime in the past,
    but now they have more.  In order to prevent similar thing, I also
    deinlined expand_upwards, despite it having only pne callsite.  Nowadays
    gcc auto-inlines such static functions anyway.  In find_extend_vma, I
    removed one extra level of indirection.
    
    Patch is deliberately generated with -U $BIGNUM to make
    it easier to see that functions are big.
    
    Result:
    
    # size */*/mmap.o */vmlinux
       text    data     bss     dec     hex filename
       9514     188      16    9718    25f6 0.org/mm/mmap.o
       9237     188      16    9441    24e1 deinline/mm/mmap.o
    6124402  858996  389480 7372878  70804e 0.org/vmlinux
    6124113  858996  389480 7372589  707f2d deinline/vmlinux
    Signed-off-by: default avatarDenys Vlasenko <vda.linux@googlemail.com>
    Cc: Hugh Dickins <hugh@veritas.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    cb8f488c
mmap.c 64.3 KB