diff options
Diffstat (limited to 'drivers/acpi')
-rw-r--r-- | drivers/acpi/utilities/utdelete.c | 42 |
1 files changed, 3 insertions, 39 deletions
diff --git a/drivers/acpi/utilities/utdelete.c b/drivers/acpi/utilities/utdelete.c index bc5403022681..be97ada23c3d 100644 --- a/drivers/acpi/utilities/utdelete.c +++ b/drivers/acpi/utilities/utdelete.c | |||
@@ -439,7 +439,7 @@ acpi_ut_update_object_reference ( | |||
439 | u32 i; | 439 | u32 i; |
440 | union acpi_generic_state *state_list = NULL; | 440 | union acpi_generic_state *state_list = NULL; |
441 | union acpi_generic_state *state; | 441 | union acpi_generic_state *state; |
442 | union acpi_operand_object *tmp; | 442 | |
443 | 443 | ||
444 | ACPI_FUNCTION_TRACE_PTR ("ut_update_object_reference", object); | 444 | ACPI_FUNCTION_TRACE_PTR ("ut_update_object_reference", object); |
445 | 445 | ||
@@ -472,16 +472,8 @@ acpi_ut_update_object_reference ( | |||
472 | switch (ACPI_GET_OBJECT_TYPE (object)) { | 472 | switch (ACPI_GET_OBJECT_TYPE (object)) { |
473 | case ACPI_TYPE_DEVICE: | 473 | case ACPI_TYPE_DEVICE: |
474 | 474 | ||
475 | tmp = object->device.system_notify; | 475 | acpi_ut_update_ref_count (object->device.system_notify, action); |
476 | if (tmp && (tmp->common.reference_count <= 1) && action == REF_DECREMENT) | 476 | acpi_ut_update_ref_count (object->device.device_notify, action); |
477 | object->device.system_notify = NULL; | ||
478 | acpi_ut_update_ref_count (tmp, action); | ||
479 | |||
480 | tmp = object->device.device_notify; | ||
481 | if (tmp && (tmp->common.reference_count <= 1) && action == REF_DECREMENT) | ||
482 | object->device.device_notify = NULL; | ||
483 | acpi_ut_update_ref_count (tmp, action); | ||
484 | |||
485 | break; | 477 | break; |
486 | 478 | ||
487 | 479 | ||
@@ -502,10 +494,6 @@ acpi_ut_update_object_reference ( | |||
502 | if (ACPI_FAILURE (status)) { | 494 | if (ACPI_FAILURE (status)) { |
503 | goto error_exit; | 495 | goto error_exit; |
504 | } | 496 | } |
505 | |||
506 | tmp = object->package.elements[i]; | ||
507 | if (tmp && (tmp->common.reference_count <= 1) && action == REF_DECREMENT) | ||
508 | object->package.elements[i] = NULL; | ||
509 | } | 497 | } |
510 | break; | 498 | break; |
511 | 499 | ||
@@ -517,10 +505,6 @@ acpi_ut_update_object_reference ( | |||
517 | if (ACPI_FAILURE (status)) { | 505 | if (ACPI_FAILURE (status)) { |
518 | goto error_exit; | 506 | goto error_exit; |
519 | } | 507 | } |
520 | |||
521 | tmp = object->buffer_field.buffer_obj; | ||
522 | if ( tmp && (tmp->common.reference_count <= 1) && action == REF_DECREMENT) | ||
523 | object->buffer_field.buffer_obj = NULL; | ||
524 | break; | 508 | break; |
525 | 509 | ||
526 | 510 | ||
@@ -531,10 +515,6 @@ acpi_ut_update_object_reference ( | |||
531 | if (ACPI_FAILURE (status)) { | 515 | if (ACPI_FAILURE (status)) { |
532 | goto error_exit; | 516 | goto error_exit; |
533 | } | 517 | } |
534 | |||
535 | tmp = object->field.region_obj; | ||
536 | if ( tmp && (tmp->common.reference_count <= 1) && action == REF_DECREMENT) | ||
537 | object->field.region_obj = NULL; | ||
538 | break; | 518 | break; |
539 | 519 | ||
540 | 520 | ||
@@ -546,19 +526,11 @@ acpi_ut_update_object_reference ( | |||
546 | goto error_exit; | 526 | goto error_exit; |
547 | } | 527 | } |
548 | 528 | ||
549 | tmp = object->bank_field.bank_obj; | ||
550 | if ( tmp && (tmp->common.reference_count <= 1) && action == REF_DECREMENT) | ||
551 | object->bank_field.bank_obj = NULL; | ||
552 | |||
553 | status = acpi_ut_create_update_state_and_push ( | 529 | status = acpi_ut_create_update_state_and_push ( |
554 | object->bank_field.region_obj, action, &state_list); | 530 | object->bank_field.region_obj, action, &state_list); |
555 | if (ACPI_FAILURE (status)) { | 531 | if (ACPI_FAILURE (status)) { |
556 | goto error_exit; | 532 | goto error_exit; |
557 | } | 533 | } |
558 | |||
559 | tmp = object->bank_field.region_obj; | ||
560 | if ( tmp && (tmp->common.reference_count <= 1) && action == REF_DECREMENT) | ||
561 | object->bank_field.region_obj = NULL; | ||
562 | break; | 534 | break; |
563 | 535 | ||
564 | 536 | ||
@@ -570,19 +542,11 @@ acpi_ut_update_object_reference ( | |||
570 | goto error_exit; | 542 | goto error_exit; |
571 | } | 543 | } |
572 | 544 | ||
573 | tmp = object->index_field.index_obj; | ||
574 | if ( tmp && (tmp->common.reference_count <= 1) && action == REF_DECREMENT) | ||
575 | object->index_field.index_obj = NULL; | ||
576 | |||
577 | status = acpi_ut_create_update_state_and_push ( | 545 | status = acpi_ut_create_update_state_and_push ( |
578 | object->index_field.data_obj, action, &state_list); | 546 | object->index_field.data_obj, action, &state_list); |
579 | if (ACPI_FAILURE (status)) { | 547 | if (ACPI_FAILURE (status)) { |
580 | goto error_exit; | 548 | goto error_exit; |
581 | } | 549 | } |
582 | |||
583 | tmp = object->index_field.data_obj; | ||
584 | if ( tmp && (tmp->common.reference_count <= 1) && action == REF_DECREMENT) | ||
585 | object->index_field.data_obj = NULL; | ||
586 | break; | 550 | break; |
587 | 551 | ||
588 | 552 | ||