From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 5325 invoked by alias); 17 Jul 2009 20:28:37 -0000 Received: (qmail 5313 invoked by uid 22791); 17 Jul 2009 20:28:37 -0000 X-SWARE-Spam-Status: No, hits=-2.3 required=5.0 tests=AWL,BAYES_00 X-Spam-Check-By: sourceware.org Received: from pfepa.post.tele.dk (HELO pfepa.post.tele.dk) (195.41.46.235) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 17 Jul 2009 20:28:30 +0000 Received: from merkur.ravnborg.org (x1-6-00-1e-2a-84-ae-3e.k225.webspeed.dk [80.163.61.94]) by pfepa.post.tele.dk (Postfix) with ESMTP id 48E09A50033; Fri, 17 Jul 2009 22:28:23 +0200 (CEST) Date: Fri, 17 Jul 2009 20:28:00 -0000 From: Sam Ravnborg To: Steven Rostedt Cc: Masami Hiramatsu , Ingo Molnar , Ananth N Mavinakayanahalli , lkml , systemtap , DLE , Jim Keniston , Srikar Dronamraju , Christoph Hellwig , Frederic Weisbecker , "H. Peter Anvin" , Anders Kaseorg , Tim Abbott Subject: Re: [RFC][ PATCH -tip v2 3/7] Kbuild: disable gcc crossjumping Message-ID: <20090717202825.GA6872@merkur.ravnborg.org> Mail-Followup-To: Steven Rostedt , Masami Hiramatsu , Ingo Molnar , Ananth N Mavinakayanahalli , lkml , systemtap , DLE , Jim Keniston , Srikar Dronamraju , Christoph Hellwig , Frederic Weisbecker , "H. Peter Anvin" , Anders Kaseorg , Tim Abbott References: <20090622212255.5384.53732.stgit@localhost.localdomain> <20090622212313.5384.84166.stgit@localhost.localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.18 (2008-05-17) Mailing-List: contact systemtap-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: systemtap-owner@sourceware.org X-SW-Source: 2009-q3/txt/msg00155.txt.bz2 On Sat, Jun 27, 2009 at 04:13:04PM -0400, Steven Rostedt wrote: > > A change like this requires an ACK from Sam Ravnborg. > > -- Steve Overdue review... I do not know the gcc option so I cannot comment on theeffect of it. > > > > > diff --git a/Makefile b/Makefile > > index 2903e13..f73b139 100644 > > --- a/Makefile > > +++ b/Makefile > > @@ -524,6 +524,10 @@ else > > KBUILD_CFLAGS += -O2 > > endif > > > > +ifdef CONFIG_DISABLE_CROSSJUMP > > +KBUILD_CFLAGS += -fno-crossjumping > > +endif > > + > > include $(srctree)/arch/$(SRCARCH)/Makefile Why do we add this option _before_ we include the arch specific Makefile? If we do not want the arch specific Makefile to undo this then move it lower. Also please add a comment what the effect of the disabling is. There is no reason I should fire up info gcc to find out what -fno-crossjumping is about. > > > > ifneq ($(CONFIG_FRAME_WARN),0) > > diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug > > index 8da7467..f88e6b8 100644 > > --- a/lib/Kconfig.debug > > +++ b/lib/Kconfig.debug > > @@ -673,6 +673,13 @@ config FRAME_POINTER > > larger and slower, but it gives very useful debugging information > > in case of kernel bugs. (precise oopses/stacktraces/warnings) > > > > +config DISABLE_CROSSJUMP > > + bool "Disable cross-function jump optimization" > > + help > > + This build option disables cross-function jump optimization > > + (crossjumping) of gcc. Disabling crossjumping might increase > > + kernel binary size a little. So the above comment tells me that is I disable crossjumping I will increase the kernel image a little. That is by no means a good explanation. Please explain the potential advantage of disabling crossjumping. Sam