# git rev-parse -q --verify 8b909e3548706cbebc0a676067b81aadda57f47e^{commit} 8b909e3548706cbebc0a676067b81aadda57f47e already have revision, skipping fetch # git checkout -q -f -B kisskb 8b909e3548706cbebc0a676067b81aadda57f47e # git clean -qxdf # < git log -1 # commit 8b909e3548706cbebc0a676067b81aadda57f47e # Author: Thiago Jung Bauermann # Date: Wed May 22 19:01:58 2019 -0300 # # powerpc/kexec: Fix loading of kernel + initramfs with kexec_file_load() # # Commit b6664ba42f14 ("s390, kexec_file: drop arch_kexec_mem_walk()") # changed kexec_add_buffer() to skip searching for a memory location if # kexec_buf.mem is already set, and use the address that is there. # # In powerpc code we reuse a kexec_buf variable for loading both the # kernel and the initramfs by resetting some of the fields between those # uses, but not mem. This causes kexec_add_buffer() to try to load the # kernel at the same address where initramfs will be loaded, which is # naturally rejected: # # # kexec -s -l --initrd initramfs vmlinuz # kexec_file_load failed: Invalid argument # # Setting the mem field before every call to kexec_add_buffer() fixes # this regression. # # Fixes: b6664ba42f14 ("s390, kexec_file: drop arch_kexec_mem_walk()") # Cc: stable@vger.kernel.org # v5.0+ # Signed-off-by: Thiago Jung Bauermann # Reviewed-by: Dave Young # Signed-off-by: Michael Ellerman # < /opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux-gcc --version # < /opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux-ld --version # < git log --format=%s --max-count=1 8b909e3548706cbebc0a676067b81aadda57f47e # < make -s -j 10 ARCH=powerpc O=/kisskb/build/powerpc-fixes_44x_rainier_defconfig_powerpc-gcc4.6 CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- 44x/rainier_defconfig # make -s -j 10 ARCH=powerpc O=/kisskb/build/powerpc-fixes_44x_rainier_defconfig_powerpc-gcc4.6 CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- /kisskb/src/kernel/printk/printk.c: In function 'devkmsg_sysctl_set_loglvl': /kisskb/src/kernel/printk/printk.c:193:16: warning: 'old' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/fs/proc/inode.c: In function 'proc_reg_open': /kisskb/src/include/linux/list.h:65:12: warning: 'pdeo' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/fs/proc/inode.c:331:21: note: 'pdeo' was declared here /kisskb/src/drivers/tty/serial/8250/8250_core.c: In function 'univ8250_release_irq': /kisskb/src/drivers/tty/serial/8250/8250_core.c:247:18: warning: 'i' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/tty/serial/8250/8250_core.c:227:19: note: 'i' was declared here INFO: Uncompressed kernel (size 0x49f6a4) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0x500000) Image Name: Linux-5.2.0-rc1-g8b909e354870 Created: Thu May 23 17:02:20 2019 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 2345169 Bytes = 2290.20 KiB = 2.24 MiB Load Address: 00500000 Entry Point: 005014e0 Completed OK # rm -rf /kisskb/build/powerpc-fixes_44x_rainier_defconfig_powerpc-gcc4.6 # Build took: 0:00:42.131548