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

Harvey Harrison
2009-01-09T22:25:18Z

On Fri, 2009-01-09 at 14:09 -0800, Linus Torvalds wrote:
> Actually, the nice part about "inline_hint" would be that then we could
> have some nice config option like
>
> #ifdef CONFIG_FULL_CALL_TRACE
> #define inline_hint noinline
> #elif defined(CONFIG_TRUST_COMPILER)
> #define inline_hint /* */
> #else
> #define inline_hint __inline
> #endif
>
> and now the _only_ thing we need to do is to remove the
>
> #define __inline __force_inline
>
> thing, and just agree that "__inline" is the "native compiler meaning".
>
> We have a few users of "__inline", but not very many. We can leave them
> alone, or just convert them to __inline__ or inline.
>

Oh yeah, and figure out what actually breaks on alpha such that they added
the following (arch/alpha/include/asm/compiler.h)

#ifdef __KERNEL__
/* Some idiots over in <linux/compiler.h> thought inline should imply
always_inline. This breaks stuff. We'll include this file whenever
we run into such problems. */

#include <linux/compiler.h>
#undef inline
#undef __inline__
#undef __inline
#undef __always_inline
#define __always_inline inline __attribute__((always_inline))

#endif /* __KERNEL__ */

Cheers,

Harvey