Make status handling in bulk in callback function more compact, which renders goto pointless. Signed-off-by: Ladislav Michl <ladis@xxxxxxxxxxxxxx> --- drivers/usb/serial/ti_usb_3410_5052.c | 36 ++++++++++++++--------------------- 1 file changed, 14 insertions(+), 22 deletions(-) diff --git a/drivers/usb/serial/ti_usb_3410_5052.c b/drivers/usb/serial/ti_usb_3410_5052.c index 6b22857f6e52..2786ec7bbca2 100644 --- a/drivers/usb/serial/ti_usb_3410_5052.c +++ b/drivers/usb/serial/ti_usb_3410_5052.c @@ -1219,29 +1219,10 @@ static void ti_bulk_in_callback(struct urb *urb) switch (status) { case 0: - break; - case -ECONNRESET: - case -ENOENT: - case -ESHUTDOWN: - dev_dbg(dev, "%s - urb shutting down, %d\n", __func__, status); - return; - default: - dev_err(dev, "%s - nonzero urb status, %d\n", - __func__, status); - } - - if (status == -EPIPE) - goto exit; - - if (status) { - dev_err(dev, "%s - stopping read!\n", __func__); - return; - } - - if (urb->actual_length) { + if (!urb->actual_length) + break; usb_serial_debug_data(dev, __func__, urb->actual_length, urb->transfer_buffer); - if (!tport->tp_is_open) dev_dbg(dev, "%s - port closed, dropping data\n", __func__); @@ -1250,9 +1231,20 @@ static void ti_bulk_in_callback(struct urb *urb) spin_lock(&tport->tp_lock); port->icount.rx += urb->actual_length; spin_unlock(&tport->tp_lock); + break; + case -ECONNRESET: + case -ENOENT: + case -ESHUTDOWN: + dev_dbg(dev, "%s - urb shutting down, %d\n", __func__, status); + return; + case -EPIPE: + break; + default: + dev_err(dev, "%s - nonzero urb status, %d\n", + __func__, status); + return; } -exit: /* continue to read unless stopping */ spin_lock(&tport->tp_lock); if (tport->tp_read_urb_state == TI_READ_URB_RUNNING) -- 2.15.1 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html