summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJiri Slaby (SUSE) <jirislaby@kernel.org>2025-03-17 08:00:21 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-03-20 08:00:50 -0700
commitfdfa49a8c96500ef9e1fe1cd2e68c8fd71d8b53a (patch)
treec4e0cee72851d355f47c9c3a0f1684bd8e033589
parentd97aa066678bd1e2951ee93db9690835dfe57ab6 (diff)
tty: n_tty: simplify process_output()
Using guard(mutex), the function can be written in a much more efficient way. Signed-off-by: Jiri Slaby (SUSE) <jirislaby@kernel.org> Link: https://lore.kernel.org/r/20250317070046.24386-7-jirislaby@kernel.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/tty/n_tty.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/drivers/tty/n_tty.c b/drivers/tty/n_tty.c
index 765d24268d75..df52aae5f71a 100644
--- a/drivers/tty/n_tty.c
+++ b/drivers/tty/n_tty.c
@@ -488,19 +488,13 @@ static int do_output_char(u8 c, struct tty_struct *tty, int space)
static int process_output(u8 c, struct tty_struct *tty)
{
struct n_tty_data *ldata = tty->disc_data;
- unsigned int space;
- int retval;
- mutex_lock(&ldata->output_lock);
+ guard(mutex)(&ldata->output_lock);
- space = tty_write_room(tty);
- retval = do_output_char(c, tty, space);
-
- mutex_unlock(&ldata->output_lock);
- if (retval < 0)
+ if (do_output_char(c, tty, tty_write_room(tty)) < 0)
return -1;
- else
- return 0;
+
+ return 0;
}
/**