# git rev-parse -q --verify 5ad0e6cf98ac177bdc3d162dda4af5253b0f0d78^{commit} 5ad0e6cf98ac177bdc3d162dda4af5253b0f0d78 already have revision, skipping fetch # git checkout -q -f -B kisskb 5ad0e6cf98ac177bdc3d162dda4af5253b0f0d78 # git clean -qxdf # < git log -1 # commit 5ad0e6cf98ac177bdc3d162dda4af5253b0f0d78 # Author: Christophe Leroy # Date: Fri Mar 19 06:34:43 2021 +0000 # # powerpc/irq: Inline call_do_irq() and call_do_softirq() # # call_do_irq() and call_do_softirq() are simple enough to be # worth inlining. # # Inlining them avoids an mflr/mtlr pair plus a save/reload on stack. It # also allows GCC to keep the saved ksp_limit in an nonvolatile reg. # # This is inspired from S390 arch. Several other arches do more or # less the same. The way sparc arch does seems odd thought. # # Signed-off-by: Christophe Leroy # Signed-off-by: Michael Ellerman # --- # # v2: no change. # v3: no change. # v4: # - comment reminding the purpose of the inline asm block. # - added r2 as clobbered reg # v5: # - Limiting the change to PPC32 for now. # - removed r2 from the clobbered regs list (on PPC32 r2 points to current all the time) # - Removed patch 1 and merged ksp_limit handling in here. # v6: # - Rebase on top of merge-test (ca6e327fefb2). # - Remove the ksp_limit stuff as it's doesn't exist anymore. # # v7: # mpe: # - Enable for 64-bit too. This all in-kernel code calling in-kernel # code, and must use the kernel TOC. # - Use named parameters for the inline asm. # - Reformat inline asm. # - Mark as always_inline. # - Drop unused ret from call_do_softirq(), add r3 as clobbered. # < /opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux-ld --version # < git log --format=%s --max-count=1 5ad0e6cf98ac177bdc3d162dda4af5253b0f0d78 # < make -s -j 120 ARCH=powerpc O=/kisskb/build/powerpc-next_corenet32_smp_defconfig_powerpc-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux- corenet32_smp_defconfig # < make -s -j 120 ARCH=powerpc O=/kisskb/build/powerpc-next_corenet32_smp_defconfig_powerpc-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux- help # make -s -j 120 ARCH=powerpc O=/kisskb/build/powerpc-next_corenet32_smp_defconfig_powerpc-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux- olddefconfig # make -s -j 120 ARCH=powerpc O=/kisskb/build/powerpc-next_corenet32_smp_defconfig_powerpc-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux- INFO: Uncompressed kernel (size 0xe7c76c) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xf00000) Image Name: Linux-5.12.0-rc2-g5ad0e6cf98ac Created: Sun Mar 21 17:57:21 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6822002 Bytes = 6662.11 KiB = 6.51 MiB Load Address: 00000000 Entry Point: 00000000 Completed OK # rm -rf /kisskb/build/powerpc-next_corenet32_smp_defconfig_powerpc-gcc4.9 # Build took: 0:01:23.547601