From: Ingo Molnar <mingo@kernel.org>
To: "Chang S. Bae" <chang.seok.bae@intel.com>
Cc: linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org,
x86@kernel.org, tglx@linutronix.de, mingo@redhat.com,
bp@alien8.de, dave.hansen@linux.intel.com, shuah@kernel.org
Subject: Re: [PATCH 0/9] selftests/x86/xstate: Introduce common code for testing extended states
Date: Wed, 26 Feb 2025 13:07:47 +0100 [thread overview]
Message-ID: <Z78EE9cQ1FaF29zz@gmail.com> (raw)
In-Reply-To: <20250226010731.2456-1-chang.seok.bae@intel.com>
* Chang S. Bae <chang.seok.bae@intel.com> wrote:
> Hi all,
>
> This series proposes a rework of xstate-related tests to improve
> maintainability and expand test coverage.
>
> == Motivation: Addressing Missing and New XSTATE Tests ==
>
> With the introduction of AMX, a new test suite [1] was created to verify
> dynamic state handling by the kernel as observed from userspace. However,
> previous tests for non-dynamic states like AVX lacked ABI validation,
> leaving gaps in coverage. While these states currently function without
> major issues (following the alternate sigstack fix [2]), xstate testing
> in the x86 selftest suite has been largely overlooked.
>
> Now, with Intel introducing another extended state, Advanced Performance
> Extensions (APX) [3], a correspondent test case is need. The APX enabling
> series will follow shortly and will leverage this refactored selftest
> framework.
>
> == Selftest Code Rework ==
>
> To ensure ABI validation and core functionality across various xstates,
> refactoring the test code is necessary. Without this, existing code from
> amx.c would need to be duplicated, compromising the structural quality of
> xstate tests.
>
> This series introduces a shared test framework for extended state
> validation, applicable to both existing and new xstates. The test cases
> cover:
> * Context switching
> * ABI compatibility for signal handling
> * ABI compatibility for ptrace interactions
>
> == Patch Organization ==
>
> The patchset is structured as follows:
>
> * PATCH1: Preparatory cleanup — removing redundant signal handler
> registration code.
> * PATCH2/3: Introduce low-level XSAVE helpers and xstate component
> enumeration.
> * PATCH4/5: Refactor existing test code.
> * PATCH6: Introduce a new signal test case.
> * PATCH7/8: Consolidate test invocations and clarify the list of
> supported features.
> * PATCH9: Add test coverage for AVX.
>
> == Coverage and Future Work Considerations ==
>
> Currently, these tests are aligned with 64-bit mode only. Support for
> 32-bit cases will be considered when necessary, but only after this phase
> of rework is finalized.
>
> FWIW, the AMX TILECFG state is trivial, requiring almost constant values.
> Additionally, various PKRU tests are already established in
> tools/selftests/mm.
>
> This series is based on the tip/master branch. You can also find it in
> the following repository:
> git://github.com/intel/apx.git selftest-xstate_v1
>
> Thanks,
> Chang
>
> [1] https://lore.kernel.org/all/20211026122523.AFB99C1F@davehans-spike.ostc.intel.com/
> [2] https://lore.kernel.org/lkml/20210518200320.17239-1-chang.seok.bae@intel.com/
> [3] https://www.intel.com/content/www/us/en/developer/articles/technical/advanced-performance-extensions-apx.html
>
> Chang S. Bae (9):
> selftests/x86: Consolidate redundant signal helper functions
> selftests/x86/xstate: Refactor XSAVE helpers for general use
> selftests/x86/xstate: Enumerate and name xstate components
> selftests/x86/xstate: Refactor context switching test
> selftests/x86/xstate: Refactor ptrace ABI test
> selftests/x86/xstate: Introduce signal ABI test
> selftests/x86/xstate: Consolidate test invocations into a single entry
> selftests/x86/xstate: Clarify supported xstates
> selftests/x86/avx: Add AVX test
> 22 files changed, 753 insertions(+), 720 deletions(-)
Thank you very much for doing this - this series is a very big step
forward in this area.
I've applied your series to tip:x86/fpu with minor edits to the
changelogs, and if all goes fine it should all go upstream in the v6.15
merge window in a couple of weeks.
Thanks,
Ingo
prev parent reply other threads:[~2025-02-26 12:07 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-26 1:07 [PATCH 0/9] selftests/x86/xstate: Introduce common code for testing extended states Chang S. Bae
2025-02-26 1:07 ` [PATCH 1/9] selftests/x86: Consolidate redundant signal helper functions Chang S. Bae
2025-02-26 12:15 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-02-26 1:07 ` [PATCH 2/9] selftests/x86/xstate: Refactor XSAVE helpers for general use Chang S. Bae
2025-02-26 12:15 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-02-26 1:07 ` [PATCH 3/9] selftests/x86/xstate: Enumerate and name xstate components Chang S. Bae
2025-02-26 12:15 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-02-26 1:07 ` [PATCH 4/9] selftests/x86/xstate: Refactor context switching test Chang S. Bae
2025-02-26 12:15 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-02-26 1:07 ` [PATCH 5/9] selftests/x86/xstate: Refactor ptrace ABI test Chang S. Bae
2025-02-26 12:15 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-02-26 1:07 ` [PATCH 6/9] selftests/x86/xstate: Introduce signal " Chang S. Bae
2025-02-26 12:15 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-02-26 1:07 ` [PATCH 7/9] selftests/x86/xstate: Consolidate test invocations into a single entry Chang S. Bae
2025-02-26 12:15 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-02-26 1:07 ` [PATCH 8/9] selftests/x86/xstate: Clarify supported xstates Chang S. Bae
2025-02-26 12:15 ` [tip: x86/fpu] " tip-bot2 for Chang S. Bae
2025-02-26 1:07 ` [PATCH 9/9] selftests/x86/avx: Add AVX test Chang S. Bae
2025-02-26 12:15 ` [tip: x86/fpu] selftests/x86/avx: Add AVX tests tip-bot2 for Chang S. Bae
2025-02-26 12:07 ` Ingo Molnar [this message]
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=Z78EE9cQ1FaF29zz@gmail.com \
--to=mingo@kernel.org \
--cc=bp@alien8.de \
--cc=chang.seok.bae@intel.com \
--cc=dave.hansen@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=shuah@kernel.org \
--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 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.