diff options
author | John Keller <jpk@sgi.com> | 2007-02-15 21:08:30 +0100 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2007-02-17 00:34:40 +0100 |
commit | ecb5f7521a309cb9c5fc0832b9705cd2a03d7d45 (patch) | |
tree | 6dd1cf08464f0217b3c70f9063209689aec446fb /drivers/acpi | |
parent | ACPI: ec: add unlock in error path (diff) | |
download | linux-ecb5f7521a309cb9c5fc0832b9705cd2a03d7d45.tar.xz linux-ecb5f7521a309cb9c5fc0832b9705cd2a03d7d45.zip |
ACPI: acpi_unload_table_id() always returns error
acpi_unload_table_id() is always returning an error status.
Also, once the matching table is found, don't bother looking
for another match.
Signed-off-by: John Keller <jpk@sgi.com>
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi')
-rw-r--r-- | drivers/acpi/tables/tbxface.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/acpi/tables/tbxface.c b/drivers/acpi/tables/tbxface.c index 81937003fd53..417ef5fa7666 100644 --- a/drivers/acpi/tables/tbxface.c +++ b/drivers/acpi/tables/tbxface.c @@ -338,9 +338,9 @@ acpi_status acpi_unload_table_id(acpi_owner_id id) int i; acpi_status status = AE_NOT_EXIST; - ACPI_FUNCTION_TRACE(acpi_unload_table); + ACPI_FUNCTION_TRACE(acpi_unload_table_id); - /* Find table from the requested type list */ + /* Find table in the global table list */ for (i = 0; i < acpi_gbl_root_table_list.count; ++i) { if (id != acpi_gbl_root_table_list.tables[i].owner_id) { continue; @@ -352,8 +352,9 @@ acpi_status acpi_unload_table_id(acpi_owner_id id) * simply a position within the hierarchy */ acpi_tb_delete_namespace_by_owner(i); - acpi_tb_release_owner_id(i); + status = acpi_tb_release_owner_id(i); acpi_tb_set_table_loaded_flag(i, FALSE); + break; } return_ACPI_STATUS(status); } |