diff options
author | Robert Moore <Robert.Moore@intel.com> | 2005-09-02 17:24:17 -0400 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2005-09-03 00:15:11 -0400 |
commit | aff8c2777d1a9edf97f26bf60579f9c931443eb1 (patch) | |
tree | fcd5bfe84e0e3aeb328d60ec41776522b9b7d122 /drivers/acpi/parser/psxface.c | |
parent | a94f18810f52d3a6de0a09bee0c7258b62eca262 (diff) |
[ACPI] ACPICA 20050902
Fixed a problem with the internal Owner ID allocation and
deallocation mechanisms for control method execution and
recursive method invocation. This should eliminate the
OWNER_ID_LIMIT exceptions and "Invalid OwnerId" messages
seen on some systems. Recursive method invocation depth
is currently limited to 255. (Alexey Starikovskiy)
http://bugzilla.kernel.org/show_bug.cgi?id=4892
Completely eliminated all vestiges of support for the
"module-level executable code" until this support is
fully implemented and debugged. This should eliminate the
NO_RETURN_VALUE exceptions seen during table load on some
systems that invoke this support.
http://bugzilla.kernel.org/show_bug.cgi?id=5162
Fixed a problem within the resource manager code where
the transaction flags for a 64-bit address descriptor were
handled incorrectly in the type-specific flag byte.
Consolidated duplicate code within the address descriptor
resource manager code, reducing overall subsystem code size.
Signed-off-by: Robert Moore <Robert.Moore@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi/parser/psxface.c')
-rw-r--r-- | drivers/acpi/parser/psxface.c | 14 |
1 files changed, 0 insertions, 14 deletions
diff --git a/drivers/acpi/parser/psxface.c b/drivers/acpi/parser/psxface.c index 80c67f2d3dd2..4dcbd443160e 100644 --- a/drivers/acpi/parser/psxface.c +++ b/drivers/acpi/parser/psxface.c | |||
@@ -99,16 +99,6 @@ acpi_status acpi_ps_execute_method(struct acpi_parameter_info *info) | |||
99 | } | 99 | } |
100 | 100 | ||
101 | /* | 101 | /* |
102 | * Get a new owner_id for objects created by this method. Namespace | ||
103 | * objects (such as Operation Regions) can be created during the | ||
104 | * first pass parse. | ||
105 | */ | ||
106 | status = acpi_ut_allocate_owner_id(&info->obj_desc->method.owner_id); | ||
107 | if (ACPI_FAILURE(status)) { | ||
108 | return_ACPI_STATUS(status); | ||
109 | } | ||
110 | |||
111 | /* | ||
112 | * The caller "owns" the parameters, so give each one an extra | 102 | * The caller "owns" the parameters, so give each one an extra |
113 | * reference | 103 | * reference |
114 | */ | 104 | */ |
@@ -139,10 +129,6 @@ acpi_status acpi_ps_execute_method(struct acpi_parameter_info *info) | |||
139 | status = acpi_ps_execute_pass(info); | 129 | status = acpi_ps_execute_pass(info); |
140 | 130 | ||
141 | cleanup: | 131 | cleanup: |
142 | if (info->obj_desc->method.owner_id) { | ||
143 | acpi_ut_release_owner_id(&info->obj_desc->method.owner_id); | ||
144 | } | ||
145 | |||
146 | /* Take away the extra reference that we gave the parameters above */ | 132 | /* Take away the extra reference that we gave the parameters above */ |
147 | 133 | ||
148 | acpi_ps_update_parameter_list(info, REF_DECREMENT); | 134 | acpi_ps_update_parameter_list(info, REF_DECREMENT); |