Re: [PATCH] enforce function inlining for hot functions

From: Hagen Paul Pfeifer
Date: Fri Apr 24 2015 - 16:39:28 EST


On 24 April 2015 at 21:49, Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote:
> I can't reproduce this with either gcc-4.8.2 or gcc-4.4.4. The patch
> makes zero difference to `size vmlinux' and a bit of poking around with
> nm doesn't show any out-of-lined versions of the functions you
> identify.
>
> So. More details, please. How to demonstrate this, gcc versions, etc.

Hey Andrew,

first of all you should probably scan over https://lkml.org/lkml/2015/4/21/178
Some questions are already answered there.

Here is the situation: the inlining problem occur with the 4.9.x
branch - I tried to reproduce it with 4.8.x and saw *no* problems. So
it is probably limited to 4.9 - which is sad. I don't checked it with
5.0 or 5.1 yet. Then, if CONFIG_OPTIMIZE_INLINING is disabled inlining
is enforced anyway, so there is no problem because all inlined marked
functions are always inlined - gcc heuristic is defacto disabled. This
patch makes sure that the hot functions always inlined, no matter what
config is selected or compiler version is used. Yes, in an ideal world
gcc had inlined most of them - now we enforce the ideal world.

Hagen
--
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/