# git rev-parse -q --verify 85c2be2f166e5fc421396c9545c7411b2bbb8543^{commit} 85c2be2f166e5fc421396c9545c7411b2bbb8543 already have revision, skipping fetch # git checkout -q -f -B kisskb 85c2be2f166e5fc421396c9545c7411b2bbb8543 # git clean -qxdf # < git log -1 # commit 85c2be2f166e5fc421396c9545c7411b2bbb8543 # Author: Christophe Leroy # Date: Sun Jan 23 16:50:07 2022 +0100 # # powerpc: Select ARCH_WANTS_MODULES_DATA_IN_VMALLOC on book3s/32 and 8xx # # book3s/32 and 8xx have a separate area for allocating modules, # defined by MODULES_VADDR / MODULES_END. # # On book3s/32, it is not possible to protect against execution # on a page basis. A full 256M segment is either Exec or NoExec. # The module area is in an Exec segment while vmalloc area is # in a NoExec segment. # # In order to protect module data against execution, select # ARCH_WANTS_MODULES_DATA_IN_VMALLOC. # # For the 8xx (and possibly other 32 bits platform in the future), # there is no such constraint on Exec/NoExec protection, however # there is a critical distance between kernel functions and callers # that needs to remain below 32Mbytes in order to avoid costly # trampolines. By allocating data outside of module area, we # increase the chance for module text to remain within acceptable # distance from kernel core text. # # So select ARCH_WANTS_MODULES_DATA_IN_VMALLOC for 8xx as well. # # Signed-off-by: Christophe Leroy # Cc: Michael Ellerman # Cc: Benjamin Herrenschmidt # Cc: Paul Mackerras # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld --version # < git log --format=%s --max-count=1 85c2be2f166e5fc421396c9545c7411b2bbb8543 # < make -s -j 120 ARCH=powerpc O=/kisskb/build/chleroy_85xx_socrates_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- 85xx/socrates_defconfig # < make -s -j 120 ARCH=powerpc O=/kisskb/build/chleroy_85xx_socrates_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- help # make -s -j 120 ARCH=powerpc O=/kisskb/build/chleroy_85xx_socrates_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- olddefconfig # make -s -j 120 ARCH=powerpc O=/kisskb/build/chleroy_85xx_socrates_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- /kisskb/src/kernel/module/main.c: In function 'load_module': /kisskb/src/kernel/module/main.c:3425:2: error: implicit declaration of function 'init_build_id' [-Werror=implicit-function-declaration] init_build_id(mod, info); ^ In file included from /kisskb/src/kernel/module/strict_rwx.c:12:0: /kisskb/src/kernel/module/internal.h:145:13: warning: 'mod_tree_insert' defined but not used [-Wunused-function] static void mod_tree_insert(struct module *mod) { } ^ /kisskb/src/kernel/module/internal.h:146:13: warning: 'mod_tree_remove_init' defined but not used [-Wunused-function] static void mod_tree_remove_init(struct module *mod) { } ^ /kisskb/src/kernel/module/internal.h:147:13: warning: 'mod_tree_remove' defined but not used [-Wunused-function] static void mod_tree_remove(struct module *mod) { } ^ In file included from /kisskb/src/kernel/module/procfs.c:13:0: /kisskb/src/kernel/module/internal.h:145:13: warning: 'mod_tree_insert' defined but not used [-Wunused-function] static void mod_tree_insert(struct module *mod) { } ^ /kisskb/src/kernel/module/internal.h:146:13: warning: 'mod_tree_remove_init' defined but not used [-Wunused-function] static void mod_tree_remove_init(struct module *mod) { } ^ /kisskb/src/kernel/module/internal.h:147:13: warning: 'mod_tree_remove' defined but not used [-Wunused-function] static void mod_tree_remove(struct module *mod) { } ^ cc1: some warnings being treated as errors make[3]: *** [/kisskb/src/scripts/Makefile.build:288: kernel/module/main.o] Error 1 make[2]: *** [/kisskb/src/scripts/Makefile.build:550: kernel/module] Error 2 make[2]: *** Waiting for unfinished jobs.... make[1]: *** [/kisskb/src/Makefile:1831: kernel] Error 2 make[1]: *** Waiting for unfinished jobs.... make: *** [Makefile:219: __sub-make] Error 2 Command 'make -s -j 120 ARCH=powerpc O=/kisskb/build/chleroy_85xx_socrates_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- ' returned non-zero exit status 2 # rm -rf /kisskb/build/chleroy_85xx_socrates_defconfig_powerpc-gcc5 # Build took: 0:00:20.450443