usb: xhci: Clean up error code in xhci_dbc_tty_register_device()
authorDan Carpenter <dan.carpenter@oracle.com>
Fri, 16 Mar 2018 14:32:58 +0000 (16:32 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 16 Mar 2018 14:40:18 +0000 (15:40 +0100)
tty_port_register_device() returns error pointers on error, never NULL.
The IS_ERR_OR_NULL() function returns either 1 or 0 so it means we
return 1 on error instead of a proper error code.  The caller only
checks for zero vs non-zero so this doesn't affect runtime.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/host/xhci-dbgtty.c

index 8d47b6f..6f534b6 100644 (file)
@@ -443,9 +443,10 @@ int xhci_dbc_tty_register_device(struct xhci_hcd *xhci)
        xhci_dbc_tty_init_port(xhci, port);
        tty_dev = tty_port_register_device(&port->port,
                                           dbc_tty_driver, 0, NULL);
-       ret = IS_ERR_OR_NULL(tty_dev);
-       if (ret)
+       if (IS_ERR(tty_dev)) {
+               ret = PTR_ERR(tty_dev);
                goto register_fail;
+       }
 
        ret = kfifo_alloc(&port->write_fifo, DBC_WRITE_BUF_SIZE, GFP_KERNEL);
        if (ret)