[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Z78EE9cQ1FaF29zz@gmail.com>
Date: Wed, 26 Feb 2025 13:07:47 +0100
From: Ingo Molnar <mingo@...nel.org>
To: "Chang S. Bae" <chang.seok.bae@...el.com>
Cc: linux-kernel@...r.kernel.org, linux-kselftest@...r.kernel.org,
x86@...nel.org, tglx@...utronix.de, mingo@...hat.com, bp@...en8.de,
dave.hansen@...ux.intel.com, shuah@...nel.org
Subject: Re: [PATCH 0/9] selftests/x86/xstate: Introduce common code for
testing extended states
* Chang S. Bae <chang.seok.bae@...el.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
Powered by blists - more mailing lists