# 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-9.2.0-nolibc/powerpc64-linux/bin/powerpc64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-9.2.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld --version # < git log --format=%s --max-count=1 5ad0e6cf98ac177bdc3d162dda4af5253b0f0d78 # < make -s -j 48 ARCH=powerpc O=/kisskb/build/powerpc-next_powernv_defconfig+NO_RADIX_powerpc-gcc9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-9.2.0-nolibc/powerpc64-linux/bin/powerpc64-linux- powernv_defconfig # Added to kconfig CONFIG_PPC_RADIX_MMU=n # < make -s -j 48 ARCH=powerpc O=/kisskb/build/powerpc-next_powernv_defconfig+NO_RADIX_powerpc-gcc9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-9.2.0-nolibc/powerpc64-linux/bin/powerpc64-linux- help # make -s -j 48 ARCH=powerpc O=/kisskb/build/powerpc-next_powernv_defconfig+NO_RADIX_powerpc-gcc9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-9.2.0-nolibc/powerpc64-linux/bin/powerpc64-linux- olddefconfig # make -s -j 48 ARCH=powerpc O=/kisskb/build/powerpc-next_powernv_defconfig+NO_RADIX_powerpc-gcc9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-9.2.0-nolibc/powerpc64-linux/bin/powerpc64-linux- /kisskb/src/drivers/net/phy/phy_device.c:293:12: warning: 'mdio_bus_phy_resume' defined but not used [-Wunused-function] 293 | static int mdio_bus_phy_resume(struct device *dev) | ^~~~~~~~~~~~~~~~~~~ /kisskb/src/drivers/net/phy/phy_device.c:273:12: warning: 'mdio_bus_phy_suspend' defined but not used [-Wunused-function] 273 | static int mdio_bus_phy_suspend(struct device *dev) | ^~~~~~~~~~~~~~~~~~~~ Completed OK # rm -rf /kisskb/build/powerpc-next_powernv_defconfig+NO_RADIX_powerpc-gcc9 # Build took: 0:03:47.598412