From: Andrew Morton Dmitry: "I think that you should free (unregister) input device only after button handler was unregistered, otherwise there is a risk that it will try to access already freed device. Other than that input part looks good." Cc: Jaya Kumar Cc: "Brown, Len" Cc: Dmitry Torokhov Cc: "Yu, Luming" Signed-off-by: Andrew Morton --- drivers/acpi/atlas_acpi.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff -puN drivers/acpi/atlas_acpi.c~acpi-atlas-acpi-driver-fix drivers/acpi/atlas_acpi.c --- devel/drivers/acpi/atlas_acpi.c~acpi-atlas-acpi-driver-fix 2006-06-02 11:19:27.000000000 -0700 +++ devel-akpm/drivers/acpi/atlas_acpi.c 2006-06-02 11:19:27.000000000 -0700 @@ -146,12 +146,11 @@ static int atlas_acpi_button_remove(stru { acpi_status status; - atlas_free_input(); status = acpi_remove_address_space_handler(device->handle, 0x81, &acpi_atlas_button_handler); if (ACPI_FAILURE(status)) printk(KERN_ERR "Atlas: Error removing addr spc handler\n"); - + atlas_free_input(); return status; } _