tty: convert THROTTLE constants into enum

And make an explicit constant for zero too. This allows for easier type
checking of the parameter.

Note: tty_struct::flow_change is kept as int because include/tty.h
(tty_struct) doesn't see tty/tty.h (this enum).

Signed-off-by: "Jiri Slaby (SUSE)" <jirislaby@kernel.org>
Link: https://lore.kernel.org/r/20230919085156.1578-13-jirislaby@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Jiri Slaby (SUSE) 2023-09-19 10:51:53 +02:00 committed by Greg Kroah-Hartman
parent 083cfcf383
commit e5d0424ac3
2 changed files with 10 additions and 5 deletions

View file

@ -41,15 +41,20 @@ enum {
};
/* Values for tty->flow_change */
#define TTY_THROTTLE_SAFE 1
#define TTY_UNTHROTTLE_SAFE 2
enum tty_flow_change {
TTY_FLOW_NO_CHANGE,
TTY_THROTTLE_SAFE,
TTY_UNTHROTTLE_SAFE,
};
static inline void __tty_set_flow_change(struct tty_struct *tty, int val)
static inline void __tty_set_flow_change(struct tty_struct *tty,
enum tty_flow_change val)
{
tty->flow_change = val;
}
static inline void tty_set_flow_change(struct tty_struct *tty, int val)
static inline void tty_set_flow_change(struct tty_struct *tty,
enum tty_flow_change val)
{
tty->flow_change = val;
smp_mb();

View file

@ -104,7 +104,7 @@ void tty_unthrottle(struct tty_struct *tty)
if (test_and_clear_bit(TTY_THROTTLED, &tty->flags) &&
tty->ops->unthrottle)
tty->ops->unthrottle(tty);
tty->flow_change = 0;
tty->flow_change = TTY_FLOW_NO_CHANGE;
up_write(&tty->termios_rwsem);
}
EXPORT_SYMBOL(tty_unthrottle);