]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ACPI: APEI: GHES: add TAINT_MACHINE_CHECK on GHES panic path
authorBreno Leitao <leitao@debian.org>
Wed, 2 Jul 2025 15:39:51 +0000 (08:39 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 28 Aug 2025 14:22:41 +0000 (16:22 +0200)
[ Upstream commit 4734c8b46b901cff2feda8b82abc710b65dc31c1 ]

When a GHES (Generic Hardware Error Source) triggers a panic, add the
TAINT_MACHINE_CHECK taint flag to the kernel. This explicitly marks the
kernel as tainted due to a machine check event, improving diagnostics
and post-mortem analysis. The taint is set with LOCKDEP_STILL_OK to
indicate lockdep remains valid.

At large scale deployment, this helps to quickly determine panics that
are coming due to hardware failures.

Signed-off-by: Breno Leitao <leitao@debian.org>
Reviewed-by: Tony Luck <tony.luck@intel.com>
Link: https://patch.msgid.link/20250702-add_tain-v1-1-9187b10914b9@debian.org
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/acpi/apei/ghes.c

index 72087e05b5a5f22841b6bccc6d226013278ad693..250ea9ec5f0c25280540f77d076edcb5455db53c 100644 (file)
@@ -860,6 +860,8 @@ static void __ghes_panic(struct ghes *ghes,
 
        __ghes_print_estatus(KERN_EMERG, ghes->generic, estatus);
 
+       add_taint(TAINT_MACHINE_CHECK, LOCKDEP_STILL_OK);
+
        ghes_clear_estatus(ghes, estatus, buf_paddr, fixmap_idx);
 
        if (!panic_timeout)