Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Tables: Add an error message complaining driver bugs
During early OS boot stage, drivers that have mapped system memory should
unmap it during the same stage. Linux kernel has an error message
indicating the unbalanced early memory mappings.

This patch back ports such error message into ACPICA for the early table
mappings, so that ACPICA development environment is also aware of this OS
specific requirement and thus is able to ensure the consistent quality
locally. Lv Zheng.

Signed-off-by: Lv Zheng <lv.zheng@intel.com>
  • Loading branch information
Lv Zheng committed Nov 3, 2016
1 parent 80e2466 commit 68af3c3
Showing 1 changed file with 17 additions and 0 deletions.
17 changes: 17 additions & 0 deletions source/components/tables/tbxface.c
Expand Up @@ -256,6 +256,7 @@ AcpiReallocateRootTable (
void)
{
ACPI_STATUS Status;
UINT32 i;


ACPI_FUNCTION_TRACE (AcpiReallocateRootTable);
Expand All @@ -270,6 +271,22 @@ AcpiReallocateRootTable (
return_ACPI_STATUS (AE_SUPPORT);
}

/*
* Ensure OS early boot logic, which is required by some hosts. If the
* table state is reported to be wrong, developers should fix the
* issue by invoking AcpiPutTable() for the reported table during the
* early stage.
*/
for (i = 0; i < AcpiGbl_RootTableList.CurrentTableCount; ++i)
{
if (AcpiGbl_RootTableList.Tables[i].Pointer)
{
ACPI_ERROR ((AE_INFO,
"Table [%4.4s] is not invalidated during early boot stage",
AcpiGbl_RootTableList.Tables[i].Signature.Ascii));
}
}

AcpiGbl_RootTableList.Flags |= ACPI_ROOT_ALLOW_RESIZE;

Status = AcpiTbResizeRootTableList ();
Expand Down

0 comments on commit 68af3c3

Please sign in to comment.