]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
macintosh: Use common error handling code in via_pmu_led_init()
authorMarkus Elfring <elfring@users.sourceforge.net>
Thu, 3 Oct 2024 19:06:42 +0000 (21:06 +0200)
committerMichael Ellerman <mpe@ellerman.id.au>
Thu, 14 Nov 2024 11:54:28 +0000 (22:54 +1100)
Add a jump target so that a bit of exception handling can be better reused
at the end of this function implementation.

This issue was detected by using the Coccinelle software.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://patch.msgid.link/189b93e2-4e81-438d-9c77-cbe4d9d7a0d9@web.de
drivers/macintosh/via-pmu-led.c

index a4fb16d7db3c11faef51b8f37c937ec0acacd5df..fc1af74b659672205a6dd78c34a9e596aa6fe55b 100644 (file)
@@ -92,18 +92,15 @@ static int __init via_pmu_led_init(void)
        if (dt == NULL)
                return -ENODEV;
        model = of_get_property(dt, "model", NULL);
-       if (model == NULL) {
-               of_node_put(dt);
-               return -ENODEV;
-       }
+       if (!model)
+               goto put_node;
+
        if (strncmp(model, "PowerBook", strlen("PowerBook")) != 0 &&
            strncmp(model, "iBook", strlen("iBook")) != 0 &&
            strcmp(model, "PowerMac7,2") != 0 &&
-           strcmp(model, "PowerMac7,3") != 0) {
-               of_node_put(dt);
-               /* ignore */
-               return -ENODEV;
-       }
+           strcmp(model, "PowerMac7,3") != 0)
+               goto put_node;
+
        of_node_put(dt);
 
        spin_lock_init(&pmu_blink_lock);
@@ -112,6 +109,10 @@ static int __init via_pmu_led_init(void)
        pmu_blink_req.done = pmu_req_done;
 
        return led_classdev_register(NULL, &pmu_led);
+
+put_node:
+       of_node_put(dt);
+       return -ENODEV;
 }
 
 late_initcall(via_pmu_led_init);