OSDN Git Service

Revert "serial/sunsu: add missing of_node_put()"
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 5 Dec 2018 09:53:42 +0000 (10:53 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 5 Dec 2018 09:53:42 +0000 (10:53 +0100)
This reverts commit 20d8e8611eb0596047fd4389be7a7203a883b9bf.

As David Miller points out, it's wrong.

Reported-by: David Miller <davem@davemloft.net>
Cc: Yangtao Li <tiny.windzz@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/sunsu.c

index 4a27c01..6cf3e9b 100644 (file)
@@ -1394,32 +1394,22 @@ static inline struct console *SUNSU_CONSOLE(void)
 static enum su_type su_get_type(struct device_node *dp)
 {
        struct device_node *ap = of_find_node_by_path("/aliases");
-       enum su_type rc = SU_PORT_PORT;
 
        if (ap) {
-               struct device_node *tmp;
                const char *keyb = of_get_property(ap, "keyboard", NULL);
                const char *ms = of_get_property(ap, "mouse", NULL);
 
                if (keyb) {
-                       tmp = of_find_node_by_path(keyb);
-                       if (tmp && dp == tmp){
-                               rc = SU_PORT_KBD;
-                               goto out;
-                       }
+                       if (dp == of_find_node_by_path(keyb))
+                               return SU_PORT_KBD;
                }
                if (ms) {
-                       tmp = of_find_node_by_path(ms);
-                       if (tmp && dp == tmp){
-                               rc = SU_PORT_MS;
-                               goto out;
-                       }
+                       if (dp == of_find_node_by_path(ms))
+                               return SU_PORT_MS;
                }
        }
 
-out:
-       of_node_put(ap);
-       return rc;
+       return SU_PORT_PORT;
 }
 
 static int su_probe(struct platform_device *op)