ACPICA: acpiexec: Add option to dump extra info for memory leaks

ACPICA commit f77565e28b90ee7e06f53a474183ef72300c3574

Dump entire object/buffer for any memory leaks detected by
the object/cache tracking mechanism.

Link: https://github.com/acpica/acpica/commit/f77565e2
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Erik Schmauss <erik.schmauss@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
Bob Moore 2019-01-14 09:55:24 -08:00 committed by Rafael J. Wysocki
parent f13c274da3
commit 894b5cc535
3 changed files with 18 additions and 5 deletions

View File

@ -164,6 +164,7 @@ ACPI_GLOBAL(struct acpi_memory_list *, acpi_gbl_global_list);
ACPI_GLOBAL(struct acpi_memory_list *, acpi_gbl_ns_node_list);
ACPI_GLOBAL(u8, acpi_gbl_display_final_mem_stats);
ACPI_GLOBAL(u8, acpi_gbl_disable_mem_tracking);
ACPI_GLOBAL(u8, acpi_gbl_verbose_leak_dump);
#endif
/*****************************************************************************

View File

@ -284,7 +284,7 @@ const char *acpi_ut_get_node_name(void *object)
static const char *acpi_gbl_desc_type_names[] = {
/* 00 */ "Not a Descriptor",
/* 01 */ "Cached",
/* 01 */ "Cached Object",
/* 02 */ "State-Generic",
/* 03 */ "State-Update",
/* 04 */ "State-Package",
@ -295,10 +295,10 @@ static const char *acpi_gbl_desc_type_names[] = {
/* 09 */ "State-Result",
/* 10 */ "State-Notify",
/* 11 */ "State-Thread",
/* 12 */ "Walk",
/* 13 */ "Parser",
/* 14 */ "Operand",
/* 15 */ "Node"
/* 12 */ "Tree Walk State",
/* 13 */ "Parse Tree Op",
/* 14 */ "Operand Object",
/* 15 */ "Namespace Node"
};
const char *acpi_ut_get_descriptor_name(void *object)

View File

@ -588,6 +588,18 @@ void acpi_ut_dump_allocations(u32 component, const char *module)
acpi_ut_get_descriptor_name
(descriptor));
/* Optional object hex dump */
if (acpi_gbl_verbose_leak_dump) {
acpi_os_printf("\n");
acpi_ut_dump_buffer((u8 *)
descriptor,
element->
size,
DB_BYTE_DISPLAY,
0);
}
/* Validate the descriptor type using Type field and length */
descriptor_type = 0; /* Not a valid descriptor type */