# 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_pseries_defconfig+FA_DUMP_powerpc-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux- pseries_defconfig # Added to kconfig CONFIG_CRASH_DUMP=y # Added to kconfig CONFIG_FA_DUMP=y # < make -s -j 120 ARCH=powerpc O=/kisskb/build/powerpc-next_pseries_defconfig+FA_DUMP_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_pseries_defconfig+FA_DUMP_powerpc-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux- olddefconfig .config:4093:warning: override: reassigning to symbol CRASH_DUMP .config:4094:warning: override: reassigning to symbol FA_DUMP # make -s -j 120 ARCH=powerpc O=/kisskb/build/powerpc-next_pseries_defconfig+FA_DUMP_powerpc-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux- /kisskb/src/drivers/net/ethernet/chelsio/cxgb4/sge.c: In function 'cxgb4_write_partial_sgl': /kisskb/src/drivers/net/ethernet/chelsio/cxgb4/sge.c:910:9: warning: missing braces around initializer [-Wmissing-braces] struct ulptx_sge_pair buf[MAX_SKB_FRAGS / 2 + 1] = {0}, *to; ^ /kisskb/src/drivers/net/ethernet/chelsio/cxgb4/sge.c:910:9: warning: (near initialization for 'buf[0]') [-Wmissing-braces] /kisskb/src/fs/btrfs/tree-checker.c: In function 'check_root_item': /kisskb/src/fs/btrfs/tree-checker.c:1071:9: warning: missing braces around initializer [-Wmissing-braces] struct btrfs_root_item ri = { 0 }; ^ /kisskb/src/fs/btrfs/tree-checker.c:1071:9: warning: (near initialization for 'ri.inode') [-Wmissing-braces] Completed OK # rm -rf /kisskb/build/powerpc-next_pseries_defconfig+FA_DUMP_powerpc-gcc4.9 # Build took: 0:02:04.095329