diff options
Diffstat (limited to 'drivers/acpi/acpica/nsdump.c')
-rw-r--r-- | drivers/acpi/acpica/nsdump.c | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/drivers/acpi/acpica/nsdump.c b/drivers/acpi/acpica/nsdump.c index 0da33c8e9ba2..2bad613db73a 100644 --- a/drivers/acpi/acpica/nsdump.c +++ b/drivers/acpi/acpica/nsdump.c | |||
@@ -181,6 +181,12 @@ acpi_ns_dump_one_object(acpi_handle obj_handle, | |||
181 | } | 181 | } |
182 | 182 | ||
183 | this_node = acpi_ns_map_handle_to_node(obj_handle); | 183 | this_node = acpi_ns_map_handle_to_node(obj_handle); |
184 | if (!this_node) { | ||
185 | ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Invalid object handle %p\n", | ||
186 | obj_handle)); | ||
187 | return (AE_OK); | ||
188 | } | ||
189 | |||
184 | type = this_node->type; | 190 | type = this_node->type; |
185 | 191 | ||
186 | /* Check if the owner matches */ | 192 | /* Check if the owner matches */ |
@@ -214,9 +220,8 @@ acpi_ns_dump_one_object(acpi_handle obj_handle, | |||
214 | acpi_os_printf("%4.4s", acpi_ut_get_node_name(this_node)); | 220 | acpi_os_printf("%4.4s", acpi_ut_get_node_name(this_node)); |
215 | } | 221 | } |
216 | 222 | ||
217 | /* | 223 | /* Now we can print out the pertinent information */ |
218 | * Now we can print out the pertinent information | 224 | |
219 | */ | ||
220 | acpi_os_printf(" %-12s %p %2.2X ", | 225 | acpi_os_printf(" %-12s %p %2.2X ", |
221 | acpi_ut_get_type_name(type), this_node, | 226 | acpi_ut_get_type_name(type), this_node, |
222 | this_node->owner_id); | 227 | this_node->owner_id); |
@@ -509,7 +514,7 @@ acpi_ns_dump_one_object(acpi_handle obj_handle, | |||
509 | 514 | ||
510 | case ACPI_DESC_TYPE_OPERAND: | 515 | case ACPI_DESC_TYPE_OPERAND: |
511 | 516 | ||
512 | obj_type = ACPI_GET_OBJECT_TYPE(obj_desc); | 517 | obj_type = obj_desc->common.type; |
513 | 518 | ||
514 | if (obj_type > ACPI_TYPE_LOCAL_MAX) { | 519 | if (obj_type > ACPI_TYPE_LOCAL_MAX) { |
515 | acpi_os_printf | 520 | acpi_os_printf |
@@ -539,9 +544,8 @@ acpi_ns_dump_one_object(acpi_handle obj_handle, | |||
539 | goto cleanup; | 544 | goto cleanup; |
540 | } | 545 | } |
541 | 546 | ||
542 | /* | 547 | /* Valid object, get the pointer to next level, if any */ |
543 | * Valid object, get the pointer to next level, if any | 548 | |
544 | */ | ||
545 | switch (obj_type) { | 549 | switch (obj_type) { |
546 | case ACPI_TYPE_BUFFER: | 550 | case ACPI_TYPE_BUFFER: |
547 | case ACPI_TYPE_STRING: | 551 | case ACPI_TYPE_STRING: |
@@ -602,14 +606,14 @@ acpi_ns_dump_one_object(acpi_handle obj_handle, | |||
602 | * display_type - 0 or ACPI_DISPLAY_SUMMARY | 606 | * display_type - 0 or ACPI_DISPLAY_SUMMARY |
603 | * max_depth - Maximum depth of dump. Use ACPI_UINT32_MAX | 607 | * max_depth - Maximum depth of dump. Use ACPI_UINT32_MAX |
604 | * for an effectively unlimited depth. | 608 | * for an effectively unlimited depth. |
605 | * owner_id - Dump only objects owned by this ID. Use | 609 | * owner_id - Dump only objects owned by this ID. Use |
606 | * ACPI_UINT32_MAX to match all owners. | 610 | * ACPI_UINT32_MAX to match all owners. |
607 | * start_handle - Where in namespace to start/end search | 611 | * start_handle - Where in namespace to start/end search |
608 | * | 612 | * |
609 | * RETURN: None | 613 | * RETURN: None |
610 | * | 614 | * |
611 | * DESCRIPTION: Dump typed objects within the loaded namespace. | 615 | * DESCRIPTION: Dump typed objects within the loaded namespace. Uses |
612 | * Uses acpi_ns_walk_namespace in conjunction with acpi_ns_dump_one_object. | 616 | * acpi_ns_walk_namespace in conjunction with acpi_ns_dump_one_object. |
613 | * | 617 | * |
614 | ******************************************************************************/ | 618 | ******************************************************************************/ |
615 | 619 | ||