diff --git a/[refs] b/[refs] index 917055c478ee..556514c86b36 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: f7f71cfbf0c276ee3d8d856d0f35a41aed997fa4 +refs/heads/master: 581de59e8dff8eaa52809e768a585e9ef336aa4a diff --git a/trunk/drivers/acpi/acpica/hwregs.c b/trunk/drivers/acpi/acpica/hwregs.c index cc70f3fdcdd1..55accb7018bb 100644 --- a/trunk/drivers/acpi/acpica/hwregs.c +++ b/trunk/drivers/acpi/acpica/hwregs.c @@ -269,17 +269,16 @@ acpi_status acpi_hw_clear_acpi_status(void) status = acpi_hw_register_write(ACPI_REGISTER_PM1_STATUS, ACPI_BITMASK_ALL_FIXED_STATUS); - - acpi_os_release_lock(acpi_gbl_hardware_lock, lock_flags); - - if (ACPI_FAILURE(status)) - goto exit; + if (ACPI_FAILURE(status)) { + goto unlock_and_exit; + } /* Clear the GPE Bits in all GPE registers in all GPE blocks */ status = acpi_ev_walk_gpe_list(acpi_hw_clear_gpe_block, NULL); -exit: + unlock_and_exit: + acpi_os_release_lock(acpi_gbl_hardware_lock, lock_flags); return_ACPI_STATUS(status); } diff --git a/trunk/drivers/acpi/scan.c b/trunk/drivers/acpi/scan.c index 449c556274c0..8ab80bafe3f1 100644 --- a/trunk/drivers/acpi/scan.c +++ b/trunk/drivers/acpi/scan.c @@ -1062,13 +1062,12 @@ static void acpi_add_id(struct acpi_device *device, const char *dev_id) if (!id) return; - id->id = kmalloc(strlen(dev_id) + 1, GFP_KERNEL); + id->id = kstrdup(dev_id, GFP_KERNEL); if (!id->id) { kfree(id); return; } - strcpy(id->id, dev_id); list_add_tail(&id->list, &device->pnp.ids); }