diff options
author | 2021-06-22 15:30:36 +1000 | |
---|---|---|
committer | 2021-06-25 00:07:11 +1000 | |
commit | f35d2f249ef05b9671e7898f09ad89aa78f99122 (patch) | |
tree | a9d77c3f07d071372ba6ddf838a470b09108444e /tools/perf/scripts/python/export-to-postgresql.py | |
parent | powerpc/32: Avoid #ifdef nested with FTR_SECTION on booke syscall entry (diff) | |
download | wireguard-linux-f35d2f249ef05b9671e7898f09ad89aa78f99122.tar.xz wireguard-linux-f35d2f249ef05b9671e7898f09ad89aa78f99122.zip |
powerpc/64s: Fix copy-paste data exposure into newly created tasks
copy-paste contains implicit "copy buffer" state that can contain
arbitrary user data (if the user process executes a copy instruction).
This could be snooped by another process if a context switch hits while
the state is live. So cp_abort is executed on context switch to clear
out possible sensitive data and prevent the leak.
cp_abort is done after the low level _switch(), which means it is never
reached by newly created tasks, so they could snoop on this buffer
between their first and second context switch.
Fix this by doing the cp_abort before calling _switch. Add some
comments which should make the issue harder to miss.
Fixes: 07d2a628bc000 ("powerpc/64s: Avoid cpabort in context switch when possible")
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20210622053036.474678-1-npiggin@gmail.com
Diffstat (limited to 'tools/perf/scripts/python/export-to-postgresql.py')
0 files changed, 0 insertions, 0 deletions