]> git.baikalelectronics.ru Git - kernel.git/commit
arm64: ptrace: Flush FPSIMD regs back to thread_struct before reading
authorDave Martin <Dave.Martin@arm.com>
Wed, 21 Jun 2017 15:00:43 +0000 (16:00 +0100)
committerWill Deacon <will.deacon@arm.com>
Thu, 22 Jun 2017 14:58:19 +0000 (15:58 +0100)
commit4ce91c2efdb98fa890c146763a2a049d38258bb8
tree96a8624bb07d0971286d9972c7b3c41f9c98c871
parentf914885e336686b275afcde34aa7dccd99f0a8b9
arm64: ptrace: Flush FPSIMD regs back to thread_struct before reading

When reading the FPSIMD state of current (which occurs when dumping
core), it is possible that userspace has modified the FPSIMD
registers since the time the task was last scheduled out.  Such
changes are not guaranteed to be reflected immedately in
thread_struct.

As a result, a coredump can contain stale values for these
registers.  Reading the registers of a stopped task via ptrace is
unaffected.

This patch explicitly flushes the CPU state back to thread_struct
before dumping when operating on current, thus ensuring that
coredump contents are up to date.

Signed-off-by: Dave Martin <Dave.Martin@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm64/kernel/ptrace.c