[PATCH v5 0/3] arm64/fpsimd: Don't disable softirq when touching FPSIMD/SVE state

From: Julien Grall
Date: Tue May 21 2019 - 13:24:28 EST


Hi all,

This patch series keeps softirqs enabled while touching FPSIMD/SVE state.
For more details on the impact see patch #3.

This patch series has been benchmarked on Linux 5.1-rc4 with defconfig.

On Juno2:
* hackbench 100 process 1000 (10 times)
* .7% quicker

On ThunderX 2:
* hackbench 1000 process 1000 (20 times)
* 3.4% quicker

Note that while the benchmark has been done on 5.1-rc4, the patch series is
based on 5.2-rc1.

Cheers,

Julien Grall (3):
arm64/fpsimd: Remove the prototype for sve_flush_cpu_state()
arch/arm64: fpsimd: Introduce fpsimd_save_and_flush_cpu_state() and
use it
arm64/fpsimd: Don't disable softirq when touching FPSIMD/SVE state

arch/arm64/include/asm/fpsimd.h | 5 +-
arch/arm64/include/asm/simd.h | 10 +--
arch/arm64/kernel/fpsimd.c | 139 +++++++++++++++++++++++++++-------------
arch/arm64/kvm/fpsimd.c | 4 +-
4 files changed, 103 insertions(+), 55 deletions(-)

--
2.11.0