USB: remove references to port->port.count from the serial drivers
This patch (as1344) removes references to port->port.count from the USB serial drivers. Now that serial ports are properly reference counted, port.count checking is unnecessary and incorrect. Drivers should assume that the port is in use from the time the open method runs until the close method is called. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:

committed by
Greg Kroah-Hartman

parent
a108bfcb37
commit
1f87158e44
@@ -468,10 +468,6 @@ static void aircable_read_bulk_callback(struct urb *urb)
|
||||
|
||||
if (status) {
|
||||
dbg("%s - urb status = %d", __func__, status);
|
||||
if (!port->port.count) {
|
||||
dbg("%s - port is closed, exiting.", __func__);
|
||||
return;
|
||||
}
|
||||
if (status == -EPROTO) {
|
||||
dbg("%s - caught -EPROTO, resubmitting the urb",
|
||||
__func__);
|
||||
@@ -530,23 +526,19 @@ static void aircable_read_bulk_callback(struct urb *urb)
|
||||
}
|
||||
tty_kref_put(tty);
|
||||
|
||||
/* Schedule the next read _if_ we are still open */
|
||||
if (port->port.count) {
|
||||
usb_fill_bulk_urb(port->read_urb, port->serial->dev,
|
||||
usb_rcvbulkpipe(port->serial->dev,
|
||||
port->bulk_in_endpointAddress),
|
||||
port->read_urb->transfer_buffer,
|
||||
port->read_urb->transfer_buffer_length,
|
||||
aircable_read_bulk_callback, port);
|
||||
/* Schedule the next read */
|
||||
usb_fill_bulk_urb(port->read_urb, port->serial->dev,
|
||||
usb_rcvbulkpipe(port->serial->dev,
|
||||
port->bulk_in_endpointAddress),
|
||||
port->read_urb->transfer_buffer,
|
||||
port->read_urb->transfer_buffer_length,
|
||||
aircable_read_bulk_callback, port);
|
||||
|
||||
result = usb_submit_urb(urb, GFP_ATOMIC);
|
||||
if (result)
|
||||
dev_err(&urb->dev->dev,
|
||||
"%s - failed resubmitting read urb, error %d\n",
|
||||
__func__, result);
|
||||
}
|
||||
|
||||
return;
|
||||
result = usb_submit_urb(urb, GFP_ATOMIC);
|
||||
if (result && result != -EPERM)
|
||||
dev_err(&urb->dev->dev,
|
||||
"%s - failed resubmitting read urb, error %d\n",
|
||||
__func__, result);
|
||||
}
|
||||
|
||||
/* Based on ftdi_sio.c throttle */
|
||||
|
Reference in New Issue
Block a user