# 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/ia64-linux/bin/ia64-linux-gcc --version # < git log --format=%s --max-count=1 73aca179d78eaa11604ba0783a6d8b2125fbc332 # < make -s -j 48 ARCH=ia64 O=/kisskb/build/powerpc-fixes_ia64-defconfig_ia64 CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/ia64-linux/bin/ia64-linux- defconfig # make -s -j 48 ARCH=ia64 O=/kisskb/build/powerpc-fixes_ia64-defconfig_ia64 CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/ia64-linux/bin/ia64-linux- :1185:2: warning: #warning syscall perf_event_open not implemented [-Wcpp] :1239:2: warning: #warning syscall seccomp not implemented [-Wcpp] :1317:2: warning: #warning syscall pkey_mprotect not implemented [-Wcpp] :1320:2: warning: #warning syscall pkey_alloc not implemented [-Wcpp] :1323:2: warning: #warning syscall pkey_free not implemented [-Wcpp] :1326:2: warning: #warning syscall statx not implemented [-Wcpp] /kisskb/src/kernel/fork.c:693:13: warning: 'task_struct_whitelist' defined but not used [-Wunused-function] /kisskb/src/mm/vmstat.c: In function 'sysctl_vm_numa_stat_handler': /kisskb/src/mm/vmstat.c:89:5: warning: 'oldval' 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:182:16: warning: 'old' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/mm/hugetlb.c: In function 'alloc_pool_huge_page': /kisskb/src/mm/hugetlb.c:1433:5: warning: 'page' may be used uninitialized in this function [-Wuninitialized] /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/fs/nfsd/nfs4xdr.c: In function 'nfsd4_encode_components_esc': /kisskb/src/fs/nfsd/nfs4xdr.c:2041:9: warning: 'str' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/dma-buf/reservation.c: In function 'reservation_object_add_shared_fence': /kisskb/src/drivers/dma-buf/reservation.c:207:2: warning: 'k' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/dma-buf/reservation.c:160:17: note: 'k' was declared here No errors detected in 21106 functions. Kernel: vmlinux.gz is ready Completed OK # rm -rf /kisskb/build/powerpc-fixes_ia64-defconfig_ia64 # Build took: 0:03:44.423472