[GIT PULL] x86/fpu for 6.2

From: Dave Hansen
Date: Mon Dec 12 2022 - 14:16:09 EST


Hi Linus,

Please pull some x86/fpu changes for v6.2. There are two little fixes
in here, one to give better XSAVE warnings and another to address
some undefined behavior in offsetof().

There is also a collection of patches to fix some issues with ptrace
and the protection keys register (PKRU). PKRU is a real oddity because
it is exposed in the XSAVE-related ABIs, but it is generally managed
without using XSAVE in the kernel. This fix thankfully came with a
selftest to ward off future regressions.

--

The following changes since commit f0c4d9fc9cc9462659728d168387191387e903cc:

Linux 6.1-rc4 (2022-11-06 15:07:11 -0800)

are available in the Git repository at:

https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git tags/x86_fpu_for_6.2

for you to fetch changes up to 55228db2697c09abddcb9487c3d9fa5854a932cd:

x86/fpu: Use _Alignof to avoid undefined behavior in TYPE_ALIGN (2022-11-22 17:13:03 +0100)

----------------------------------------------------------------
* Clarify XSAVE consistency warnings
* Fix up ptrace interface to protection keys register (PKRU)
* Avoid undefined compiler behavior with TYPE_ALIGN

----------------------------------------------------------------
Andrew Cooper (1):
x86/fpu/xstate: Fix XSTATE_WARN_ON() to emit relevant diagnostics

Kyle Huey (6):
x86/fpu: Take task_struct* in copy_sigframe_from_user_to_xstate()
x86/fpu: Add a pkru argument to copy_uabi_from_kernel_to_xstate().
x86/fpu: Add a pkru argument to copy_uabi_to_xstate()
x86/fpu: Allow PKRU to be (once again) written by ptrace.
x86/fpu: Emulate XRSTOR's behavior if the xfeatures PKRU bit is not set
selftests/vm/pkeys: Add a regression test for setting PKRU through ptrace

YingChi Long (1):
x86/fpu: Use _Alignof to avoid undefined behavior in TYPE_ALIGN

arch/x86/kernel/fpu/core.c | 19 ++--
arch/x86/kernel/fpu/init.c | 7 +-
arch/x86/kernel/fpu/regset.c | 2 +-
arch/x86/kernel/fpu/signal.c | 2 +-
arch/x86/kernel/fpu/xstate.c | 64 ++++++++++---
arch/x86/kernel/fpu/xstate.h | 4 +-
tools/testing/selftests/vm/pkey-x86.h | 12 +++
tools/testing/selftests/vm/protection_keys.c | 131 ++++++++++++++++++++++++++-
8 files changed, 208 insertions(+), 33 deletions(-)