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

[Minios-devel] [PATCH 2/2] Makefile.uk: workaround the string operation corruption



When start a helloworld app with newlib, there will be a boot crash
on arm64 plat:
[    0.000000] Info: [libkvmplat] setup.clibkvmplat @ 51   : Found device tree 
on: 0x40000000
[    0.000000] Info: [libkvmplat] pl011.clibkvmplat @ 119  : Serial initializing
[    0.000000] Info: [libkvmplat] pl011.clibkvmplat @ 139  : Found PL011 UART 
on: 0x9000000
[    0.000000] Info: [libkvmplat] pl011.clibkvmplat @ 142  : PL011 UART 
initialized
[    0.000000] Info: [libkvmplat] setup.clibkvmplat @ 213  : Entering from KVM 
(arm64)...
[    0.000000] Info: [libkvmplat] setup.clibkvmplat @ 199  : No command line 
found
[    0.000000] Info: [libkvmplat] setup.clibkvmplat @ 69   : No PSCI conduit 
found in DTB
[    0.000000] Info: [libkvmplat] setup.clibkvmplat @ 93   : Support PSCI from 
PSCI-0.2
[    0.000000] Warn: [libkvmplat] setup.clibkvmplat @ 112  : No memory found in 
DTB
[    0.000000] Info: [libkvmgicv2] gic-v2.c @ 423  : Probing GICv2...
[    0.000000] dbg:  [libkvmofw] fdt.clibkvmofw @ 173  : reached root node
[    0.000000] dbg:  [libkvmofw] fdt.clibkvmofw @ 173  : reached root node
[    0.000000] Info: [libkvmgicv2] gic-v2.c @ 442  : Found GICv2 on:

Some fdt nodes are parsed incorrectly, especially for those compatible
strings with "\0“.

To work around the bug in newlib, we'd better enable PREFER_SIZE_OVER_SPEED
before we resolve the bug.

Signed-off-by: Jia He <justin.he@xxxxxxx>
---
 Makefile.uk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Makefile.uk b/Makefile.uk
index 54efe1a..279954a 100644
--- a/Makefile.uk
+++ b/Makefile.uk
@@ -81,7 +81,7 @@ LIBNEWLIBM_CXXINCLUDES += -I$(LIBNEWLIB_LIBM)/common
 
################################################################################
 # Global flags
 
################################################################################
-LIBNEWLIB_GLOBAL_FLAGS-y  += -DMISSING_SYSCALL_NAMES -DMALLOC_PROVIDED
+LIBNEWLIB_GLOBAL_FLAGS-y  += -DMISSING_SYSCALL_NAMES -DMALLOC_PROVIDED 
-DPREFER_SIZE_OVER_SPEED
 LIBNEWLIB_GLOBAL_FLAGS-y  += -D_POSIX_REALTIME_SIGNALS
 LIBNEWLIB_GLOBAL_FLAGS-$(CONFIG_LIBNEWLIBC_WANT_IO_C99_FORMATS) += 
-D_WANT_IO_C99_FORMATS
 LIBNEWLIB_GLOBAL_FLAGS-$(CONFIG_LIBNEWLIBC_LINUX_ERRNO_EXTENSIONS) += 
-D__LINUX_ERRNO_EXTENSIONS__
-- 
2.17.1


_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel

 


Rackspace

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