[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] x86/boot: fix build with certain older gcc versions



On Thu, Dec 15, 2016 at 07:04:51AM -0700, Jan Beulich wrote:
> Despite all attempts so far (ending in commit fecf584294 ["Config.mk:
> fix comment for debug option"] adjusting the respective comment),
> Config.mk's debug= setting still affects the hypervisor build: CFLAGS
> gets -g added there.
>
> xen/arch/x86/boot/build32.mk includes that file, and hence inherits the
> setting too. Some gcc versions take -g to create an .eh_frame section
> despite -fno-asynchronous-unwind-tables (which instead one would expect
> to produce .debug_frame).

Hmmm... Smells like a bug...

> In turn, commit 93c0c0287a ("x86/boot: create *.lnk files with linker
> script") was - in my understanding - supposed to make sure .text is
> first, but apparently it did also not really achieve that effect: Both

The main goal was to have text and data sections merged into one text section.

> reloc.lnk and reloc.bin in the case here ended up with .eh_frame first,
> which obviously rendered the whole final binary unusable.

Should not we discard unneeded sections in build32.lds? It looks a bit
more complicated but maybe we should consider such option too.

> Explicitly suppress generation of any kind of debug info when building
> reloc.o.
>
> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
>
> --- a/xen/arch/x86/boot/build32.mk
> +++ b/xen/arch/x86/boot/build32.mk
> @@ -4,7 +4,7 @@ include $(XEN_ROOT)/Config.mk
>
>  $(call cc-options-add,CFLAGS,CC,$(EMBEDDED_EXTRA_CFLAGS))
>
> -CFLAGS += -Werror -fno-asynchronous-unwind-tables -fno-builtin -msoft-float
> +CFLAGS += -Werror -fno-asynchronous-unwind-tables -fno-builtin -g0 
> -msoft-float

CFLAGS = $(subst -g,-g0,$(CFLAGS))?

Daniel

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.