[PATCH -next 0/5] set_ldisc notification fixes

From: Peter Hurley
Date: Wed Nov 05 2014 - 13:12:07 EST


Hi Greg,

This patch series fixes several locking and functional problems
with the .set_ldisc() notification sent by the tty core:
1) termios is used without holding termios_rwsem
2) uart port flags are changed without holding port mutex
3) several of the drivers call their enable_ms() routines directly
without holding port lock
4) The set_ldisc notification will turn on modem status interrupts
if the CD line is being used for N_PPS time signal, but doesn't
turn modem status interrupts back off if N_PPS is being unset.

Note: this series depends on the 26-patch 'tty locking changes'
series and the 10-patch 'serial core fixes' series.

Regards,

Peter Hurley (5):
tty: Allow safe access to termios for set_ldisc() handlers
serial: core: Claim port mutex for set_ldisc()
serial: core: Pass termios to set_ldisc() notifications
serial: Take uart port lock for direct *_enable_ms()
serial: Test/disable MSIs if switching from N_PPS

drivers/tty/serial/8250/8250_core.c | 27 ++++++++++++++++++++++++---
drivers/tty/serial/amba-pl010.c | 24 +++++++++++++++++++++---
drivers/tty/serial/atmel_serial.c | 11 +++++++++--
drivers/tty/serial/bfin_uart.c | 5 +++--
drivers/tty/serial/clps711x.c | 5 +++--
drivers/tty/serial/serial_core.c | 7 +++++--
drivers/tty/tty_ldisc.c | 5 ++++-
include/linux/serial_core.h | 2 +-
8 files changed, 70 insertions(+), 16 deletions(-)

--
2.1.3

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/