# git rev-parse -q --verify dc398a084d459f065658855454e09f2778f8c5cc^{commit} dc398a084d459f065658855454e09f2778f8c5cc already have revision, skipping fetch # git checkout -q -f -B kisskb dc398a084d459f065658855454e09f2778f8c5cc # git clean -qxdf # < git log -1 # commit dc398a084d459f065658855454e09f2778f8c5cc # Author: Nicholas Piggin # Date: Fri Oct 7 00:04:11 2022 +1000 # # powerpc/64s/interrupt: Perf NMI should not take normal exit path # # NMI interrupts should exit with EXCEPTION_RESTORE_REGS not with # interrupt_return_srr, which is what the perf NMI handler currently does. # This breaks if a PMI hits after interrupt_exit_user_prepare_main() has # switched the context tracking to user mode, then the CT_WARN_ON() in # interrupt_exit_kernel_prepare() fires because it returns to kernel with # context set to user. # # This could possibly be solved by soft-disabling PMIs in the exit path, # but that reduces our ability to profile that code. The warning could be # removed, but it's potentially useful. # # All other NMIs and soft-NMIs return using EXCEPTION_RESTORE_REGS, so # this makes perf interrupts consistent with that and seems like the best # fix. # # Signed-off-by: Nicholas Piggin # [mpe: Squash in fixups from Nick] # Signed-off-by: Michael Ellerman # Link: https://lore.kernel.org/r/20221006140413.126443-3-npiggin@gmail.com # < /opt/cross/kisskb/korg/gcc-11.1.0-nolibc/s390-linux/bin/s390-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-11.1.0-nolibc/s390-linux/bin/s390-linux-ld --version # < git log --format=%s --max-count=1 dc398a084d459f065658855454e09f2778f8c5cc # < make -s -j 32 ARCH=s390 O=/kisskb/build/powerpc-fixes_s390-defconfig_s390x-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.1.0-nolibc/s390-linux/bin/s390-linux- defconfig # Added to kconfig CONFIG_DEBUG_INFO_BTF=n # Added to kconfig # < make -s -j 32 ARCH=s390 O=/kisskb/build/powerpc-fixes_s390-defconfig_s390x-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.1.0-nolibc/s390-linux/bin/s390-linux- help # make -s -j 32 ARCH=s390 O=/kisskb/build/powerpc-fixes_s390-defconfig_s390x-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.1.0-nolibc/s390-linux/bin/s390-linux- olddefconfig # make -s -j 32 ARCH=s390 O=/kisskb/build/powerpc-fixes_s390-defconfig_s390x-gcc11 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-11.1.0-nolibc/s390-linux/bin/s390-linux- In function 'setup_lowcore_dat_on', inlined from 'setup_arch' at /kisskb/src/arch/s390/kernel/setup.c:1059:2: /kisskb/src/arch/s390/kernel/setup.c:524:9: warning: 'memcpy' offset [0, 127] is out of the bounds [0, 0] [-Warray-bounds] 524 | memcpy(abs_lc->cregs_save_area, S390_lowcore.cregs_save_area, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 525 | sizeof(abs_lc->cregs_save_area)); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Completed OK # rm -rf /kisskb/build/powerpc-fixes_s390-defconfig_s390x-gcc11 # Build took: 0:04:38.867027