Smatch complains about a potential missing error code:

    drivers/usb/typec/port-mapper.c:168 typec_link_port()
    warn: missing error code 'ret'

This is a false positive and returning zero is intentional.  Let's
re-arrange the code to silence the warning and make the intent more
clear.

Signed-off-by: Dan Carpenter <dan.carpen...@oracle.com>
---
 drivers/usb/typec/port-mapper.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/usb/typec/port-mapper.c b/drivers/usb/typec/port-mapper.c
index fae736eb0601..9b0991bdf391 100644
--- a/drivers/usb/typec/port-mapper.c
+++ b/drivers/usb/typec/port-mapper.c
@@ -157,15 +157,17 @@ int typec_link_port(struct device *port)
 {
        struct device *connector;
        struct port_node *node;
-       int ret = 0;
+       int ret;
 
        node = create_port_node(port);
        if (IS_ERR(node))
                return PTR_ERR(node);
 
        connector = find_connector(node);
-       if (!connector)
+       if (!connector) {
+               ret = 0;
                goto remove_node;
+       }
 
        ret = link_port(to_typec_port(connector), node);
        if (ret)
-- 
2.30.2

Reply via email to