|
|
edb6c78 |
From 0fecc447cd64bf9da3345b2912e41e6005eb1011 Mon Sep 17 00:00:00 2001
|
|
|
edb6c78 |
From: Al Stone <ahs3@redhat.com>
|
|
|
edb6c78 |
Date: Mon, 28 Sep 2020 13:01:18 -0600
|
|
|
edb6c78 |
Subject: [PATCH 33/40] Support MCFG in a big-endian world
|
|
|
edb6c78 |
|
|
|
edb6c78 |
Signed-off-by: Al Stone <ahs3@redhat.com>
|
|
|
edb6c78 |
---
|
|
|
edb6c78 |
source/common/dmtbdump2.c | 11 ++++++-----
|
|
|
edb6c78 |
1 file changed, 6 insertions(+), 5 deletions(-)
|
|
|
edb6c78 |
|
|
|
edb6c78 |
Index: acpica-unix2-20200925/source/common/dmtbdump2.c
|
|
|
edb6c78 |
===================================================================
|
|
|
edb6c78 |
--- acpica-unix2-20200925.orig/source/common/dmtbdump2.c
|
|
|
edb6c78 |
+++ acpica-unix2-20200925/source/common/dmtbdump2.c
|
|
|
edb6c78 |
@@ -769,11 +769,12 @@ AcpiDmDumpMcfg (
|
|
|
edb6c78 |
ACPI_STATUS Status;
|
|
|
edb6c78 |
UINT32 Offset = sizeof (ACPI_TABLE_MCFG);
|
|
|
edb6c78 |
ACPI_MCFG_ALLOCATION *Subtable;
|
|
|
edb6c78 |
+ UINT32 TableLength = AcpiUtReadUint32(&Table->Length);
|
|
|
edb6c78 |
|
|
|
edb6c78 |
|
|
|
edb6c78 |
/* Main table */
|
|
|
edb6c78 |
|
|
|
edb6c78 |
- Status = AcpiDmDumpTable (Table->Length, 0, Table, 0, AcpiDmTableInfoMcfg);
|
|
|
edb6c78 |
+ Status = AcpiDmDumpTable (TableLength, 0, Table, 0, AcpiDmTableInfoMcfg);
|
|
|
edb6c78 |
if (ACPI_FAILURE (Status))
|
|
|
edb6c78 |
{
|
|
|
edb6c78 |
return;
|
|
|
edb6c78 |
@@ -782,17 +783,17 @@ AcpiDmDumpMcfg (
|
|
|
edb6c78 |
/* Subtables */
|
|
|
edb6c78 |
|
|
|
edb6c78 |
Subtable = ACPI_ADD_PTR (ACPI_MCFG_ALLOCATION, Table, Offset);
|
|
|
edb6c78 |
- while (Offset < Table->Length)
|
|
|
edb6c78 |
+ while (Offset < TableLength)
|
|
|
edb6c78 |
{
|
|
|
edb6c78 |
- if (Offset + sizeof (ACPI_MCFG_ALLOCATION) > Table->Length)
|
|
|
edb6c78 |
+ if (Offset + sizeof (ACPI_MCFG_ALLOCATION) > TableLength)
|
|
|
edb6c78 |
{
|
|
|
edb6c78 |
AcpiOsPrintf ("Warning: there are %u invalid trailing bytes\n",
|
|
|
edb6c78 |
- (UINT32) sizeof (ACPI_MCFG_ALLOCATION) - (Offset - Table->Length));
|
|
|
edb6c78 |
+ (UINT32) sizeof (ACPI_MCFG_ALLOCATION) - (Offset - TableLength));
|
|
|
edb6c78 |
return;
|
|
|
edb6c78 |
}
|
|
|
edb6c78 |
|
|
|
edb6c78 |
AcpiOsPrintf ("\n");
|
|
|
edb6c78 |
- Status = AcpiDmDumpTable (Table->Length, Offset, Subtable,
|
|
|
edb6c78 |
+ Status = AcpiDmDumpTable (TableLength, Offset, Subtable,
|
|
|
edb6c78 |
sizeof (ACPI_MCFG_ALLOCATION), AcpiDmTableInfoMcfg0);
|
|
|
edb6c78 |
if (ACPI_FAILURE (Status))
|
|
|
edb6c78 |
{
|