Re: [PATCH -v7][RFC]: mutex: implement adaptive spinning

Linus Torvalds
2009-01-09T03:44:05Z

On Fri, 9 Jan 2009, Andi Kleen wrote:
>
> I actually often use noinline when developing code simply because it
> makes it easier to read oopses when gcc doesn't inline ever static
> (which it normally does if it only has a single caller)

Yes. Gcc inlining is a total piece of sh*t.

Gcc doesn't inline enough when we ask it to, and inlines too damn
aggressively when we don't. It seems to almost totally ignore the inline
hint.

Oh, well. The best option tends to be

- mark things "noinline" just to make sure gcc doesn't screw up.

- make "inline" mean "must_inline".

- maybe add a new "maybe_inline" to be the "inline" hint that gcc uses.

because quite frankly, depending on gcc to do the right thing is not
working out.

Linus