15 Jul, 2015

1 commit

  • The memory error record structure includes as its first field a
    bitmask of which subsequent fields are valid. The allows new fields
    to be added to the structure while keeping compatibility with older
    software that parses these records. This mechanism was used between
    versions 2.2 and 2.3 to add four new fields, growing the size of the
    structure from 73 bytes to 80. But Linux just added all the new
    fields so this test:
    if (gdata->error_data_length >= sizeof(*mem_err))
    cper_print_mem(newpfx, mem_err);
    else
    goto err_section_too_small;
    now make Linux complain about old format records being too short.

    Add a definition for the old format of the structure and use that
    for the minimum size check. Pass the actual size to cper_print_mem()
    so it can sanity check the validation_bits field to ensure that if
    a BIOS using the old format sets bits as if it were new, we won't
    access fields beyond the end of the structure.

    Signed-off-by: Tony Luck
    Cc:
    Signed-off-by: Matt Fleming

    Luck, Tony
     

26 Jun, 2014

2 commits


24 Oct, 2013

1 commit

  • In latest UEFI spec(by now it is 2.4) memory error definition
    for CPER (UEFI 2.4 Appendix N Common Platform Error Record)
    adds some new fields. These fields help people to locate
    memory error to an actual DIMM location.

    Original-author: Tony Luck
    Signed-off-by: Chen, Gong
    Reviewed-by: Borislav Petkov
    Reviewed-by: Mauro Carvalho Chehab
    Acked-by: Naveen N. Rao
    Signed-off-by: Tony Luck

    Chen, Gong
     

22 Oct, 2013

1 commit

  • We have a lot of confusing names of functions and data structures in
    amongs the the error reporting code. In particular the "apei" prefix
    has been applied to many objects that are not part of APEI. Since we
    will be using these routines for extended error log reporting it will
    be clearer if we fix up the names first.

    Signed-off-by: Chen, Gong
    Acked-by: Borislav Petkov
    Reviewed-by: Mauro Carvalho Chehab
    Signed-off-by: Tony Luck

    Chen, Gong
     

31 Mar, 2011

1 commit


22 Mar, 2011

1 commit

  • The AER error information printing support is implemented in
    drivers/pci/pcie/aer/aer_print.c. So some string constants, functions
    and macros definitions can be re-used without being exported.

    The original PCIe AER error information printing function is not
    re-used directly because the overall format is quite different. And
    changing the original printing format may make some original users'
    scripts broken.

    Signed-off-by: Huang Ying
    CC: Jesse Barnes
    CC: Zhang Yanmin
    Signed-off-by: Len Brown

    Huang Ying
     

14 Dec, 2010

1 commit


09 Aug, 2010

1 commit


20 May, 2010

1 commit

  • CPER stands for Common Platform Error Record, it is the hardware error
    record format used to describe platform hardware error by various APEI
    tables, such as ERST, BERT and HEST etc.

    For more information about CPER, please refer to Appendix N of UEFI
    Specification version 2.3.

    This patch mainly includes the data structure difinition header file
    used by other files.

    Signed-off-by: Huang Ying
    Signed-off-by: Andi Kleen
    Signed-off-by: Len Brown

    Huang Ying