Re: [PATCH] prepare kconfig inline optimization for all architectures

Adrian Bunk
2008-04-27T17:47:14Z

On Sun, Apr 27, 2008 at 10:32:28AM -0700, Linus Torvalds wrote:
>
>
> On Sun, 27 Apr 2008, Adrian Bunk wrote:
> >
> > I'm looking at it from a different angle, all code in the kernel should
> > follow the following rules [1]:
> > - no functions in .c files should be marked inline
> > - all functions in headers should be static inline
> > - all functions in headers should either be very small or collapse
> > to become very small after inlining
> >
> > I can simply not see any usecase for a non-forced inline in the kernel,
> > and fixing the kernel should give a superset of the space savings of
> > this "inline optimization".
>
> Your whole argument is premised on the assumption that the compiler does
> the right thing.
>...

No, you seem to be misunderstanding what I am saying.

Status Quo as of 2.6.25:
- we force the compiler to always inline with "inline"
- we have inline's in .c files and too big functions in headers, and
both of them are wrong

"inline optimization":
- we leave the compiler the choice whether or not to inline with "inline"
- we still have inline's in .c files and too big functions in headers,
and both of them are wrong, but this "inline optimization" works
around these in some of the cases

What I want instead:
- we continue to force the compiler to always inline with "inline"
- we remove the inline's in .c files and make too big functions in
headers out-of-line

> Linus

cu
Adrian

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed