From 978e595f88a1fba5869aa42a4af4fba36f33ecac Mon Sep 17 00:00:00 2001 From: Alan Cox Date: Wed, 30 Apr 2008 00:53:59 -0700 Subject: tty/serial: lay the foundations for the next set of reworks - Stop drivers calling their own flush method indirectly, it obfuscates code and it will change soon anyway - A few more lock_kernel paths temporarily needed in some driver internal waiting code - Remove private put_char method that does a write call for one char - we have that anyway - Most but not yet all of the termios copy under lock fixing (some has other dependencies to follow) - Note a few locking bugs in drivers found in the process - Kill remaining [ab]users of TIOCG/SSOFTCAR in the driver, these must go to fix the termios locking Signed-off-by: Alan Cox Cc: Jiri Slaby Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- drivers/char/moxa.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'drivers/char/moxa.c') diff --git a/drivers/char/moxa.c b/drivers/char/moxa.c index 1ab9517c24c5..585fac179ec6 100644 --- a/drivers/char/moxa.c +++ b/drivers/char/moxa.c @@ -1280,6 +1280,7 @@ static int moxa_chars_in_buffer(struct tty_struct *tty) */ if (ch == NULL) return 0; + lock_kernel(); chars = MoxaPortTxQueue(ch); if (chars) { /* @@ -1289,6 +1290,7 @@ static int moxa_chars_in_buffer(struct tty_struct *tty) if (!(ch->statusflags & EMPTYWAIT)) moxa_setup_empty_event(tty); } + unlock_kernel(); return chars; } -- cgit v1.2.2