summaryrefslogtreecommitdiffstats
path: root/drivers/tty/serial/pch_uart.c
diff options
context:
space:
mode:
authorJohan Hovold <jhovold@gmail.com>2013-09-10 12:50:51 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-09-17 19:05:47 +0200
commit0b53861230729f60a4a02a838fb51a2345b16f71 (patch)
tree1c5ff71ab1ac4113f10a07a0291dcc88a09f9c42 /drivers/tty/serial/pch_uart.c
parentserial: pch_uart: fix tty-kref leak in dma-rx path (diff)
downloadlinux-0b53861230729f60a4a02a838fb51a2345b16f71.tar.xz
linux-0b53861230729f60a4a02a838fb51a2345b16f71.zip
serial: pch_uart: remove unnecessary tty_port_tty_get
Remove unused tty-reference from dma-rx path which was left after the recent tty-port conversions. Also remove a redundant port initialisation while at it. Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/tty/serial/pch_uart.c')
-rw-r--r--drivers/tty/serial/pch_uart.c12
1 files changed, 1 insertions, 11 deletions
diff --git a/drivers/tty/serial/pch_uart.c b/drivers/tty/serial/pch_uart.c
index 2c5a3e4a17db..44077c0b7670 100644
--- a/drivers/tty/serial/pch_uart.c
+++ b/drivers/tty/serial/pch_uart.c
@@ -667,31 +667,21 @@ static int pop_tx_x(struct eg20t_port *priv, unsigned char *buf)
static int dma_push_rx(struct eg20t_port *priv, int size)
{
- struct tty_struct *tty;
int room;
struct uart_port *port = &priv->port;
struct tty_port *tport = &port->state->port;
- port = &priv->port;
- tty = tty_port_tty_get(tport);
- if (!tty) {
- dev_dbg(priv->port.dev, "%s:tty is busy now", __func__);
- return 0;
- }
-
room = tty_buffer_request_room(tport, size);
if (room < size)
dev_warn(port->dev, "Rx overrun: dropping %u bytes\n",
size - room);
if (!room)
- goto out;
+ return 0;
tty_insert_flip_string(tport, sg_virt(&priv->sg_rx), size);
port->icount.rx += room;
-out:
- tty_kref_put(tty);
return room;
}