Re: [PATCH] Deinline a few functions in mmap.c
From: Andrew Morton
Date: Tue Jul 22 2008 - 05:37:28 EST
On Sat, 5 Jul 2008 18:37:30 +0200 Denys Vlasenko <vda.linux@xxxxxxxxxxxxxx> wrote:
> __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
>
So I left this so long that the patch doesn't vaguely apply any more on
-mm, at least. The large amounts of context didn't help.
I had a go at fixing it, but I can't even compile test it because this
morning's linux-next pull was a complete wreck. Maybe tomorrow...
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/