Re: [PATCH v2 RESEND 4/4] selftests: firmware: Add NVIDIA GHES EINJ selftest
Shuai Xue <[email protected]> Sun, 26 Jul 2026 17:02:11 +0800
| Newsgroups | org.kernel.vger.linux-hardening,org.kernel.vger.linux-acpi,org.kernel.vger.linux-kernel,org.kernel.vger.linux-kselftest |
|---|---|
| Message-ID | <[email protected]> |
On 7/24/26 8:20 PM, Kai-Heng Feng wrote: > Exercise the full driver path on real Grace and Vera hardware using > ACPI EINJ to inject CPER sections and validate the kernel log output. > KUnit covers the parser in isolation; this test covers the path from > firmware notification through GUID dispatch to decoded output. > > Signed-off-by: Kai-Heng Feng <[email protected]> > --- > v2: > - No change. > > tools/testing/selftests/firmware/Makefile | 4 +- > tools/testing/selftests/firmware/config | 5 + > tools/testing/selftests/firmware/einj_lib.sh | 189 ++++++++++++++++++ > .../selftests/firmware/ghes_nvidia_einj.sh | 144 +++++++++++++ > .../firmware/ghes_nvidia_einj_profiles.sh | 46 +++++ > 5 files changed, 386 insertions(+), 2 deletions(-) > create mode 100644 tools/testing/selftests/firmware/einj_lib.sh > create mode 100755 tools/testing/selftests/firmware/ghes_nvidia_einj.sh > create mode 100755 tools/testing/selftests/firmware/ghes_nvidia_einj_profiles.sh > > diff --git a/tools/testing/selftests/firmware/Makefile b/tools/testing/selftests/firmware/Makefile > index 7992969deaa2..b753dd123860 100644 > --- a/tools/testing/selftests/firmware/Makefile > +++ b/tools/testing/selftests/firmware/Makefile > @@ -3,8 +3,8 @@ > CFLAGS = -Wall \ > -O2 > > -TEST_PROGS := fw_run_tests.sh > -TEST_FILES := fw_fallback.sh fw_filesystem.sh fw_upload.sh fw_lib.sh > +TEST_PROGS := fw_run_tests.sh ghes_nvidia_einj.sh > +TEST_FILES := fw_fallback.sh fw_filesystem.sh fw_upload.sh fw_lib.sh einj_lib.sh ghes_nvidia_einj_profiles.sh > TEST_GEN_FILES := fw_namespace I am not sure this belongs in the generic firmware selftests. This test requires root, debugfs, ACPI EINJ, NVIDIA-specific vendor EINJ metadata, a bound NVDA2012 device, and it writes EINJ controls before triggering error_inject. Even if the selected profiles are intended to be informational, this looks more like a platform RAS validation tool than a generic kselftest that should run as part of the firmware selftest suite. Would ras-tools be a better place for this? Tony Luck maintains that tree for RAS-related test and injection tooling, and this script seems to fit there better than tools/testing/selftests/firmware/. Please see: https://git.kernel.org/pub/scm/linux/kernel/git/aegl/ras-tools.git Thanks, Shuai