Hello Johan Hovold,
The patch 7a6ee2b02751: "USB: opticon: switch to generic read
implementation" from Nov 18, 2012, leads to the following static
checker warning:
drivers/usb/serial/opticon.c:146 opticon_open()
info: return a literal instead of 'res'
drivers/usb/serial/opticon.c
128 static int opticon_open(struct tty_struct *tty, struct usb_serial_port
*port)
129 {
130 struct opticon_private *priv = usb_get_serial_port_data(port);
131 unsigned long flags;
132 int res;
133
134 spin_lock_irqsave(&priv->lock, flags);
135 priv->rts = false;
136 spin_unlock_irqrestore(&priv->lock, flags);
137
138 /* Clear RTS line */
139 send_control_msg(port, CONTROL_RTS, 0);
140
141 /* clear the halt status of the endpoint */
142 usb_clear_halt(port->serial->dev, port->read_urb->pipe);
143
144 res = usb_serial_generic_open(tty, port);
145 if (!res)
146 return res;
I think this if (!ret) statement is reversed. In the original code we
used to send RESEND_CTS_STATE on both the failure and success paths.
147
148 /* Request CTS line state, sometimes during opening the current
149 * CTS state can be missed. */
150 send_control_msg(port, RESEND_CTS_STATE, 1);
151
152 return res;
153 }
regards,
dan carpenter
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html