From: "Chang S. Bae" <chang.seok.bae@intel.com>
To: linux-kernel@vger.kernel.org
Cc: x86@kernel.org, tglx@linutronix.de, mingo@redhat.com,
bp@alien8.de, dave.hansen@linux.intel.com,
chang.seok.bae@intel.com
Subject: [PATCH RFC v1 06/11] x86/fpu/mpx: Remove MPX xstate component support
Date: Thu, 27 Feb 2025 10:44:51 -0800 [thread overview]
Message-ID: <20250227184502.10288-7-chang.seok.bae@intel.com> (raw)
In-Reply-To: <20250227184502.10288-1-chang.seok.bae@intel.com>
A new xstate component is set to occupy the position previously used by
MPX in the non-compacted format, then creating a fundamental conflict
between the two.
Currently, xfeature_noncompact_order[] includes MPX, but the introduction
of the new feature would cause a direct conflict there unless MPX is
removed. Fortunately, MPX support has already been deprecated and
effectively removed by commit:
45fc24e89b7c ("x86/mpx: remove MPX from arch/x86")
Explicitly disable the deprecated feature to reserve a space for the new
xstate.
Signed-off-by: Chang S. Bae <chang.seok.bae@intel.com>
---
Several code references to this feature macro remain, primarily on the
KVM side. While they are likely to become obsolete after this patch,
their cleanup has been deferred at this review stage: This can be
addressed in a follow-up patch or included as an optional part of APX
enablement, I suppose.
---
arch/x86/include/asm/fpu/xstate.h | 2 --
arch/x86/kernel/fpu/xstate.c | 8 --------
2 files changed, 10 deletions(-)
diff --git a/arch/x86/include/asm/fpu/xstate.h b/arch/x86/include/asm/fpu/xstate.h
index 7f39fe7980c5..e87d36a31ab1 100644
--- a/arch/x86/include/asm/fpu/xstate.h
+++ b/arch/x86/include/asm/fpu/xstate.h
@@ -30,8 +30,6 @@
XFEATURE_MASK_ZMM_Hi256 | \
XFEATURE_MASK_Hi16_ZMM | \
XFEATURE_MASK_PKRU | \
- XFEATURE_MASK_BNDREGS | \
- XFEATURE_MASK_BNDCSR | \
XFEATURE_MASK_XTILE)
/*
diff --git a/arch/x86/kernel/fpu/xstate.c b/arch/x86/kernel/fpu/xstate.c
index d04221d0fa0a..16f45fff8811 100644
--- a/arch/x86/kernel/fpu/xstate.c
+++ b/arch/x86/kernel/fpu/xstate.c
@@ -69,8 +69,6 @@ static unsigned short xsave_cpuid_features[] __initdata = {
[XFEATURE_FP] = X86_FEATURE_FPU,
[XFEATURE_SSE] = X86_FEATURE_XMM,
[XFEATURE_YMM] = X86_FEATURE_AVX,
- [XFEATURE_BNDREGS] = X86_FEATURE_MPX,
- [XFEATURE_BNDCSR] = X86_FEATURE_MPX,
[XFEATURE_OPMASK] = X86_FEATURE_AVX512F,
[XFEATURE_ZMM_Hi256] = X86_FEATURE_AVX512F,
[XFEATURE_Hi16_ZMM] = X86_FEATURE_AVX512F,
@@ -101,8 +99,6 @@ static const enum xfeature xfeature_noncompact_order[] = {
XFEATURE_FP,
XFEATURE_SSE,
XFEATURE_YMM,
- XFEATURE_BNDREGS,
- XFEATURE_BNDCSR,
XFEATURE_OPMASK,
XFEATURE_ZMM_Hi256,
XFEATURE_Hi16_ZMM,
@@ -360,8 +356,6 @@ static __init void os_xrstor_booting(struct xregs_state *xstate)
XFEATURE_MASK_ZMM_Hi256 | \
XFEATURE_MASK_Hi16_ZMM | \
XFEATURE_MASK_PKRU | \
- XFEATURE_MASK_BNDREGS | \
- XFEATURE_MASK_BNDCSR | \
XFEATURE_MASK_PASID | \
XFEATURE_MASK_CET_USER | \
XFEATURE_MASK_XTILE)
@@ -555,8 +549,6 @@ static bool __init check_xstate_against_struct(int nr)
*/
switch (nr) {
case XFEATURE_YMM: return XCHECK_SZ(sz, nr, struct ymmh_struct);
- case XFEATURE_BNDREGS: return XCHECK_SZ(sz, nr, struct mpx_bndreg_state);
- case XFEATURE_BNDCSR: return XCHECK_SZ(sz, nr, struct mpx_bndcsr_state);
case XFEATURE_OPMASK: return XCHECK_SZ(sz, nr, struct avx_512_opmask_state);
case XFEATURE_ZMM_Hi256: return XCHECK_SZ(sz, nr, struct avx_512_zmm_uppers_state);
case XFEATURE_Hi16_ZMM: return XCHECK_SZ(sz, nr, struct avx_512_hi16_state);
--
2.45.2
next prev parent reply other threads:[~2025-02-27 18:45 UTC|newest]
Thread overview: 112+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-27 18:44 [PATCH RFC v1 00/11] x86: Support Intel Advanced Performance Extensions Chang S. Bae
2025-02-27 18:44 ` [PATCH RFC v1 01/11] x86/fpu/xstate: Simplify print_xstate_features() Chang S. Bae
2025-02-27 18:51 ` Dave Hansen
2025-02-27 18:52 ` Ingo Molnar
2025-02-27 19:04 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-02-27 18:44 ` [PATCH RFC v1 02/11] x86/fpu/xstate: Introduce xstate order table and accessor macro Chang S. Bae
2025-02-27 19:03 ` Dave Hansen
2025-02-27 19:34 ` Andrew Cooper
2025-02-27 19:42 ` Ingo Molnar
2025-03-20 23:46 ` Chang S. Bae
2025-02-27 19:05 ` Ingo Molnar
2025-02-27 19:32 ` Dave Hansen
2025-02-27 19:36 ` Ingo Molnar
2025-02-27 19:49 ` Andrew Cooper
2025-02-27 20:06 ` Ingo Molnar
2025-02-27 21:10 ` Andrew Cooper
2025-02-27 21:28 ` Ingo Molnar
2025-02-27 21:30 ` Ingo Molnar
2025-02-27 22:23 ` Andrew Cooper
2025-02-28 3:10 ` Chang S. Bae
2025-02-28 17:11 ` Ingo Molnar
2025-02-27 19:56 ` Dave Hansen
2025-02-27 20:02 ` Ingo Molnar
2025-02-27 20:19 ` Dave Hansen
2025-02-27 20:29 ` Ingo Molnar
2025-02-27 21:17 ` Dave Hansen
2025-02-27 21:37 ` Ingo Molnar
2025-02-27 23:54 ` Dave Hansen
2025-02-28 15:20 ` Sean Christopherson
2025-02-27 18:44 ` [PATCH RFC v1 03/11] x86/fpu/xstate: Remove xstate offset check Chang S. Bae
2025-02-27 18:44 ` [PATCH RFC v1 04/11] x86/fpu/xstate: Adjust XSAVE buffer size calculation Chang S. Bae
2025-02-27 18:44 ` [PATCH RFC v1 05/11] x86/fpu/xstate: Adjust xstate copying logic for user ABI Chang S. Bae
2025-02-27 18:44 ` Chang S. Bae [this message]
2025-02-27 19:12 ` [PATCH RFC v1 06/11] x86/fpu/mpx: Remove MPX xstate component support Ingo Molnar
2025-02-28 3:12 ` Chang S. Bae
2025-03-20 23:47 ` Chang S. Bae
2025-04-01 17:13 ` Chang S. Bae
2025-02-27 18:44 ` [PATCH RFC v1 07/11] x86/cpufeatures: Add X86_FEATURE_APX Chang S. Bae
2025-02-27 18:44 ` [PATCH RFC v1 08/11] x86/fpu/apx: Define APX state component Chang S. Bae
2025-02-27 18:44 ` [PATCH RFC v1 09/11] x86/fpu/apx: Disallow conflicting MPX presence Chang S. Bae
2025-02-27 23:16 ` Dave Hansen
2025-02-27 23:58 ` Chang S. Bae
2025-02-27 18:44 ` [PATCH RFC v1 10/11] x86/fpu/apx: Enable APX state support Chang S. Bae
2025-02-27 18:44 ` [PATCH RFC v1 11/11] selftests/x86/apx: Add APX test Chang S. Bae
2025-02-27 19:15 ` [PATCH RFC v1 00/11] x86: Support Intel Advanced Performance Extensions Ingo Molnar
2025-02-27 19:36 ` Dave Hansen
2025-02-28 3:10 ` Chang S. Bae
2025-03-20 23:42 ` [PATCH RFC v2 0/9] " Chang S. Bae
2025-03-20 23:42 ` [PATCH RFC v2 1/9] x86/fpu/xstate: Remove xstate offset check Chang S. Bae
2025-03-25 10:18 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-04-14 7:34 ` [tip: x86/merge] " tip-bot2 for Chang S. Bae
2025-03-20 23:42 ` [PATCH RFC v2 2/9] x86/fpu/xstate: Introduce xfeature order table and accessor macro Chang S. Bae
2025-03-25 10:18 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-04-14 7:34 ` [tip: x86/merge] " tip-bot2 for Chang S. Bae
2025-03-20 23:42 ` [PATCH RFC v2 3/9] x86/fpu/xstate: Adjust XSAVE buffer size calculation Chang S. Bae
2025-03-25 10:28 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-04-14 7:34 ` [tip: x86/merge] " tip-bot2 for Chang S. Bae
2025-03-20 23:42 ` [PATCH RFC v2 4/9] x86/fpu/xstate: Adjust xstate copying logic for user ABI Chang S. Bae
2025-03-25 10:18 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-03-25 10:28 ` tip-bot2 for Chang S. Bae
2025-04-14 7:34 ` [tip: x86/merge] " tip-bot2 for Chang S. Bae
2025-03-20 23:42 ` [PATCH RFC v2 5/9] x86/cpufeatures: Add X86_FEATURE_APX Chang S. Bae
2025-04-11 16:12 ` [PATCH RFC v2a " Chang S. Bae
2025-04-11 16:54 ` Sohil Mehta
2025-04-11 18:23 ` Chang S. Bae
2025-04-11 21:57 ` Sohil Mehta
2025-04-12 8:43 ` Ingo Molnar
2025-04-14 8:23 ` Ingo Molnar
2025-04-14 17:28 ` Sohil Mehta
2025-04-14 17:32 ` Dave Hansen
2025-04-14 17:45 ` Sohil Mehta
2025-04-14 18:02 ` Chang S. Bae
2025-04-14 18:12 ` Sohil Mehta
2025-04-14 18:31 ` Chang S. Bae
2025-04-16 2:16 ` [PATCH 00/10] x86/fpu: APX enablement and assorted FPU code improvements Chang S. Bae
2025-04-16 2:16 ` [PATCH 01/10] x86/cpufeatures: Add X86_FEATURE_APX Chang S. Bae
2025-04-16 8:17 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-04-16 2:16 ` [PATCH 02/10] x86/fpu/apx: Define APX state component Chang S. Bae
2025-04-16 8:17 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-04-16 2:16 ` [PATCH 03/10] x86/fpu/apx: Disallow conflicting MPX presence Chang S. Bae
2025-04-16 8:17 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-04-16 2:16 ` [PATCH 04/10] x86/fpu/apx: Enable APX state support Chang S. Bae
2025-04-16 8:17 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-04-16 2:16 ` [PATCH 05/10] selftests/x86/apx: Add APX test Chang S. Bae
2025-04-16 8:17 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-04-16 2:16 ` [PATCH 06/10] x86/fpu: Log XSAVE disablement consistently Chang S. Bae
2025-04-16 8:17 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-04-16 16:56 ` [PATCH 06/10] " Sohil Mehta
2025-04-16 17:03 ` Chang S. Bae
2025-04-16 18:04 ` Sohil Mehta
2025-04-16 2:16 ` [PATCH 07/10] x86/fpu: Refactor xfeature bitmask update code for sigframe XSAVE Chang S. Bae
2025-04-16 8:05 ` Ingo Molnar
2025-04-16 16:55 ` Chang S. Bae
2025-04-16 8:17 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-04-16 2:16 ` [PATCH 08/10] x86/pkeys: Simplify PKRU update in signal frame Chang S. Bae
2025-04-16 8:17 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-04-16 2:16 ` [PATCH 09/10] x86/fpu: Remove export of mxcsr_feature_mask Chang S. Bae
2025-04-16 8:17 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-04-16 2:17 ` [PATCH 10/10] x86/fpu: Rename fpu_reset_fpregs() to fpu_reset_fpstate_regs() Chang S. Bae
2025-04-16 8:17 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-04-16 8:07 ` [PATCH 00/10] x86/fpu: APX enablement and assorted FPU code improvements Ingo Molnar
2025-04-16 16:56 ` Chang S. Bae
2025-03-20 23:42 ` [PATCH RFC v2 6/9] x86/fpu/apx: Define APX state component Chang S. Bae
2025-04-11 22:54 ` Sohil Mehta
2025-03-20 23:42 ` [PATCH RFC v2 7/9] x86/fpu/apx: Disallow conflicting MPX presence Chang S. Bae
2025-04-14 17:09 ` Sohil Mehta
2025-04-14 17:25 ` Dave Hansen
2025-03-20 23:42 ` [PATCH RFC v2 8/9] x86/fpu/apx: Enable APX state support Chang S. Bae
2025-04-14 15:41 ` Sohil Mehta
2025-03-20 23:43 ` [PATCH RFC v2 9/9] selftests/x86/apx: Add APX test Chang S. Bae
2025-04-14 16:02 ` Sohil Mehta
2025-03-25 10:25 ` [PATCH RFC v2 0/9] x86: Support Intel Advanced Performance Extensions Ingo Molnar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250227184502.10288-7-chang.seok.bae@intel.com \
--to=chang.seok.bae@intel.com \
--cc=bp@alien8.de \
--cc=dave.hansen@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=tglx@linutronix.de \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®