n_tty: Remove reader wakeups for TTY_BREAK/TTY_PARITY chars
Waking the reader immediately upon receipt of TTY_BREAK or TTY_PARITY chars has no effect on the outcome of read(): 1. Only non-canonical/EXTPROC mode applies since canonical mode will not return data until a line termination is received anyway 2. EXTPROC mode - the reader will always be woken by the input worker 3. Non-canonical modes a. MIN == 0, TIME == 0 b. MIN == 0, TIME > 0 c. MIN > 0, TIME > 0 minimum_to_wake is always 1 in these modes so the reader will always be woken by the input worker d. MIN > 0, TIME == 0 although the reader will not be woken by the input worker unless the minimum data is received, the reader would not otherwise have returned the received data Signed-off-by: Peter Hurley <peter@hurleysoftware.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Родитель
4bd0162264
Коммит
b3868e20f4
|
@ -1179,8 +1179,6 @@ static void n_tty_receive_break(struct tty_struct *tty)
|
||||||
put_tty_queue('\0', ldata);
|
put_tty_queue('\0', ldata);
|
||||||
}
|
}
|
||||||
put_tty_queue('\0', ldata);
|
put_tty_queue('\0', ldata);
|
||||||
if (waitqueue_active(&tty->read_wait))
|
|
||||||
wake_up_interruptible_poll(&tty->read_wait, POLLIN);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1237,8 +1235,6 @@ static void n_tty_receive_parity_error(struct tty_struct *tty, unsigned char c)
|
||||||
put_tty_queue('\0', ldata);
|
put_tty_queue('\0', ldata);
|
||||||
} else
|
} else
|
||||||
put_tty_queue(c, ldata);
|
put_tty_queue(c, ldata);
|
||||||
if (waitqueue_active(&tty->read_wait))
|
|
||||||
wake_up_interruptible_poll(&tty->read_wait, POLLIN);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
Загрузка…
Ссылка в новой задаче