# git rev-parse -q --verify 26a7f2efa8557bc235ef632d477b1aef6612bbc8^{commit} 26a7f2efa8557bc235ef632d477b1aef6612bbc8 already have revision, skipping fetch # git checkout -q -f -B kisskb 26a7f2efa8557bc235ef632d477b1aef6612bbc8 # git clean -qxdf # git log -1 commit 26a7f2efa8557bc235ef632d477b1aef6612bbc8 Author: Segher Boessenkool Date: Wed Feb 28 17:02:49 2018 -0800 powerpc: Keep const vars out of writable .sdata Newer gcc will support "-mno-readonly-in-sdata"[1], which makes sure that the optimization on PPC32 for variables getting moved into the .sdata section will not apply to const variables (which must be in .rodata). This was originally noticed in mm/rodata_test.c when rodata_test_data was not static: c0695034 g O .data 00000004 rodata_test_data After this patch with an updated compiler, this is correctly in .rodata. [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82411 Reported-by: Christophe Leroy Signed-off-by: Segher Boessenkool Signed-off-by: Kees Cook Signed-off-by: Michael Ellerman # < /opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux-gcc --version # < git log --format=%s --max-count=1 26a7f2efa8557bc235ef632d477b1aef6612bbc8 # < make -s -j 10 ARCH=powerpc O=/kisskb/build/powerpc-next_ppc64_defconfig_powerpc CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- ppc64_defconfig # make -s -j 10 ARCH=powerpc O=/kisskb/build/powerpc-next_ppc64_defconfig_powerpc CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- /kisskb/src/arch/powerpc/kvm/powerpc.c: In function 'kvmppc_handle_load128_by2x64': /kisskb/src/arch/powerpc/kvm/powerpc.c:1361:2: error: 'emulated' may be used uninitialized in this function [-Werror=uninitialized] cc1: all warnings being treated as errors /kisskb/src/scripts/Makefile.build:316: recipe for target 'arch/powerpc/kvm/powerpc.o' failed make[2]: *** [arch/powerpc/kvm/powerpc.o] Error 1 make[2]: *** Waiting for unfinished jobs.... /kisskb/src/Makefile:1048: recipe for target 'arch/powerpc/kvm' failed make[1]: *** [arch/powerpc/kvm] Error 2 make[1]: *** Waiting for unfinished jobs.... /kisskb/src/kernel/cgroup/cgroup-v1.c: In function 'cgroup1_mount': /kisskb/src/kernel/cgroup/cgroup-v1.c:1268:20: warning: 'root' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/kernel/printk/printk.c: In function 'devkmsg_sysctl_set_loglvl': /kisskb/src/kernel/printk/printk.c:183:16: warning: 'old' may be used uninitialized in this function [-Wuninitialized] Makefile:146: recipe for target 'sub-make' failed make: *** [sub-make] Error 2 Command 'make -s -j 10 ARCH=powerpc O=/kisskb/build/powerpc-next_ppc64_defconfig_powerpc CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- ' returned non-zero exit status 2 # rm -rf /kisskb/build/powerpc-next_ppc64_defconfig_powerpc # Build took: 0:00:28.141547