[PATCH] tty: Replace TTY_IO_ERROR bit tests with tty_io_error()

2016-04-09 Thread Peter Hurley
Abstract TTY_IO_ERROR status test treewide with tty_io_error().
NB: tty->flags uses atomic bit ops; replace non-atomic bit test
with test_bit().

Signed-off-by: Peter Hurley 
---

v3: redo of an earlier patch titled "tty: Use test_bit() with tty->flags"
v2: rebase

 arch/ia64/hp/sim/simserial.c   | 2 +-
 drivers/char/pcmcia/synclink_cs.c  | 2 +-
 drivers/isdn/i4l/isdn_tty.c| 6 +++---
 drivers/s390/char/tty3270.c| 4 ++--
 drivers/staging/dgnc/dgnc_tty.c| 2 +-
 drivers/tty/amiserial.c| 6 +++---
 drivers/tty/mxser.c| 7 +++
 drivers/tty/pty.c  | 2 +-
 drivers/tty/serial/crisv10.c   | 5 ++---
 drivers/tty/serial/serial_core.c   | 8 
 drivers/tty/synclink.c | 4 ++--
 drivers/tty/synclink_gt.c  | 4 ++--
 drivers/tty/synclinkmp.c   | 4 ++--
 drivers/tty/tty_io.c   | 5 ++---
 drivers/tty/tty_port.c | 2 +-
 include/linux/tty.h| 5 +
 net/irda/ircomm/ircomm_tty.c   | 2 +-
 net/irda/ircomm/ircomm_tty_ioctl.c | 6 +++---
 18 files changed, 39 insertions(+), 37 deletions(-)

diff --git a/arch/ia64/hp/sim/simserial.c b/arch/ia64/hp/sim/simserial.c
index e70cade..21fd50d 100644
--- a/arch/ia64/hp/sim/simserial.c
+++ b/arch/ia64/hp/sim/simserial.c
@@ -300,7 +300,7 @@ static int rs_ioctl(struct tty_struct *tty, unsigned int 
cmd, unsigned long arg)
if ((cmd != TIOCGSERIAL) && (cmd != TIOCSSERIAL) &&
(cmd != TIOCSERCONFIG) && (cmd != TIOCSERGSTRUCT) &&
(cmd != TIOCMIWAIT)) {
-   if (tty->flags & (1 << TTY_IO_ERROR))
+   if (tty_io_error(tty))
return -EIO;
}
 
