Skip to content

Commit

Permalink
[ACPI] increase owner_id limit to 64 from 32
Browse files Browse the repository at this point in the history
This is an interim patch until changes in an updated
ACPICA core increase the limit to 255.

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
Signed-off-by: Len Brown <len.brown@intel.com>
  • Loading branch information
Alex Williamson authored and Len Brown committed Dec 21, 2005
1 parent b05948d commit 05465fd
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 10 deletions.
18 changes: 9 additions & 9 deletions drivers/acpi/utilities/utmisc.c
Original file line number Diff line number Diff line change
Expand Up @@ -84,14 +84,14 @@ acpi_status acpi_ut_allocate_owner_id(acpi_owner_id * owner_id)

/* Find a free owner ID */

for (i = 0; i < 32; i++) {
if (!(acpi_gbl_owner_id_mask & (1 << i))) {
for (i = 0; i < 64; i++) {
if (!(acpi_gbl_owner_id_mask & (1ULL << i))) {
ACPI_DEBUG_PRINT((ACPI_DB_VALUES,
"Current owner_id mask: %8.8X New ID: %2.2X\n",
"Current owner_id mask: %16.16lX New ID: %2.2X\n",
acpi_gbl_owner_id_mask,
(unsigned int)(i + 1)));

acpi_gbl_owner_id_mask |= (1 << i);
acpi_gbl_owner_id_mask |= (1ULL << i);
*owner_id = (acpi_owner_id) (i + 1);
goto exit;
}
Expand All @@ -106,7 +106,7 @@ acpi_status acpi_ut_allocate_owner_id(acpi_owner_id * owner_id)
*/
*owner_id = 0;
status = AE_OWNER_ID_LIMIT;
ACPI_REPORT_ERROR(("Could not allocate new owner_id (32 max), AE_OWNER_ID_LIMIT\n"));
ACPI_REPORT_ERROR(("Could not allocate new owner_id (64 max), AE_OWNER_ID_LIMIT\n"));

exit:
(void)acpi_ut_release_mutex(ACPI_MTX_CACHES);
Expand All @@ -123,7 +123,7 @@ acpi_status acpi_ut_allocate_owner_id(acpi_owner_id * owner_id)
* control method or unloading a table. Either way, we would
* ignore any error anyway.
*
* DESCRIPTION: Release a table or method owner ID. Valid IDs are 1 - 32
* DESCRIPTION: Release a table or method owner ID. Valid IDs are 1 - 64
*
******************************************************************************/

Expand All @@ -140,7 +140,7 @@ void acpi_ut_release_owner_id(acpi_owner_id * owner_id_ptr)

/* Zero is not a valid owner_iD */

if ((owner_id == 0) || (owner_id > 32)) {
if ((owner_id == 0) || (owner_id > 64)) {
ACPI_REPORT_ERROR(("Invalid owner_id: %2.2X\n", owner_id));
return_VOID;
}
Expand All @@ -158,8 +158,8 @@ void acpi_ut_release_owner_id(acpi_owner_id * owner_id_ptr)

/* Free the owner ID only if it is valid */

if (acpi_gbl_owner_id_mask & (1 << owner_id)) {
acpi_gbl_owner_id_mask ^= (1 << owner_id);
if (acpi_gbl_owner_id_mask & (1ULL << owner_id)) {
acpi_gbl_owner_id_mask ^= (1ULL << owner_id);
}

(void)acpi_ut_release_mutex(ACPI_MTX_CACHES);
Expand Down
2 changes: 1 addition & 1 deletion include/acpi/acglobal.h
Original file line number Diff line number Diff line change
Expand Up @@ -211,7 +211,7 @@ ACPI_EXTERN u32 acpi_gbl_original_mode;
ACPI_EXTERN u32 acpi_gbl_rsdp_original_location;
ACPI_EXTERN u32 acpi_gbl_ns_lookup_count;
ACPI_EXTERN u32 acpi_gbl_ps_find_count;
ACPI_EXTERN u32 acpi_gbl_owner_id_mask;
ACPI_EXTERN u64 acpi_gbl_owner_id_mask;
ACPI_EXTERN u16 acpi_gbl_pm1_enable_register_save;
ACPI_EXTERN u16 acpi_gbl_global_lock_handle;
ACPI_EXTERN u8 acpi_gbl_debugger_configuration;
Expand Down

0 comments on commit 05465fd

Please sign in to comment.