lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<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

Powered by Openwall GNU/*/Linux Powered by OpenVZ