Everything in SANDBOX_PBL2PROPER_GLUE_SYMS is #defined to a barebox_
prefixed name in barebox proper, so calls end up at our wrappers
instead of directly in the host libc directly.
malloc_usable_size lost its prefix when sandbox was migrated to PBL,
which becomes quickly apparent if it's called with a ZERO_SIZE_PTR:
The barebox wrapper rejects it, while the host allocator will choke on
it under ASAN:
AddressSanitizer: attempting to call malloc_usable_size() for pointer
which is not owned: 0x000000000010
Fixes: 2aba0017c95a ("sandbox: switch to using PBL")
Signed-off-by: Ahmad Fatoum <[email protected]>
---
arch/sandbox/Makefile | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/arch/sandbox/Makefile b/arch/sandbox/Makefile
index c8f5ae8c8986..9490a1ae4b35 100644
--- a/arch/sandbox/Makefile
+++ b/arch/sandbox/Makefile
@@ -33,7 +33,8 @@ TEXT_BASE = $(CONFIG_TEXT_BASE)
SANDBOX_PBL2PROPER_GLUE_SYMS := \
putchar errno setjmp longjmp \
- malloc_stats memalign malloc free realloc calloc memleak_check brk sbrk
+ malloc_stats memalign malloc free realloc calloc malloc_usable_size \
+ memleak_check brk sbrk
KBUILD_CFLAGS += $(foreach
s,$(SANDBOX_PBL2PROPER_GLUE_SYMS),-D$(s)=barebox_$(s))
--
2.47.3