Commit e5d0424a authored by Jiri Slaby (SUSE)'s avatar Jiri Slaby (SUSE) Committed by Greg Kroah-Hartman
Browse files

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: default avatar"Jiri Slaby (SUSE)" <jirislaby@kernel.org>
Link: https://lore.kernel.org/r/20230919085156.1578-13-jirislaby@kernel.org


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 083cfcf3
Loading
Loading
Loading
Loading
+9 −4
Original line number Diff line number Diff line
@@ -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();
+1 −1
Original line number Diff line number Diff line
@@ -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);