Hi Borislav,
On 04/26/2018 06:19 AM, Borislav Petkov wrote:
On Wed, Apr 25, 2018 at 03:39:50PM -0500, Alexandru Gagniuc wrote:
@@ -932,7 +971,7 @@ static void __process_error(struct ghes *ghes)
static int ghes_notify_nmi(unsigned int cmd, struct pt_regs *regs)
{
struct ghes *ghes;
- int sev, ret = NMI_DONE;
+ int sev, asev, ret = NMI_DONE;
if (!atomic_add_unless(&ghes_in_nmi, 1, 1))
return ret;
@@ -945,8 +984,9 @@ static int ghes_notify_nmi(unsigned int cmd, struct pt_regs *regs)
ret = NMI_HANDLED;
}
+ asev = ghes_actual_severity(ghes);
sev = ghes_severity(ghes->estatus->error_severity);
So renaming ghes_deferrable_severity() to ghes_actual_severity() is not
a big change. And that's not what I meant.
I'm sorry I misunderstood you.
I'd like to see here:
sev = ghes_severity(ghes);
sev = ghes_severity(ghes);
and inside you do all the required mapping/severity processing/etc. And
you can rename the current ghes_severity() to ghes_map_cper_severity()
or whatever...
I agree that the current ghes_severity() name is vague. I'll get it done
properly in v4 (next week).
- if (sev >= GHES_SEV_PANIC) {
+ if ((sev >= GHES_SEV_PANIC) && (asev >= GHES_SEV_PANIC)) {
... so that this change doesn't happen and there are not two severities
queried but a single one.
Two severities is a result of the wanky GHES data structure. Nothing
says we have to use the severity field in the header... if you're okay
with just ignoring it.
Alex
--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html