ACK: [PATCH Trusty SRU] n_tty: Fix poll() when TIME_CHAR and MIN_CHAR == 0
Chris J Arges
chris.j.arges at canonical.com
Tue Sep 15 15:42:01 UTC 2015
On Tue, Sep 15, 2015 at 07:48:55AM -0600, tim.gardner at canonical.com wrote:
> From: Peter Hurley <peter at hurleysoftware.com>
>
> BugLink: http://bugs.launchpad.net/bugs/1397976
>
> Commit eafbe67f84761d787802e5113d895a316b6292fe,
> n_tty: Refactor input_available_p() by call site
> broke poll() when TIME_CHAR(tty) and MIN_CHAR(tty) are both 0.
>
> When TIME_CHAR and MIN_CHAR are both 0, input is available if the
> read_cnt is 1 (not 0).
>
> Reported-by: Eric Dumazet <edumazet at google.com>
> Tested-by: Eric Dumazet <edumazet at google.com>
> Reported-by: Stephane Eranian <eranian at google.com>
> Tested-by: David Ahern <dsahern at gmail.com>
> Tested-by: Arnaldo Carvalho de Melo <acme at redhat.com>
> Signed-off-by: Peter Hurley <peter at hurleysoftware.com>
> Signed-off-by: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
> (cherry picked from commit a5934804a834f525c9e6289935ceef65b952b101)
> Signed-off-by: Tim Gardner <tim.gardner at canonical.com>
> ---
>
> It appears we didn't get all of the relevant commits. This looks good for stable as well.
> https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1397976/comments/4
>
> drivers/tty/n_tty.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/tty/n_tty.c b/drivers/tty/n_tty.c
> index 3480a67..84dcdf4 100644
> --- a/drivers/tty/n_tty.c
> +++ b/drivers/tty/n_tty.c
> @@ -1961,7 +1961,7 @@ err:
> static inline int input_available_p(struct tty_struct *tty, int poll)
> {
> struct n_tty_data *ldata = tty->disc_data;
> - int amt = poll && !TIME_CHAR(tty) ? MIN_CHAR(tty) : 1;
> + int amt = poll && !TIME_CHAR(tty) && MIN_CHAR(tty) ? MIN_CHAR(tty) : 1;
>
> if (ldata->icanon && !L_EXTPROC(tty)) {
> if (ldata->canon_head != ldata->read_tail)
> --
> 1.9.1
>
>
> --
> kernel-team mailing list
> kernel-team at lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team
>
More information about the kernel-team
mailing list