Files
linux/drivers/tty
Daniel Starke 00fa5cbbb6 tty: n_gsm: fix invalid gsmtty_write_room() result
[ Upstream commit 9361ebfbb7 ]

gsmtty_write() does not prevent the user to use the full fifo size of 4096
bytes as allocated in gsm_dlci_alloc(). However, gsmtty_write_room() tries
to limit the return value by 'TX_SIZE' and returns a negative value if the
fifo has more than 'TX_SIZE' bytes stored. This is obviously wrong as
'TX_SIZE' is defined as 512.
Define 'TX_SIZE' to the fifo size and use it accordingly for allocation to
keep the current behavior. Return the correct remaining size of the fifo in
gsmtty_write_room() via kfifo_avail().

Fixes: e1eaea46bb ("tty: n_gsm line discipline")
Cc: stable@vger.kernel.org
Signed-off-by: Daniel Starke <daniel.starke@siemens.com>
Link: https://lore.kernel.org/r/20220504081733.3494-3-daniel.starke@siemens.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-07-12 16:35:06 +02:00
..
2021-07-27 12:17:21 +02:00
2021-07-27 12:17:21 +02:00
2021-07-27 12:17:21 +02:00
2021-07-27 12:17:21 +02:00
2021-07-27 12:17:21 +02:00
2021-09-14 11:18:47 +02:00
2021-04-15 10:32:17 +02:00
2021-07-27 12:17:21 +02:00
2021-07-27 12:17:21 +02:00