Skip to content

Commit

Permalink
ShellPkg/AcpiView: RAS2 Parser - check validity of PCC Count
Browse files Browse the repository at this point in the history
This checks the number of PCC descriptor entries provided match the
count set in the table, and if they don't indicate a warning.

Signed-off-by: Carsten Haitzler <[email protected]>
  • Loading branch information
Carsten Haitzler authored and mergify[bot] committed Dec 17, 2024
1 parent 3521681 commit b38180e
Showing 1 changed file with 16 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,9 @@ ParseAcpiRas2 (
IN UINT8 AcpiTableRevision
)
{
UINT32 Offset;
UINT32 Offset;
UINT16 Count = 0;
CONST CHAR16 *Message;

if (!Trace) {
return;
Expand Down Expand Up @@ -111,5 +113,18 @@ ParseAcpiRas2 (
sizeof (EFI_ACPI_RAS2_PCC_DESCRIPTOR)
);
Offset += sizeof (EFI_ACPI_RAS2_PCC_DESCRIPTOR);
Count++;
} // while

// Check counts match and print error if not
if (Count != *Ras2PccDescriptors) {
Message = Count > *Ras2PccDescriptors ? L"many" : L"few";
IncrementWarningCount ();
Print (
L"\nWARNING: Too %s descriptors provided (advertised %d, provided %d)",
Message,
*Ras2PccDescriptors,
Count
);
}
}

0 comments on commit b38180e

Please sign in to comment.