lkml.org 
[lkml]   [2018]   [May]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v2 3/5] kernel hacking: new config NO_AUTO_INLINE to disable compiler auto-inline optimizations
On Thu, 3 May 2018 21:00:13 +0800
"Du, Changbin" <changbin.du@intel.com> wrote:

> On Wed, May 02, 2018 at 04:27:47PM -0400, Arnd Bergmann wrote:
> > On Wed, May 2, 2018 at 9:44 AM, <changbin.du@intel.com> wrote:
> > > From: Changbin Du <changbin.du@intel.com>
> > >
> > > This patch add a new kernel hacking option NO_AUTO_INLINE. Selecting
> > > this option will prevent the compiler from optimizing the kernel by
> > > auto-inlining functions not marked with the inline keyword.
> > >
> > > With this option, only functions explicitly marked with "inline" will
> > > be inlined. This will allow the function tracer to trace more functions
> > > because it only traces functions that the compiler has not inlined.
> > >
> > > Signed-off-by: Changbin Du <changbin.du@intel.com>
> > > Cc: Steven Rostedt <rostedt@goodmis.org>
> >
> > Should this be closer to CONFIG_OPTIMIZE_INLINING or
> > possibly mutually exclusive with it?
> >
> They are not related I think. CONFIG_OPTIMIZE_INLINING only has effect on
> functions which are explicitly marked as inline.
>

Agreed, as OPTIMIZE_INLINING is to make functions marked inline not to
be inlined. And I just noticed (doing a git grep), that that config is
now only available in arch/x86. Maybe it always was, but sparc
undefines it for vclock_gettime.c.

$ git grep OPTIMIZE_INLIN
arch/sparc/vdso/vdso32/vclock_gettime.c:#undef CONFIG_OPTIMIZE_INLINING
arch/x86/Kconfig.debug:config OPTIMIZE_INLINING
arch/x86/configs/i386_defconfig:CONFIG_OPTIMIZE_INLINING=y
arch/x86/configs/x86_64_defconfig:CONFIG_OPTIMIZE_INLINING=y
arch/x86/entry/vdso/vdso32/vclock_gettime.c:#undef CONFIG_OPTIMIZE_INLINING
include/linux/compiler-gcc.h: !defined(CONFIG_OPTIMIZE_INLINING) || (__GNUC__ < 4)
kernel/configs/tiny.config:CONFIG_OPTIMIZE_INLINING=y

-- Steve

\
 
 \ /
  Last update: 2018-05-03 16:16    [W:0.039 / U:0.180 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site