diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-09-05 12:46:07 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-09-05 12:46:07 -0700 |
commit | 37f81fa1f63ad38e16125526bb2769ae0ea8d332 (patch) | |
tree | 116ee462263777d2cd12b578b60ffe04a8a5b38c /drivers/Kconfig | |
parent | a2a8474c3fff88d8dd52d05cb450563fb26fd26c (diff) | |
download | linux-37f81fa1f63ad38e16125526bb2769ae0ea8d332.tar.bz2 |
n_tty: do O_ONLCR translation as a single write
When translating CR to CRNL in the n_tty line discipline, we did it as
two tty_put_char() calls. Which works, but is stupid, and has caused
problems before too with bad interactions with the write_room() logic.
The generic USB serial driver had that problem, for example.
Now the pty layer had similar issues after being moved to the generic
tty buffering code (in commit d945cb9cce20ac7143c2de8d88b187f62db99bdc:
"pty: Rework the pty layer to use the normal buffering logic").
So stop doing the silly separate two writes, and do it as a single write
instead. That's what the n_tty layer already does for the space
expansion of tabs (XTABS), and it means that we'll now always have just
a single write for the CRNL to match the single 'tty_write_room()' test,
which hopefully means that the next time somebody screws up buffering,
it won't cause weeks of debugging.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/Kconfig')
0 files changed, 0 insertions, 0 deletions