Commit fa7501e5 authored by Jiri Slaby's avatar Jiri Slaby Committed by Greg Kroah-Hartman

tty: remove tty_operations::chars_in_buffer for non-buffering

The only user of tty_ops::chars_in_buffer is tty_chars_in_buffer. And it
considers tty_ops::chars_in_buffer optional. In case it's NULL, zero is
returned. So remove all those chars_in_buffer from tty_ops which return
zero. (Zero means such driver doesn't buffer.)
Signed-off-by: default avatarJiri Slaby <jslaby@suse.cz>
Cc: Richard Henderson <rth@twiddle.net>
Acked-by: Max Filippov <jcmvbkbc@gmail.com> # xtensa
Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Cc: Matt Turner <mattst88@gmail.com>
Cc: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>
Cc: Helge Deller <deller@gmx.de>
Cc: Chris Zankel <chris@zankel.net>
Cc: Heiko Carstens <hca@linux.ibm.com>
Cc: Vasily Gorbik <gor@linux.ibm.com>
Cc: Christian Borntraeger <borntraeger@de.ibm.com>
Link: https://lore.kernel.org/r/20210505091928.22010-26-jslaby@suse.czSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 9a33fbf9
...@@ -148,12 +148,6 @@ srmcons_write_room(struct tty_struct *tty) ...@@ -148,12 +148,6 @@ srmcons_write_room(struct tty_struct *tty)
return 512; return 512;
} }
static int
srmcons_chars_in_buffer(struct tty_struct *tty)
{
return 0;
}
static int static int
srmcons_open(struct tty_struct *tty, struct file *filp) srmcons_open(struct tty_struct *tty, struct file *filp)
{ {
...@@ -200,7 +194,6 @@ static const struct tty_operations srmcons_ops = { ...@@ -200,7 +194,6 @@ static const struct tty_operations srmcons_ops = {
.close = srmcons_close, .close = srmcons_close,
.write = srmcons_write, .write = srmcons_write,
.write_room = srmcons_write_room, .write_room = srmcons_write_room,
.chars_in_buffer= srmcons_chars_in_buffer,
}; };
static int __init static int __init
......
...@@ -108,17 +108,11 @@ static unsigned int pdc_console_tty_write_room(struct tty_struct *tty) ...@@ -108,17 +108,11 @@ static unsigned int pdc_console_tty_write_room(struct tty_struct *tty)
return 32768; /* no limit, no buffer used */ return 32768; /* no limit, no buffer used */
} }
static int pdc_console_tty_chars_in_buffer(struct tty_struct *tty)
{
return 0; /* no buffer */
}
static const struct tty_operations pdc_console_tty_ops = { static const struct tty_operations pdc_console_tty_ops = {
.open = pdc_console_tty_open, .open = pdc_console_tty_open,
.close = pdc_console_tty_close, .close = pdc_console_tty_close,
.write = pdc_console_tty_write, .write = pdc_console_tty_write,
.write_room = pdc_console_tty_write_room, .write_room = pdc_console_tty_write_room,
.chars_in_buffer = pdc_console_tty_chars_in_buffer,
}; };
static void pdc_console_poll(struct timer_list *unused) static void pdc_console_poll(struct timer_list *unused)
......
...@@ -106,12 +106,6 @@ static unsigned int rs_write_room(struct tty_struct *tty) ...@@ -106,12 +106,6 @@ static unsigned int rs_write_room(struct tty_struct *tty)
return 2 * 1024; return 2 * 1024;
} }
static int rs_chars_in_buffer(struct tty_struct *tty)
{
/* the iss doesn't buffer characters */
return 0;
}
static void rs_hangup(struct tty_struct *tty) static void rs_hangup(struct tty_struct *tty)
{ {
/* Stub, once again.. */ /* Stub, once again.. */
...@@ -135,7 +129,6 @@ static const struct tty_operations serial_ops = { ...@@ -135,7 +129,6 @@ static const struct tty_operations serial_ops = {
.put_char = rs_put_char, .put_char = rs_put_char,
.flush_chars = rs_flush_chars, .flush_chars = rs_flush_chars,
.write_room = rs_write_room, .write_room = rs_write_room,
.chars_in_buffer = rs_chars_in_buffer,
.hangup = rs_hangup, .hangup = rs_hangup,
.wait_until_sent = rs_wait_until_sent, .wait_until_sent = rs_wait_until_sent,
.proc_show = rs_proc_show, .proc_show = rs_proc_show,
......
...@@ -1756,17 +1756,6 @@ tty3270_flush_chars(struct tty_struct *tty) ...@@ -1756,17 +1756,6 @@ tty3270_flush_chars(struct tty_struct *tty)
} }
} }
/*
* Returns the number of characters in the output buffer. This is
* used in tty_wait_until_sent to wait until all characters have
* appeared on the screen.
*/
static int
tty3270_chars_in_buffer(struct tty_struct *tty)
{
return 0;
}
static void static void
tty3270_flush_buffer(struct tty_struct *tty) tty3270_flush_buffer(struct tty_struct *tty)
{ {
...@@ -1892,7 +1881,6 @@ static const struct tty_operations tty3270_ops = { ...@@ -1892,7 +1881,6 @@ static const struct tty_operations tty3270_ops = {
.put_char = tty3270_put_char, .put_char = tty3270_put_char,
.flush_chars = tty3270_flush_chars, .flush_chars = tty3270_flush_chars,
.write_room = tty3270_write_room, .write_room = tty3270_write_room,
.chars_in_buffer = tty3270_chars_in_buffer,
.flush_buffer = tty3270_flush_buffer, .flush_buffer = tty3270_flush_buffer,
.throttle = tty3270_throttle, .throttle = tty3270_throttle,
.unthrottle = tty3270_unthrottle, .unthrottle = tty3270_unthrottle,
......
...@@ -143,19 +143,6 @@ static unsigned int pty_write_room(struct tty_struct *tty) ...@@ -143,19 +143,6 @@ static unsigned int pty_write_room(struct tty_struct *tty)
return tty_buffer_space_avail(tty->link->port); return tty_buffer_space_avail(tty->link->port);
} }
/**
* pty_chars_in_buffer - characters currently in our tx queue
* @tty: our tty
*
* Report how much we have in the transmit queue. As everything is
* instantly at the other end this is easy to implement.
*/
static int pty_chars_in_buffer(struct tty_struct *tty)
{
return 0;
}
/* Set the lock flag on a pty */ /* Set the lock flag on a pty */
static int pty_set_lock(struct tty_struct *tty, int __user *arg) static int pty_set_lock(struct tty_struct *tty, int __user *arg)
{ {
...@@ -525,7 +512,6 @@ static const struct tty_operations master_pty_ops_bsd = { ...@@ -525,7 +512,6 @@ static const struct tty_operations master_pty_ops_bsd = {
.write = pty_write, .write = pty_write,
.write_room = pty_write_room, .write_room = pty_write_room,
.flush_buffer = pty_flush_buffer, .flush_buffer = pty_flush_buffer,
.chars_in_buffer = pty_chars_in_buffer,
.unthrottle = pty_unthrottle, .unthrottle = pty_unthrottle,
.ioctl = pty_bsd_ioctl, .ioctl = pty_bsd_ioctl,
.compat_ioctl = pty_bsd_compat_ioctl, .compat_ioctl = pty_bsd_compat_ioctl,
...@@ -541,7 +527,6 @@ static const struct tty_operations slave_pty_ops_bsd = { ...@@ -541,7 +527,6 @@ static const struct tty_operations slave_pty_ops_bsd = {
.write = pty_write, .write = pty_write,
.write_room = pty_write_room, .write_room = pty_write_room,
.flush_buffer = pty_flush_buffer, .flush_buffer = pty_flush_buffer,
.chars_in_buffer = pty_chars_in_buffer,
.unthrottle = pty_unthrottle, .unthrottle = pty_unthrottle,
.set_termios = pty_set_termios, .set_termios = pty_set_termios,
.cleanup = pty_cleanup, .cleanup = pty_cleanup,
...@@ -776,7 +761,6 @@ static const struct tty_operations ptm_unix98_ops = { ...@@ -776,7 +761,6 @@ static const struct tty_operations ptm_unix98_ops = {
.write = pty_write, .write = pty_write,
.write_room = pty_write_room, .write_room = pty_write_room,
.flush_buffer = pty_flush_buffer, .flush_buffer = pty_flush_buffer,
.chars_in_buffer = pty_chars_in_buffer,
.unthrottle = pty_unthrottle, .unthrottle = pty_unthrottle,
.ioctl = pty_unix98_ioctl, .ioctl = pty_unix98_ioctl,
.compat_ioctl = pty_unix98_compat_ioctl, .compat_ioctl = pty_unix98_compat_ioctl,
...@@ -794,7 +778,6 @@ static const struct tty_operations pty_unix98_ops = { ...@@ -794,7 +778,6 @@ static const struct tty_operations pty_unix98_ops = {
.write = pty_write, .write = pty_write,
.write_room = pty_write_room, .write_room = pty_write_room,
.flush_buffer = pty_flush_buffer, .flush_buffer = pty_flush_buffer,
.chars_in_buffer = pty_chars_in_buffer,
.unthrottle = pty_unthrottle, .unthrottle = pty_unthrottle,
.set_termios = pty_set_termios, .set_termios = pty_set_termios,
.start = pty_start, .start = pty_start,
......
...@@ -3270,11 +3270,6 @@ static unsigned int con_write_room(struct tty_struct *tty) ...@@ -3270,11 +3270,6 @@ static unsigned int con_write_room(struct tty_struct *tty)
return 32768; /* No limit, really; we're not buffering */ return 32768; /* No limit, really; we're not buffering */
} }
static int con_chars_in_buffer(struct tty_struct *tty)
{
return 0; /* we're not buffering */
}
/* /*
* con_throttle and con_unthrottle are only used for * con_throttle and con_unthrottle are only used for
* paste_selection(), which has to stuff in a large number of * paste_selection(), which has to stuff in a large number of
...@@ -3521,7 +3516,6 @@ static const struct tty_operations con_ops = { ...@@ -3521,7 +3516,6 @@ static const struct tty_operations con_ops = {
.write_room = con_write_room, .write_room = con_write_room,
.put_char = con_put_char, .put_char = con_put_char,
.flush_chars = con_flush_chars, .flush_chars = con_flush_chars,
.chars_in_buffer = con_chars_in_buffer,
.ioctl = vt_ioctl, .ioctl = vt_ioctl,
#ifdef CONFIG_COMPAT #ifdef CONFIG_COMPAT
.compat_ioctl = vt_compat_ioctl, .compat_ioctl = vt_compat_ioctl,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment