[PATCH 4/8] ras: aest: Add panic_on_ue module parameter
Umang Chheda
umang.chheda at oss.qualcomm.com
Tue May 5 05:23:48 PDT 2026
The driver unconditionally calls panic() whenever an unrecoverable,
uncontainable UE (UET_UC or UET_UEU) is detected. There is no way
for the user to suppress this behaviour, which makes it difficult to
test UE injection or to run in environments where a kernel panic on
every UE is undesirable.
Add a module parameter `aest_panic_on_ue` When set to 0 the driver
logs the UE and continues instead of panicking.
Usage:
# Boot time (kernel cmdline)
aest.aest_panic_on_ue=0
# Runtime
echo 0 > /sys/module/aest/parameters/aest_panic_on_ue
Signed-off-by: Umang Chheda <umang.chheda at oss.qualcomm.com>
---
drivers/ras/aest/aest-core.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/drivers/ras/aest/aest-core.c b/drivers/ras/aest/aest-core.c
index b4f4c975da1d..9ce782a66edf 100644
--- a/drivers/ras/aest/aest-core.c
+++ b/drivers/ras/aest/aest-core.c
@@ -22,6 +22,11 @@ DEFINE_PER_CPU(struct aest_device, percpu_adev);
#undef pr_fmt
#define pr_fmt(fmt) "AEST: " fmt
+static bool aest_panic_on_ue;
+module_param(aest_panic_on_ue, bool, 0644);
+MODULE_PARM_DESC(aest_panic_on_ue,
+ "Panic on unrecoverable error: 0=off 1=on (default: 1)");
+
#ifdef CONFIG_DEBUG_FS
struct dentry *aest_debugfs;
#endif
@@ -342,9 +347,11 @@ void aest_proc_record(struct aest_record *record, void *data, bool fake)
aest_record_info(
record,
"Simulated error! Skip panic due to fault injection\n");
- else
+ else if (aest_panic_on_ue)
aest_panic(record, ®s,
"AEST: unrecoverable error encountered");
+ else
+ aest_record_err(record, "UE detected, panic suppressed\n");
}
aest_log(record, ®s);
--
2.34.1
More information about the linux-arm-kernel
mailing list