From 2ddf25df64f3c61c5bf9413cad996e9a7ca66736 Mon Sep 17 00:00:00 2001 From: Holger Macht Date: Mon, 9 Jun 2008 16:22:24 -0700 Subject: [PATCH] --- yaml --- r: 98002 b: refs/heads/master c: 7efd52a407bed6a2b02015b8ebbff7beba155392 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/acpi/bay.c | 16 ++++++++++------ 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/[refs] b/[refs] index d52628e0f385..f0fac43baf88 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 1fdd68608614cd1e951fd93873fe5597374e8c54 +refs/heads/master: 7efd52a407bed6a2b02015b8ebbff7beba155392 diff --git a/trunk/drivers/acpi/bay.c b/trunk/drivers/acpi/bay.c index d2fc94161848..26038c2a2a71 100644 --- a/trunk/drivers/acpi/bay.c +++ b/trunk/drivers/acpi/bay.c @@ -301,16 +301,20 @@ static int bay_add(acpi_handle handle, int id) */ pdev->dev.uevent_suppress = 0; - if (acpi_bay_add_fs(new_bay)) { - platform_device_unregister(new_bay->pdev); - goto bay_add_err; - } - /* register for events on this device */ status = acpi_install_notify_handler(handle, ACPI_SYSTEM_NOTIFY, bay_notify, new_bay); if (ACPI_FAILURE(status)) { - printk(KERN_ERR PREFIX "Error installing bay notify handler\n"); + printk(KERN_INFO PREFIX "Error installing bay notify handler\n"); + platform_device_unregister(new_bay->pdev); + goto bay_add_err; + } + + if (acpi_bay_add_fs(new_bay)) { + acpi_remove_notify_handler(handle, ACPI_SYSTEM_NOTIFY, + bay_notify); + platform_device_unregister(new_bay->pdev); + goto bay_add_err; } /* if we are on a dock station, we should register for dock