diff --git a/drivers/char/pcmcia/synclink_cs.c 
b/drivers/char/pcmcia/synclink_cs.c
index 22c2765..825db42 100644
--- a/drivers/char/pcmcia/synclink_cs.c
+++ b/drivers/char/pcmcia/synclink_cs.c
@@ -2246,7 +2246,7 @@ static int mgslpc_ioctl(struct tty_struct *tty,
 
if ((cmd != TIOCGSERIAL) && (cmd != TIOCSSERIAL) &&
(cmd != TIOCMIWAIT)) {
-   if (tty->flags & (1 << TTY_IO_ERROR))
+   if (tty_io_error(tty))
return -EIO;
}
 
diff --git a/drivers/isdn/i4l/isdn_tty.c b/drivers/isdn/i4l/isdn_tty.c
index 947d5c9..f1edc08 100644
--- a/drivers/isdn/i4l/isdn_tty.c
+++ b/drivers/isdn/i4l/isdn_tty.c
@@ -1351,7 +1351,7 @@ isdn_tty_tiocmget(struct tty_struct *tty)
 
if (isdn_tty_paranoia_check(info, tty->name, __func__))
return -ENODEV;
-   if (tty->flags & (1 << TTY_IO_ERROR))
+   if (tty_io_error(tty))
return -EIO;
 
mutex_lock(_info_mutex);
@@ -1378,7 +1378,7 @@ isdn_tty_tiocmset(struct tty_struct *tty,
 
if (isdn_tty_paranoia_check(info, tty->name, __func__))
return -ENODEV;
-   if (tty->flags & (1 << TTY_IO_ERROR))
+   if (tty_io_error(tty))
return -EIO;
 
 #ifdef ISDN_DEBUG_MODEM_IOCTL
@@ -1419,7 +1419,7 @@ isdn_tty_ioctl(struct tty_struct *tty, uint cmd, ulong 
arg)
 
if (isdn_tty_paranoia_check(info, tty->name, "isdn_tty_ioctl"))
return -ENODEV;
-   if (tty->flags & (1 << TTY_IO_ERROR))
+   if (tty_io_error(tty))
return -EIO;
switch (cmd) {
case TCSBRK:   /* SVID version: non-zero arg --> no break */
diff --git a/drivers/s390/char/tty3270.c b/drivers/s390/char/tty3270.c
index e96fc7f..080a987 100644
--- a/drivers/s390/char/tty3270.c
+++ b/drivers/s390/char/tty3270.c
@@ -1804,7 +1804,7 @@ static int tty3270_ioctl(struct tty_struct *tty, unsigned 
int cmd,
tp = tty->driver_data;
if (!tp)
return -ENODEV;
-   if (tty->flags & (1 << TTY_IO_ERROR))
+   if (tty_io_error(tty))
return -EIO;
return kbd_ioctl(tp->kbd, cmd, arg);
 }
@@ -1818,7 +1818,7 @@ static long tty3270_compat_ioctl(struct tty_struct *tty,
tp = tty->driver_data;
if (!tp)
return -ENODEV;
-   if (tty->flags & (1 << TTY_IO_ERROR))
+   if (tty_io_error(tty))
return -EIO;
return kbd_ioctl(tp->kbd, cmd, (unsigned long)compat_ptr(arg));
 }
diff --git a/drivers/staging/dgnc/dgnc_tty.c b/drivers/staging/dgnc/dgnc_tty.c
index bcd2bdf..5c22159 100644
--- a/drivers/staging/dgnc/dgnc_tty.c
+++ b/drivers/staging/dgnc/dgnc_tty.c
@@ -1255,7 +1255,7 @@ static int dgnc_block_til_ready(struct tty_struct *tty,
if (file->f_flags & O_NONBLOCK)
break;
 
-   if (tty->flags & (1 << TTY_IO_ERROR)) {
+   if (tty_io_error(tty)) {
retval = -EIO;
break;
}
diff --git a/drivers/tty/amiserial.c b/drivers/tty/amiserial.c
index eacf4c9..183e98e 100644
--- a/drivers/tty/amiserial.c
+++ b/drivers/tty/amiserial.c
@@ -1143,7 +1143,7 @@ static int 

[PATCH] tty: Replace TTY_IO_ERROR bit tests with tty_io_error()

2016-04-09 Thread Peter Hurley
Abstract TTY_IO_ERROR status test treewide with tty_io_error().
NB: tty->flags uses atomic bit ops; replace non-atomic bit test
with test_bit().

Signed-off-by: Peter Hurley 
---

v3: redo of an earlier patch titled "tty: Use test_bit() with tty->flags"
v2: rebase

 arch/ia64/hp/sim/simserial.c   | 2 +-
 drivers/char/pcmcia/synclink_cs.c  | 2 +-
 drivers/isdn/i4l/isdn_tty.c| 6 +++---
 drivers/s390/char/tty3270.c| 4 ++--
 drivers/staging/dgnc/dgnc_tty.c| 2 +-
 drivers/tty/amiserial.c| 6 +++---
 drivers/tty/mxser.c| 7 +++
 drivers/tty/pty.c  | 2 +-
 drivers/tty/serial/crisv10.c   | 5 ++---
 drivers/tty/serial/serial_core.c   | 8 
 drivers/tty/synclink.c | 4 ++--
 drivers/tty/synclink_gt.c  | 4 ++--
 drivers/tty/synclinkmp.c   | 4 ++--
 drivers/tty/tty_io.c   | 5 ++---
 drivers/tty/tty_port.c | 2 +-
 include/linux/tty.h| 5 +
 net/irda/ircomm/ircomm_tty.c   | 2 +-
 net/irda/ircomm/ircomm_tty_ioctl.c | 6 +++---
 18 files changed, 39 insertions(+), 37 deletions(-)

diff --git a/arch/ia64/hp/sim/simserial.c b/arch/ia64/hp/sim/simserial.c
index e70cade..21fd50d 100644
--- a/arch/ia64/hp/sim/simserial.c
+++ b/arch/ia64/hp/sim/simserial.c
@@ -300,7 +300,7 @@ static int rs_ioctl(struct tty_struct *tty, unsigned int 
cmd, unsigned long arg)
if ((cmd != TIOCGSERIAL) && (cmd != TIOCSSERIAL) &&
(cmd != TIOCSERCONFIG) && (cmd != TIOCSERGSTRUCT) &&
(cmd != TIOCMIWAIT)) {
-   if (tty->flags & (1 << TTY_IO_ERROR))
+   if (tty_io_error(tty))
return -EIO;
}
 
diff --git a/drivers/char/pcmcia/synclink_cs.c 
b/drivers/char/pcmcia/synclink_cs.c
index 22c2765..825db42 100644
--- a/drivers/char/pcmcia/synclink_cs.c
+++ b/drivers/char/pcmcia/synclink_cs.c
@@ -2246,7 +2246,7 @@ static int mgslpc_ioctl(struct tty_struct *tty,
 
if ((cmd != TIOCGSERIAL) && (cmd != TIOCSSERIAL) &&
(cmd != TIOCMIWAIT)) {
-   if (tty->flags & (1 << TTY_IO_ERROR))
+   if (tty_io_error(tty))
return -EIO;
}
 
diff --git a/drivers/isdn/i4l/isdn_tty.c b/drivers/isdn/i4l/isdn_tty.c
index 947d5c9..f1edc08 100644
--- a/drivers/isdn/i4l/isdn_tty.c
+++ b/drivers/isdn/i4l/isdn_tty.c
@@ -1351,7 +1351,7 @@ isdn_tty_tiocmget(struct tty_struct *tty)
 
if (isdn_tty_paranoia_check(info, tty->name, __func__))
return -ENODEV;
-   if (tty->flags & (1 << TTY_IO_ERROR))
+   if (tty_io_error(tty))
return -EIO;
 
mutex_lock(_info_mutex);
@@ -1378,7 +1378,7 @@ isdn_tty_tiocmset(struct tty_struct *tty,
 
if (isdn_tty_paranoia_check(info, tty->name, __func__))
return -ENODEV;
-   if (tty->flags & (1 << TTY_IO_ERROR))
+   if (tty_io_error(tty))
return -EIO;
 
 #ifdef ISDN_DEBUG_MODEM_IOCTL
@@ -1419,7 +1419,7 @@ isdn_tty_ioctl(struct tty_struct *tty, uint cmd, ulong 
arg)
 
if (isdn_tty_paranoia_check(info, tty->name, "isdn_tty_ioctl"))
return -ENODEV;
-   if (tty->flags & (1 << TTY_IO_ERROR))
+   if (tty_io_error(tty))
return -EIO;
switch (cmd) {
case TCSBRK:   /* SVID version: non-zero arg --> no break */
diff --git a/drivers/s390/char/tty3270.c b/drivers/s390/char/tty3270.c
index e96fc7f..080a987 100644
--- a/drivers/s390/char/tty3270.c
+++ b/drivers/s390/char/tty3270.c
@@ -1804,7 +1804,7 @@ static int tty3270_ioctl(struct tty_struct *tty, unsigned 
int cmd,
tp = tty->driver_data;
if (!tp)
return -ENODEV;
-   if (tty->flags & (1 << TTY_IO_ERROR))
+   if (tty_io_error(tty))
return -EIO;
return kbd_ioctl(tp->kbd, cmd, arg);
 }
@@ -1818,7 +1818,7 @@ static long tty3270_compat_ioctl(struct tty_struct *tty,
tp = tty->driver_data;
if (!tp)
return -ENODEV;
-   if (tty->flags & (1 << TTY_IO_ERROR))
+   if (tty_io_error(tty))
return -EIO;
return kbd_ioctl(tp->kbd, cmd, (unsigned long)compat_ptr(arg));
 }
diff --git a/drivers/staging/dgnc/dgnc_tty.c b/drivers/staging/dgnc/dgnc_tty.c
index bcd2bdf..5c22159 100644
--- a/drivers/staging/dgnc/dgnc_tty.c
+++ b/drivers/staging/dgnc/dgnc_tty.c
@@ -1255,7 +1255,7 @@ static int dgnc_block_til_ready(struct tty_struct *tty,
if (file->f_flags & O_NONBLOCK)
break;
 
-   if (tty->flags & (1 << TTY_IO_ERROR)) {
+   if (tty_io_error(tty)) {
retval = -EIO;
break;
}
diff --git a/drivers/tty/amiserial.c b/drivers/tty/amiserial.c
index eacf4c9..183e98e 100644
--- a/drivers/tty/amiserial.c
+++ b/drivers/tty/amiserial.c
@@ -1143,7 +1143,7 @@ static int rs_tiocmget(struct