(subset) [PATCH v2 0/9] running kernel mode SIMD with softirqs disabled

Catalin Marinas catalin.marinas at arm.com
Mon Apr 12 14:11:13 BST 2021


On Tue, 2 Mar 2021 10:01:09 +0100, Ard Biesheuvel wrote:
> [ TL;DR for the non-ARM folks on CC: disabling softirq processing when using
>   SIMD in kernel mode could reduce complexity and improve performance, but we
>   need to decide whether we can do this, and how much softirq processing
>   latency we can tolerate. If we can find a satisfactory solution for this,
>   we might do the same for x86 and 32-bit ARM as well.
> 
>   However, based on preliminary off-list discussions with peterz and luto, it
>   seems that for x86, there is a preference for using per-CPU buffers to
>   preserve/restore the task context's kernel mode SIMD state when the task is
>   interrupted to perform kernel mode SIMD in softirq context. On arm64, we
>   actually had this arrangement before, and removed it because it made
>   reasoning about preserving/restoring userland SVE state (32 SIMD registers
>   of up to 2 kbit in size) rather complex. ]
> 
> [...]

Applied to arm64 (for-next/neon-softirqs-disabled), thanks!

[1/9] arm64: assembler: remove conditional NEON yield macros
      https://git.kernel.org/arm64/c/27248fe1abb2
[2/9] arm64: assembler: introduce wxN aliases for wN registers
      https://git.kernel.org/arm64/c/4c4dcd3541f8
[3/9] arm64: fpsimd: run kernel mode NEON with softirqs disabled
      https://git.kernel.org/arm64/c/13150149aa6d

-- 
Catalin




More information about the linux-arm-kernel mailing list