Bug 12384 - 当BERT表内容长度超过1024时,内核无法打印BERT表的内容
Summary: 当BERT表内容长度超过1024时,内核无法打印BERT表的内容
Status: NEW
Alias: None
Product: ANCK 5.10 Dev
Classification: ANCK
Component: drivers (show other bugs) drivers
Version: 5.10.y-14
Hardware: aarch64 Linux
: P3-Medium S3-normal
Target Milestone: ---
Assignee: GuixinLiu
QA Contact: shuming
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-12-14 15:04 UTC by hunter_he
Modified: 2024-12-14 15:13 UTC (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description hunter_he 2024-12-14 15:04:15 UTC
Description of problem:
当BERT表内容长度超过1024时,内核无法打印BERT表的内容

Version-Release number of selected component (if applicable):
5.10

How reproducible:
可复现

Steps to Reproduce:
1.corsica是一款dpu芯片,主处理器为arm core,corsica的bios中预留的bert表的长度为4096(0x1000)
2.构造bert报错,bert中cper记录数为1条
3.查看dmesg中的BERT表的打印信息

Actual results:
Jun 22 19:11:49 anolis-corsica kernel: BERT: Error records from previous boot:
Jun 22 19:11:49 anolis-corsica kernel: BERT: Max print length exceeded, table data is available at:
/sys/firmware/acpi/tables/data/BERT

Expected results:
Dec 14 10:49:40 bclinux-corsica kernel: BERT: Error records from previous boot:
Dec 14 10:49:40 bclinux-corsica kernel: [Hardware Error]: event severity: info
Dec 14 10:49:40 bclinux-corsica kernel: [Hardware Error]:  Error 0, type: fatal
Dec 14 10:49:40 bclinux-corsica kernel: [Hardware Error]:   section_type: Firmware Error Record Reference
Dec 14 10:49:40 bclinux-corsica kernel: [Hardware Error]:   Firmware Error Dec 14 10:49:40 bclinux-corsica kernel: [Hardware Error]:   Revision: 2
Dec 14 10:49:40 bclinux-corsica kernel: [Hardware Error]:   Record Identifier: 81212a96-09ed-4996-9471-8d729c8e69ed
Dec 14 10:49:40 bclinux-corsica kernel: [Hardware Error]:   00000000: 00000000 00000000 00000000 00000000  ................
Dec 14 10:49:40 bclinux-corsica kernel: [Hardware Error]:   00000010: 00000000 00000000 00000000 40000000  ...............@

Additional info:
bert table的Region Length为4096(0x1000)
cat bert.dsl
/*
 * Intel ACPI Component Architecture
 * AML/ASL+ Disassembler version 20190509 (64-bit version)
 * Copyright (c) 2000 - 2019 Intel Corporation
 *
 * Disassembly of bert.dat, Tue Dec 10 14:34:47 2024
 *
 * ACPI Data Table [BERT]
 *
 * Format: [HexOffset DecimalOffset ByteLength]  FieldName : FieldValue
 */

[000h 0000   4]                    Signature : "BERT"    [Boot Error Record Table]
[004h 0004   4]                 Table Length : 00000030
[008h 0008   1]                     Revision : 01
[009h 0009   1]                     Checksum : 32
[00Ah 0010   6]                       Oem ID : "JMIC  "
[010h 0016   8]                 Oem Table ID : "CORSICA "
[018h 0024   4]                 Oem Revision : 20220420
[01Ch 0028   4]              Asl Compiler ID : "JMIC"
[020h 0032   4]        Asl Compiler Revision : 00000000

[024h 0036   4]     Boot Error Region Length : 00001000
[028h 0040   8]    Boot Error Region Address : 000000001345E018

Raw Table Data: Length 48 (0x30)

    0000: 42 45 52 54 30 00 00 00 01 32 4A 4D 49 43 20 20  // BERT0....2JMIC
    0010: 43 4F 52 53 49 43 41 20 20 04 22 20 4A 4D 49 43  // CORSICA  ." JMIC
    0020: 00 00 00 00 00 10 00 00 18 E0 45 13 00 00 00 00  // ..........E.....
Comment 1 小龙 admin 2024-12-14 15:13:30 UTC
The PR Link: https://gitee.com/anolis/cloud-kernel/pulls/4226