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

Re: [Xen-devel] [PATCH 2/4] arm64: use "b" to branch to start_xen



Hi Wei,

On 30/08/16 13:01, Wei Liu wrote:
The cbz instruction has range limitation. When compiled with gcov
support the object is larger so cbz can't handle that anymore. The error
message is like:

aarch64-linux-gnu-ld    -EL  -T xen.lds -N prelink.o \
    /local/work/xen.git/xen/common/symbols-dummy.o -o 
/local/work/xen.git/xen/.xen-syms.0
prelink.o: In function `launch':
/local/work/xen.git/xen/arch/arm/arm64/head.S:602:(.text+0x408): relocation 
truncated to fit: R_AARCH64_CONDBR19 against symbol `start_xen' defined in 
.init.text section in prelink.o

Use "b" instead.

From a quick look the size of xen doubled (776K -> 1.4M) with GCov. Xen on ARM assumes the binary will always fit in 2MB, it might be time to get rid of this limit.

I know that enabling UBSAN [1] will lead to a binary bigger than 2MB and Xen will explode in early boot.

Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx>

Reviewed-by: Julien Grall <julien.grall@xxxxxxx>

Regards,

[1] http://developers.redhat.com/blog/2014/10/16/gcc-undefined-behavior-sanitizer-ubsan/

--
Julien Grall

_______________________________________________
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®.