History

efi: cper: Add support for printing Firmware Error Record Reference

While debugging a boot failure, the following unknown error record was seen in the boot logs. <...> BERT: Error records from previous boot: [Hardware Error]: event severity: fatal [Hardware Error]: Error 0, type: fatal [Hardware Error]: section type: unknown, 81212a96-09ed-4996-9471-8d729c8e69ed [Hardware Error]: section length: 0x290 [Hardware Error]: 00000000: 00000001 00000000 00000000 00020002 ................ [Hardware Error]: 00000010: 00020002 0000001f 00000320 00000000 ........ ....... [Hardware Error]: 00000020: 00000000 00000000 00000000 00000000 ................ [Hardware Error]: 00000030: 00000000 00000000 00000000 00000000 ................ <...> On further investigation, it was found that the error record with UUID (81212a96-09ed-4996-9471-8d729c8e69ed) has been defined in the UEFI Specification at least since v2.4 and has recently had additional fields defined in v2.7 Section N.2.10 Firmware Error Record Reference. Add support for parsing and printing the defined fields to give users a chance to figure out what went wrong.

Punit Agrawal committed 6 years ago

Commit 3d8c11e1 parent fd626192 files · +71 −0Browse files

Showing the changes to include/linux (1 of 2 files). Show all

Unified · Split

include/linux/cper.h+9−0
@@ -521,6 +521,15 @@ struct cper_sec_pcie { · 520 unmodified lines
521 u8 aer_info[96];521 u8 aer_info[96];
522};522};
523 523
524/* Firmware Error Record Reference, UEFI v2.7 sec N.2.10 */
525struct cper_sec_fw_err_rec_ref {
526 u8 record_type;
527 u8 revision;
528 u8 reserved[6];
529 u64 record_identifier;
530 guid_t record_identifier_guid;
531};
532
524/* Reset to default packing */533/* Reset to default packing */
525#pragma pack()534#pragma pack()
526 535