aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/hack-5.15
diff options
context:
space:
mode:
authorChristian Marangi <ansuelsmth@gmail.com>2022-07-08 16:22:45 +0200
committerChristian Marangi <ansuelsmth@gmail.com>2022-07-14 07:15:35 +0200
commit4b924fe6dfab306ce8471cf448bbf25d30387ba5 (patch)
treeda3768dbd7ffdebeb55c0629c17f7aaddf1047e9 /target/linux/generic/hack-5.15
parent885738791364852725ec99b7fd1721a55edce9a9 (diff)
downloadupstream-4b924fe6dfab306ce8471cf448bbf25d30387ba5.tar.gz
upstream-4b924fe6dfab306ce8471cf448bbf25d30387ba5.tar.bz2
upstream-4b924fe6dfab306ce8471cf448bbf25d30387ba5.zip
generic: fix warning orphan section from module exports in aarch64
kernel linux now have 2 different export.h include, one from linux/export.h and one from asm-generic/export.h While most of our target user linux/export.h, aarch64 based target use asm-generic/export.h that is not patched with the changes of 221-module_exports. Patch also this additional header to fix multiple aarch64-openwrt-linux-musl-ld: warning: orphan section `__ksymtab_strings' from `arch/arm64/kernel/head.o' being placed in section `__ksymtab_strings' warning during kernel compilation. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Diffstat (limited to 'target/linux/generic/hack-5.15')
-rw-r--r--target/linux/generic/hack-5.15/221-module_exports.patch24
1 files changed, 24 insertions, 0 deletions
diff --git a/target/linux/generic/hack-5.15/221-module_exports.patch b/target/linux/generic/hack-5.15/221-module_exports.patch
index 95aef8edf8..47f013de4f 100644
--- a/target/linux/generic/hack-5.15/221-module_exports.patch
+++ b/target/linux/generic/hack-5.15/221-module_exports.patch
@@ -89,6 +89,30 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
"__kstrtab_" #sym ": \n" \
" .asciz \"" #sym "\" \n" \
"__kstrtabns_" #sym ": \n" \
+--- a/include/asm-generic/export.h
++++ b/include/asm-generic/export.h
+@@ -26,6 +26,12 @@ struct kernel_symbol {
+ #endif
+ .endm
+
++#ifdef MODULE
++#define __EXPORT_SUFFIX(name)
++#else
++#define __EXPORT_SUFFIX(name) + #name
++#endif
++
+ /*
+ * note on .section use: we specify progbits since usage of the "M" (SHF_MERGE)
+ * section flag requires it. Use '%progbits' instead of '@progbits' since the
+@@ -42,7 +42,7 @@ struct kernel_symbol {
+ __ksymtab_\name:
+ __put \val, __kstrtab_\name
+ .previous
+- .section __ksymtab_strings,"aMS",%progbits,1
++ .section __ksymtab_strings __EXPORT_SUFFIX(name),"aMS",%progbits,1
+ __kstrtab_\name:
+ .asciz "\name"
+ .previous
--- a/scripts/Makefile.build
+++ b/scripts/Makefile.build
@@ -396,7 +396,7 @@ targets += $(real-dtb-y) $(lib-y) $(alwa