[PATCH -next] arm32/boot/compressed: Force hidden visibility for all symbol references

Yuntao Liu liuyuntao12 at huawei.com
Fri Jan 24 00:20:30 PST 2025


Eliminate all GOT entries in the decompressor binary, by forcing hidden
visibility for all symbol references, which informs the compiler that
such references will be resolved at link time without the need for
allocating GOT entries.

Include linux/hidden.h in Makefile, like x86, for the
hidden visibility attribute.

Signed-off-by: Yuntao Liu <liuyuntao12 at huawei.com>
---
 arch/arm/boot/compressed/Makefile | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/arch/arm/boot/compressed/Makefile b/arch/arm/boot/compressed/Makefile
index 945b5975fce2..d8a17760ad29 100644
--- a/arch/arm/boot/compressed/Makefile
+++ b/arch/arm/boot/compressed/Makefile
@@ -93,6 +93,9 @@ targets       := vmlinux vmlinux.lds piggy_data piggy.o \
 		 head.o $(OBJS)
 
 KBUILD_CFLAGS += -DDISABLE_BRANCH_PROFILING
+ifneq ($(CONFIG_LD_IS_LLD),y)
+KBUILD_CFLAGS += -include $(srctree)/include/linux/hidden.h
+endif
 
 ccflags-y := -fpic $(call cc-option,-mno-single-pic-base,) -fno-builtin \
 	     -I$(srctree)/scripts/dtc/libfdt -fno-stack-protector \
-- 
2.34.1




More information about the linux-arm-kernel mailing list