Skip to contentSkip to conversation

WHEA Support in Linux

DISCUSSION Manish 2 participants 4 messages Feb 26, 2013 – Mar 1, 2013 ACPI

lore
Share & tools
lore

Manish

author
#0 lore raw

Can anyone please help me with details regarding the support for WHEA (Windows Hardware Error Architecture) in Linux.
WHEA is supported in ACPI 5.0 specification.

I'm getting the following message in dmesg log from RHEL:
"ERST: Could not register with persistent Store"

Can anyone please let me know the scenarios in which this message comes.

Thanks,
Manish.

#1 lore raw
Quoted 9 lines · Manish

Date: Tue, 26 Feb 2013 04:40:37 +0000 (UTC)
From: Manish <[email protected]>
To: [email protected]
Subject: WHEA Support in Linux
User-Agent: Loom/3.14 (http://gmane.org/)

Can anyone please help me with details regarding the support for WHEA (Windows Hardware Error Architecture) in Linux.
WHEA is supported in ACPI 5.0 specification.

Linux since 3.1(in fact, earlier than it in different style) has supported WHEA.

Quoted 4 lines

I'm getting the following message in dmesg log from RHEL:
"ERST: Could not register with persistent Store"

You don't compile pstore support/not loaded it as a module/no NVRAM, UEFI runtime space etc. to support pstore.

Quoted 11 lines

Can anyone please let me know the scenarios in which this message comes.

Thanks,
Manish.

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html

author
#2 lore raw

Thanks a lot for your quick response.

How can we verify that a particular version of Linux supports WHEA or not? In Windows, OSC method returns supported for the Whea Guid. Is it applicable also for Linux?
Also, In Windows, Error Injection is verifed using WHEA HCT tool and the Errors are logged in Windows Event Viewer.
Is there any such facility/tool available to verify Error Injection (EINJ) stack in Linux?
Also, Is there any thing similar to Event Viewer of Windows in Linux where the WHEA errors are logged?

(I'm getting the following message in dmesg log from RHEL:
"ERST: Could not register with persistent Store"

You don't compile pstore support/not loaded it as a module/no NVRAM, UEFI runtime space etc. to support pstore.)

As far as the above ERST dmesg is concerned, We are allocating a Flash Block for ERST persistent store.
The persistent store will be used for Writing/Reading an Error Record by the OS in case of NMI when fatal error is generated.
In case of fatal error from Windows, it is getting written as well as Read correctly from the persistent store and error is avialable in Event Viewer. Can you please help us to narrow down this issue or in what could be reason for this error in dmesg log.

Regards,
Manish.

#3 lore raw
Quoted 9 lines · Manish

Date: Wed, 27 Feb 2013 19:00:53 +0000 (UTC)
From: Manish <[email protected]>
To: [email protected]
Subject: Re: WHEA Support in Linux
User-Agent: Loom/3.14 (http://gmane.org/)

Quoted 5 lines

Thanks a lot for your quick response.

How can we verify that a particular version of Linux supports WHEA or not? In Windows, OSC method returns supported for the Whea Guid. Is it applicable also for Linux?

Check drivers/acpi/apei/ghes.c, in function ghes_init:
...

        rc = apei_osc_setup();
        if (rc == 0 && osc_sb_apei_support_acked)
                pr_info(GHES_PFX "APEI firmware first mode is enabled by APEI bit and WHEA _OSC.\n");
        else if (rc == 0 && !osc_sb_apei_support_acked)
                pr_info(GHES_PFX "APEI firmware first mode is enabled by WHEA _OSC.\n");
        else if (rc && osc_sb_apei_support_acked)
                pr_info(GHES_PFX "APEI firmware first mode is enabled by APEI bit.\n");
        else
                pr_info(GHES_PFX "Failed to enable APEI firmware first mode.\n");

...
search above output from dmesg.

Quoted 4 lines

Also, In Windows, Error Injection is verifed using WHEA HCT tool and the Errors are logged in Windows Event Viewer.
Is there any such facility/tool available to verify Error Injection (EINJ) stack in Linux?

modprob einj and use it. Or you can use mce-test to do this:
git://git.kernel.org/pub/scm/linux/kernel/git/gong.chen/mce-test.git

read it and use it by youself.

Quoted 3 lines

Also, Is there any thing similar to Event Viewer of Windows in Linux where the WHEA errors are logged?

mcelog

Quoted 10 lines

(I'm getting the following message in dmesg log from RHEL:
"ERST: Could not register with persistent Store"

You don't compile pstore support/not loaded it as a module/no NVRAM, UEFI runtime space etc. to support pstore.)

As far as the above ERST dmesg is concerned, We are allocating a Flash Block for ERST persistent store.
The persistent store will be used for Writing/Reading an Error Record by the OS in case of NMI when fatal error is generated.

Yes.

Quoted 2 lines

In case of fatal error from Windows, it is getting written as well as Read correctly from the persistent store and error is avialable in Event Viewer.

Same as in Linux.

Quoted 2 lines

Can you please help us to narrow down this issue or in what could be reason for this error in dmesg log.

In simple, pstore doesn't work, so the root cause in pstore. You need to debug it. Use kernel command parameter pstore.backend=erst to try again. The prerequisite is your platform supports erst.
(Check dmesg to find "Error Record Serialization Table (ERST) support is initialized.")