On Wed, Dec 7, 2022 at 11:39 AM Ard Biesheuvel <ardb@xxxxxxxxxx> wrote: > We currently only permit kernel mode NEON in process context, to avoid > the need to preserve/restore the NEON register file when taking an > exception while running in the kernel. > > Like we did on arm64, we can relax this restriction substantially, by > permitting kernel mode NEON from softirq context, while ensuring that > softirq processing is disabled when the NEON is being used in task > context. This guarantees that only NEON context belonging to user space > needs to be preserved and restored, which is already taken care of. > > This is especially relevant for network encryption, where incoming > frames are typically handled in softirq context, and deferring software > decryption to a kernel thread or falling back to C code are both > undesirable from a performance PoV. > > Signed-off-by: Ard Biesheuvel <ardb@xxxxxxxxxx> So boosting WireGuard as primary SW network encryption user? This is really neat, BTW: Reviewed-by: Linus Walleij <linus.walleij@xxxxxxxxxx> Yours, Linus Walleij