diff options
Diffstat (limited to 'drivers/usb/serial/navman.c')
-rw-r--r-- | drivers/usb/serial/navman.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/usb/serial/navman.c b/drivers/usb/serial/navman.c index d673653..bcdcbb8 100644 --- a/drivers/usb/serial/navman.c +++ b/drivers/usb/serial/navman.c @@ -64,12 +64,13 @@ static void navman_read_int_callback(struct urb *urb) usb_serial_debug_data(debug, &port->dev, __func__, urb->actual_length, data); - tty = port->port.tty; + tty = tty_port_tty_get(&port->port); if (tty && urb->actual_length) { tty_buffer_request_room(tty, urb->actual_length); tty_insert_flip_string(tty, data, urb->actual_length); tty_flip_buffer_push(tty); } + tty_kref_put(tty); exit: result = usb_submit_urb(urb, GFP_ATOMIC); |