# git rev-parse -q --verify 73aca179d78eaa11604ba0783a6d8b2125fbc332^{commit} 73aca179d78eaa11604ba0783a6d8b2125fbc332 already have revision, skipping fetch # git checkout -q -f -B kisskb 73aca179d78eaa11604ba0783a6d8b2125fbc332 # git clean -qxdf # < git log -1 # commit 73aca179d78eaa11604ba0783a6d8b2125fbc332 # Author: Michael Ellerman # Date: Mon Mar 26 19:27:01 2018 +1100 # # powerpc/modules: Fix crashes by adding CONFIG_RELOCATABLE to vermagic # # If you build the kernel with CONFIG_RELOCATABLE=n, then install the # modules, rebuild the kernel with CONFIG_RELOCATABLE=y and leave the # old modules installed, we crash something like: # # Unable to handle kernel paging request for data at address 0xd000000018d66cef # Faulting instruction address: 0xc0000000021ddd08 # Oops: Kernel access of bad area, sig: 11 [#1] # Modules linked in: x_tables autofs4 # CPU: 2 PID: 1 Comm: systemd Not tainted 4.16.0-rc6-gcc_ubuntu_le-g99fec39 #1 # ... # NIP check_version.isra.22+0x118/0x170 # Call Trace: # __ksymtab_xt_unregister_table+0x58/0xfffffffffffffcb8 [x_tables] (unreliable) # resolve_symbol+0xb4/0x150 # load_module+0x10e8/0x29a0 # SyS_finit_module+0x110/0x140 # system_call+0x58/0x6c # # This happens because since commit 71810db27c1c ("modversions: treat # symbol CRCs as 32 bit quantities"), a relocatable kernel encodes and # handles symbol CRCs differently from a non-relocatable kernel. # # Although it's possible we could try and detect this situation and # handle it, it's much more robust to simply make the state of # CONFIG_RELOCATABLE part of the module vermagic. # # Fixes: 71810db27c1c ("modversions: treat symbol CRCs as 32 bit quantities") # 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 73aca179d78eaa11604ba0783a6d8b2125fbc332 # < make -s -j 48 ARCH=powerpc O=/kisskb/build/powerpc-fixes_c2k_defconfig_powerpc CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- c2k_defconfig WARNING: unmet direct dependencies detected for NOT_COHERENT_CACHE Depends on [n]: 4xx [=n] || PPC_8xx [=n] || E200 [=n] || PPC_MPC512x [=n] || GAMECUBE_COMMON [=n] Selected by [y]: - PPC_C2K [=y] && EMBEDDED6xx [=y] WARNING: unmet direct dependencies detected for NOT_COHERENT_CACHE Depends on [n]: 4xx [=n] || PPC_8xx [=n] || E200 [=n] || PPC_MPC512x [=n] || GAMECUBE_COMMON [=n] Selected by [y]: - PPC_C2K [=y] && EMBEDDED6xx [=y] # make -s -j 48 ARCH=powerpc O=/kisskb/build/powerpc-fixes_c2k_defconfig_powerpc CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- WARNING: unmet direct dependencies detected for NOT_COHERENT_CACHE Depends on [n]: 4xx [=n] || PPC_8xx [=n] || E200 [=n] || PPC_MPC512x [=n] || GAMECUBE_COMMON [=n] Selected by [y]: - PPC_C2K [=y] && EMBEDDED6xx [=y] WARNING: unmet direct dependencies detected for NOT_COHERENT_CACHE Depends on [n]: 4xx [=n] || PPC_8xx [=n] || E200 [=n] || PPC_MPC512x [=n] || GAMECUBE_COMMON [=n] Selected by [y]: - PPC_C2K [=y] && EMBEDDED6xx [=y] /kisskb/src/kernel/printk/printk.c: In function 'devkmsg_sysctl_set_loglvl': /kisskb/src/kernel/printk/printk.c:182:16: warning: 'old' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/base/regmap/regmap.c: In function 'regmap_raw_read': /kisskb/src/drivers/base/regmap/regmap.c:2497:6: warning: 'ret' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/base/regmap/regmap.c: In function '_regmap_raw_write': /kisskb/src/drivers/base/regmap/regmap.c:1819:6: warning: 'ret' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/net/tun.c: In function 'tun_get_user': /kisskb/src/drivers/net/tun.c:1820:30: warning: 'copylen' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/net/tun.c:1730:46: warning: 'linear' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/net/bridge/br_netlink.c: In function 'br_afspec': /kisskb/src/net/bridge/br_netlink.c:635:7: warning: 'err' may be used uninitialized in this function [-Wuninitialized] INFO: Uncompressed kernel (size 0x6b3ec4) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0x700000) Image Name: Linux-4.16.0-g73aca17 Created: Mon Apr 9 23:43:15 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 3242290 Bytes = 3166.30 kB = 3.09 MB Load Address: 00700000 Entry Point: 007004fc Completed OK # rm -rf /kisskb/build/powerpc-fixes_c2k_defconfig_powerpc # Build took: 0:01:26.204045