Thread (12 messages) 12 messages, 6 authors, 2017-12-04

[PATCH RT] arm*: disable NEON in kernel mode

From: peterz@infradead.org (Peter Zijlstra)
Date: 2017-12-01 17:39:58
Also in: linux-rt-users, lkml

On Fri, Dec 01, 2017 at 05:31:20PM +0000, Russell King - ARM Linux wrote:
On Fri, Dec 01, 2017 at 06:14:58PM +0100, Peter Zijlstra wrote:
quoted
Well, PREEMPT cares about that too.
Preempt may care, but it's the hit you take to use neon in the kernel.
The neon register set shares with the FPU, so preempting during that
path means that the normal FPU register saving would corrupt the
already saved user FPU context - and even worse would result in the
kernel's crypto function register contents being leaked to userspace.
Same thing on x86.
If you care about preempt deeply, the only solution is to avoid using
kernel mode neon.
Not quite, you can write the code such that it drops out of neon mode
regularly to allow preemption.

So setup a crypto block, enter neon, transform the block, drop out of
neon, rinse repeat.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help