Handle errors immediately in eeepc_register_rfkill_notifier and
eeepc_unregister_rfkill_notifier. This clears up the control flow for the
reader. It also removes unnecessary indentation.

Signed-off-by: Frans Klaver <[email protected]>
---
This depends on the earlier eeepc cleanup series [1] to apply cleanly.

[1] https://lkml.org/lkml/2014/9/17/654

 drivers/platform/x86/eeepc-laptop.c | 57 ++++++++++++++++++-------------------
 1 file changed, 28 insertions(+), 29 deletions(-)

diff --git a/drivers/platform/x86/eeepc-laptop.c 
b/drivers/platform/x86/eeepc-laptop.c
index 3f6c762..db79902 100644
--- a/drivers/platform/x86/eeepc-laptop.c
+++ b/drivers/platform/x86/eeepc-laptop.c
@@ -668,23 +668,21 @@ static int eeepc_register_rfkill_notifier(struct 
eeepc_laptop *eeepc,
 
        status = acpi_get_handle(NULL, node, &handle);
 
-       if (ACPI_SUCCESS(status)) {
-               status = acpi_install_notify_handler(handle,
-                                                    ACPI_SYSTEM_NOTIFY,
-                                                    eeepc_rfkill_notify,
-                                                    eeepc);
-               if (ACPI_FAILURE(status))
-                       pr_warn("Failed to register notify on %s\n", node);
-
-               /*
-                * Refresh pci hotplug in case the rfkill state was
-                * changed during setup.
-                */
-               eeepc_rfkill_hotplug(eeepc, handle);
-       } else {
+       if (ACPI_FAILURE(status))
                return -ENODEV;
-       }
 
+       status = acpi_install_notify_handler(handle,
+                                            ACPI_SYSTEM_NOTIFY,
+                                            eeepc_rfkill_notify,
+                                            eeepc);
+       if (ACPI_FAILURE(status))
+               pr_warn("Failed to register notify on %s\n", node);
+
+       /*
+        * Refresh pci hotplug in case the rfkill state was
+        * changed during setup.
+        */
+       eeepc_rfkill_hotplug(eeepc, handle);
        return 0;
 }
 
@@ -696,20 +694,21 @@ static void eeepc_unregister_rfkill_notifier(struct 
eeepc_laptop *eeepc,
 
        status = acpi_get_handle(NULL, node, &handle);
 
-       if (ACPI_SUCCESS(status)) {
-               status = acpi_remove_notify_handler(handle,
-                                                    ACPI_SYSTEM_NOTIFY,
-                                                    eeepc_rfkill_notify);
-               if (ACPI_FAILURE(status))
-                       pr_err("Error removing rfkill notify handler %s\n",
-                               node);
-                       /*
-                        * Refresh pci hotplug in case the rfkill
-                        * state was changed after
-                        * eeepc_unregister_rfkill_notifier()
-                        */
-               eeepc_rfkill_hotplug(eeepc, handle);
-       }
+       if (ACPI_FAILURE(status))
+               return;
+
+       status = acpi_remove_notify_handler(handle,
+                                            ACPI_SYSTEM_NOTIFY,
+                                            eeepc_rfkill_notify);
+       if (ACPI_FAILURE(status))
+               pr_err("Error removing rfkill notify handler %s\n",
+                       node);
+               /*
+                * Refresh pci hotplug in case the rfkill
+                * state was changed after
+                * eeepc_unregister_rfkill_notifier()
+                */
+       eeepc_rfkill_hotplug(eeepc, handle);
 }
 
 static int eeepc_get_adapter_status(struct hotplug_slot *hotplug_slot,
-- 
2.1.0

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to