From: Wei Liu <wei.liu2@citrix.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
Wei Liu <wei.liu2@citrix.com>,
George Dunlap <George.Dunlap@eu.citrix.com>,
Tim Deegan <tim@xen.org>, Ian Jackson <ian.jackson@eu.citrix.com>,
Jan Beulich <jbeulich@suse.com>,
Xen-devel <xen-devel@lists.xenproject.org>
Subject: Re: [PATCH for-4.8 2/2] Config.mk: fix comment for debug option
Date: Tue, 1 Nov 2016 15:10:22 +0000 [thread overview]
Message-ID: <20161101151022.GA30231@citrix.com> (raw)
In-Reply-To: <3a200c16-fe69-17b2-7096-0ce91e6073ae@citrix.com>
On Tue, Nov 01, 2016 at 02:58:22PM +0000, Andrew Cooper wrote:
> On 01/11/16 13:47, Wei Liu wrote:
> > On Mon, Oct 31, 2016 at 05:09:46PM +0000, Wei Liu wrote:
> >> Signed-off-by: Wei Liu <wei.liu2@citrix.com>
> >> ---
> >> Cc: Andrew Cooper <andrew.cooper3@citrix.com>
> >> Cc: George Dunlap <George.Dunlap@eu.citrix.com>
> >> Cc: Ian Jackson <ian.jackson@eu.citrix.com>
> >> Cc: Jan Beulich <jbeulich@suse.com>
> >> Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
> >> Cc: Stefano Stabellini <sstabellini@kernel.org>
> >> Cc: Tim Deegan <tim@xen.org>
> >> Cc: Wei Liu <wei.liu2@citrix.com>
> >> ---
> >> Config.mk | 3 ++-
> >> 1 file changed, 2 insertions(+), 1 deletion(-)
> >>
> >> diff --git a/Config.mk b/Config.mk
> >> index ebbd9c0..fb836a4 100644
> >> --- a/Config.mk
> >> +++ b/Config.mk
> >> @@ -16,7 +16,8 @@ or = $(if $(strip $(1)),$(1),$(if $(strip $(2)),$(2),$(if $(strip $(3)),$(
> >>
> >> -include $(XEN_ROOT)/.config
> >>
> >> -# A debug build of Xen and tools?
> >> +# A debug build of tools?
> > For this to hold true, a patch like this is needed:
> >
> > Please let me know what you think.
>
> Looks like another swamp :s
>
Indeed. This is something we overlooked early in the release.
> >
> > ---8<---
> > From 0a96ff9f3610622bc4f7114d6e094bf45ca9305f Mon Sep 17 00:00:00 2001
> > From: Wei Liu <wei.liu2@citrix.com>
> > Date: Mon, 31 Oct 2016 17:42:25 +0000
> > Subject: [PATCH] build: make debug option affect tools only
> >
> > The debug option in Config.mk affects hypervisor, tools and stubdom by
> > appending different flags to CFLAGS.
> >
> > It is undesirable because now hypervisor build is affect by both Kconfig
> > and debug.
> >
^
Specifically because of this, I really want to fix this whole thing
properly. Otherwise it is going to be rather confusing to downstream.
> > Disentangle the semantics of debug by pushing relevant options to
> > individual sub-systems.
> >
> > For hypervisor, the flags previously added by debug option is now
> > controlled by CONFIG_DEBUG.
> >
> > For tools, flags are moved from config/*.mk into tools/Rules.mk.
> >
[...]
> > diff --git a/tools/Rules.mk b/tools/Rules.mk
> > index 5a80fec..0e73690 100644
> > --- a/tools/Rules.mk
> > +++ b/tools/Rules.mk
> > @@ -138,9 +138,11 @@ SHLIB_libxenvchan = $(SHDEPS_libxenvchan) -Wl,-rpath-link=$(XEN_LIBVCHAN)
> >
> > ifeq ($(debug),y)
> > # Disable optimizations and enable debugging information for macros
> > -CFLAGS += -O0 -g3
> > +CFLAGS += -O0 -g3 -fno-omit-frame-pointer
>
> Perhaps this a suggestion better left for a later patch, but the use of
> -O0 is still bad here.
>
> Debug builds should use -Og if available, and -O1 otherwise. As
> identified immediately below, a number of options are incompatible with -O0.
>
> > # But allow an override to -O0 in case Python enforces -D_FORTIFY_SOURCE=<n>.
> > PY_CFLAGS += $(PY_NOOPT_CFLAGS)
> > +else
> > +CFLAGS += -O2 -fomit-frame-pointer
> > endif
> >
> > LIBXL_BLKTAP ?= $(CONFIG_BLKTAP2)
> > diff --git a/xen/Rules.mk b/xen/Rules.mk
> > index a9fda71..08cc776 100644
> > --- a/xen/Rules.mk
> > +++ b/xen/Rules.mk
> > @@ -46,6 +46,12 @@ ALL_OBJS-y += $(BASEDIR)/xsm/built_in.o
> > ALL_OBJS-y += $(BASEDIR)/arch/$(TARGET_ARCH)/built_in.o
> > ALL_OBJS-$(CONFIG_CRYPTO) += $(BASEDIR)/crypto/built_in.o
> >
> > +ifeq ($(CONFIG_DEBUG),y)
> > +CFLAGS += -O1
> > +else
> > +CFLAGS += -O2 -fomit-frame-pointer
>
> The frame pointer option should be omitted entirely. A user should be
> able to control debug and frame pointer entirely independently with Kconfig.
>
> There have been two times where I have specifically needed a release
> build with frame pointers to track down bugs.
>
I think both are fine suggestions.
I would like to (hopefully) not introduce noticeable changes of the
effect of all combined flags in this patch and adjust the flags in a
later patch.
Wei.
> ~Andrew
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel
next prev parent reply other threads:[~2016-11-01 15:10 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-10-31 17:09 [PATCH for-4.8 0/2] Disable debug build for hypervisor Wei Liu
2016-10-31 17:09 ` [PATCH for-4.8 1/2] xen: disable debug build Wei Liu
2016-10-31 17:09 ` [PATCH for-4.8 2/2] Config.mk: fix comment for debug option Wei Liu
2016-11-01 13:47 ` Wei Liu
2016-11-01 14:58 ` Andrew Cooper
2016-11-01 15:10 ` Wei Liu [this message]
2016-11-01 16:18 ` Jan Beulich
2016-11-01 16:20 ` Wei Liu
2016-11-01 16:33 ` Jan Beulich
2016-11-01 16:37 ` Wei Liu
2016-11-01 16:42 ` Jan Beulich
2016-11-01 16:56 ` Wei Liu
2016-11-01 16:56 ` Ian Jackson
2016-11-01 16:58 ` Andrew Cooper
2016-11-01 18:05 ` [OSSTEST PATCH] ts-xen-build: set CONFIG_DEBUG for KConfig Wei Liu
2016-11-01 18:08 ` Ian Jackson
2016-10-31 17:11 ` [PATCH for-4.8 0/2] Disable debug build for hypervisor Andrew Cooper
2016-10-31 17:23 ` Jan Beulich
2016-10-31 17:30 ` Konrad Rzeszutek Wilk
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20161101151022.GA30231@citrix.com \
--to=wei.liu2@citrix.com \
--cc=George.Dunlap@eu.citrix.com \
--cc=andrew.cooper3@citrix.com \
--cc=ian.jackson@eu.citrix.com \
--cc=jbeulich@suse.com \
--cc=sstabellini@kernel.org \
--cc=tim@xen.org \
--cc=xen-devel@lists.xenproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).