From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751027AbeECOQO (ORCPT ); Thu, 3 May 2018 10:16:14 -0400 Received: from mail.kernel.org ([198.145.29.99]:49166 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751220AbeECOQK (ORCPT ); Thu, 3 May 2018 10:16:10 -0400 Date: Thu, 3 May 2018 10:16:06 -0400 From: Steven Rostedt To: "Du, Changbin" Cc: Arnd Bergmann , Masahiro Yamada , Michal Marek , Thomas Gleixner , Ingo Molnar , Andrew Morton , Randy Dunlap , the arch/x86 maintainers , Liam Girdwood , Mark Brown , Linux Kbuild mailing list , Linux Kernel Mailing List , linux-arch Subject: Re: [PATCH v2 3/5] kernel hacking: new config NO_AUTO_INLINE to disable compiler auto-inline optimizations Message-ID: <20180503101606.51b7a6a2@gandalf.local.home> In-Reply-To: <20180503130013.lcsem2xubk5jqmcg@intel.com> References: <1525268700-10631-1-git-send-email-changbin.du@intel.com> <1525268700-10631-4-git-send-email-changbin.du@intel.com> <20180503130013.lcsem2xubk5jqmcg@intel.com> X-Mailer: Claws Mail 3.16.0 (GTK+ 2.24.32; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 3 May 2018 21:00:13 +0800 "Du, Changbin" wrote: > On Wed, May 02, 2018 at 04:27:47PM -0400, Arnd Bergmann wrote: > > On Wed, May 2, 2018 at 9:44 AM, wrote: > > > From: Changbin Du > > > > > > 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 > > > Cc: Steven Rostedt > > > > 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