All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH  v7 0/5] x86/pkeys: update PKRU to enable pkey 0 before
@ 2024-08-01  6:51 Aruna Ramakrishna
  2024-08-01  6:51 ` [PATCH v7 1/5] x86/pkeys: Add PKRU as a parameter in signal handling functions Aruna Ramakrishna
                   ` (4 more replies)
  0 siblings, 5 replies; 9+ messages in thread
From: Aruna Ramakrishna @ 2024-08-01  6:51 UTC (permalink / raw)
  To: linux-kernel
  Cc: x86, dave.hansen, tglx, mingo, linux-mm, keith.lucas, jeffxu,
	rick.p.edgecombe, jorgelo, keescook, sroettger, jannh,
	aruna.ramakrishna

v7 updates:
- Rebased patchset to v6.11.0-rc1
- Removed ia32 and x32 function interface changes as PKRU is only
  supported in 64-bit mode, as suggested by Jeff Xu

v6 updates:
- Rebased patchset to v6.10.0-rc5
- Changed sig_prepare_pkru() back to enabling all pkeys, based on
  discussion with Jeff Xu

v5 updates:
- No major changes, mostly a resend of v4 - except for updating the
  commit description for patch 5/5

v4 updates (based on review feedback from Thomas Gleixner):
- Simplified update_pkru_in_sigframe()
- Changed sigpkru to enable minimally required keys (init_pkru and
  current
  pkru)
- Modified pkey_sighandler_tests.c to use kselfttest framework
- Fixed commit descriptions
- Fixed sigreturn use case (pointed out by Jeff Xu)
- Added a new sigreturn test case

v3 updates (based on review feedback from Ingo Molnar and Dave Hansen):
- Split the original patch into 3:
        - function interface changes
        - helper functions
        - functional change to write pkru on sigframe
- Enabled all pkeys before XSAVE - i.e. wrpkru(0), rather than assuming
that the alt sig stack is always protected by pkey 0.
- Added a few test cases in pkey_sighandler_tests.c.

I had some trouble adding these tests to
tools/testing/selftests/mm/protection_keys.c, so they're in a separate
file.

Aruna Ramakrishna (4):
  x86/pkeys: Add PKRU as a parameter in signal handling functions
  x86/pkeys: Add helper functions to update PKRU on the sigframe
  x86/pkeys: Update PKRU to enable all pkeys before XSAVE
  x86/pkeys: Restore altstack before sigcontext

Keith Lucas (1):
  selftests/mm: Add new testcases for pkeys

 arch/x86/include/asm/fpu/signal.h             |   2 +-
 arch/x86/kernel/fpu/signal.c                  |  27 +-
 arch/x86/kernel/fpu/xstate.c                  |  13 +
 arch/x86/kernel/fpu/xstate.h                  |   2 +
 arch/x86/kernel/signal.c                      |  29 +-
 arch/x86/kernel/signal_64.c                   |   6 +-
 tools/testing/selftests/mm/Makefile           |   2 +
 tools/testing/selftests/mm/pkey-helpers.h     |  11 +-
 .../selftests/mm/pkey_sighandler_tests.c      | 479 ++++++++++++++++++
 tools/testing/selftests/mm/protection_keys.c  |  10 -
 10 files changed, 560 insertions(+), 21 deletions(-)
 create mode 100644 tools/testing/selftests/mm/pkey_sighandler_tests.c


base-commit: 8400291e289ee6b2bf9779ff1c83a291501f017b
prerequisite-patch-id: 7b2144970da943b19b53baab525a0fc653fcd7b8
-- 
2.39.3



^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2024-08-01 20:19 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-01  6:51 [PATCH v7 0/5] x86/pkeys: update PKRU to enable pkey 0 before Aruna Ramakrishna
2024-08-01  6:51 ` [PATCH v7 1/5] x86/pkeys: Add PKRU as a parameter in signal handling functions Aruna Ramakrishna
2024-08-01  6:51 ` [PATCH v7 2/5] x86/pkeys: Add helper functions to update PKRU on the sigframe Aruna Ramakrishna
2024-08-01  8:57   ` Thomas Gleixner
2024-08-01 20:14     ` Aruna Ramakrishna
2024-08-01 20:18       ` Thomas Gleixner
2024-08-01  6:51 ` [PATCH v7 3/5] x86/pkeys: Update PKRU to enable all pkeys before XSAVE Aruna Ramakrishna
2024-08-01  6:51 ` [PATCH v7 4/5] x86/pkeys: Restore altstack before sigcontext Aruna Ramakrishna
2024-08-01  6:51 ` [PATCH v7 5/5] selftests/mm: Add new testcases for pkeys Aruna Ramakrishna

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.