diff options
author | Len Brown <len.brown@intel.com> | 2005-09-03 00:09:12 -0400 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2005-09-03 00:10:05 -0400 |
commit | a94f18810f52d3a6de0a09bee0c7258b62eca262 (patch) | |
tree | a1bee534fe254106cec916642ae90ebf15cec201 /drivers/acpi/parser/psxface.c | |
parent | 8813dfbfc56b3f7c369b3115c2f70bcacd77ec51 (diff) |
[ACPI] revert owner-id-3.patch
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 | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/acpi/parser/psxface.c b/drivers/acpi/parser/psxface.c index f6904bdf5739..80c67f2d3dd2 100644 --- a/drivers/acpi/parser/psxface.c +++ b/drivers/acpi/parser/psxface.c @@ -99,6 +99,16 @@ acpi_status acpi_ps_execute_method(struct acpi_parameter_info *info) } /* + * Get a new owner_id for objects created by this method. Namespace + * objects (such as Operation Regions) can be created during the + * first pass parse. + */ + status = acpi_ut_allocate_owner_id(&info->obj_desc->method.owner_id); + if (ACPI_FAILURE(status)) { + return_ACPI_STATUS(status); + } + + /* * The caller "owns" the parameters, so give each one an extra * reference */ @@ -129,6 +139,9 @@ acpi_status acpi_ps_execute_method(struct acpi_parameter_info *info) status = acpi_ps_execute_pass(info); cleanup: + if (info->obj_desc->method.owner_id) { + acpi_ut_release_owner_id(&info->obj_desc->method.owner_id); + } /* Take away the extra reference that we gave the parameters above */ |