提交 9388e2e7 编写于 作者: J Johan Hovold 提交者: Greg Kroah-Hartman

USB: pl2303: fix error characters not being reported to ldisc

Fix regression introduced by commit
d4fc4a7b (tty: Fix the PL2303 private
methods for sysrq).
Signed-off-by: NJohan Hovold <jhovold@gmail.com>
Cc: stable <stable@kernel.org>
Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
上级 cc01f17d
......@@ -1046,13 +1046,15 @@ static void pl2303_push_data(struct tty_struct *tty,
/* overrun is special, not associated with a char */
if (line_status & UART_OVERRUN_ERROR)
tty_insert_flip_char(tty, 0, TTY_OVERRUN);
if (port->console && port->sysrq) {
if (tty_flag == TTY_NORMAL && !(port->console && port->sysrq))
tty_insert_flip_string(tty, data, urb->actual_length);
else {
int i;
for (i = 0; i < urb->actual_length; ++i)
if (!usb_serial_handle_sysrq_char(tty, port, data[i]))
tty_insert_flip_char(tty, data[i], tty_flag);
} else
tty_insert_flip_string(tty, data, urb->actual_length);
}
tty_flip_buffer_push(tty);
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册