Try that again: Small tty fixes touching tty/net drivers
Subsystems (3)
cover Try that again: Small tty fixes touching tty/net drivers
---
Alan Cox (2):
tty: driverdata and discdata are void *
tty: Flags should be accessed via the foo_bit interfaces
drivers/net/irda/irtty-sir.c | 7 +++---- drivers/net/slip.c | 11 +++++------ drivers/net/wan/x25_asy.c | 18 +++++++++--------- drivers/net/wireless/strip.c | 18 ++++++++---------- 4 files changed, 25 insertions(+), 29 deletions(-)
Signature · 2 lines
"What is needed now is not smart weapons, it is smart politicians" - Tony Benn
PATCH 1/2 tty: Flags should be accessed via the foo_bit interfaces
From: Alan Cox <[email protected]>
We have various drivers that poke around directly and we need to clean this up before it causes problems.
Signed-off-by Alan Cox <[email protected]>
---
drivers/net/irda/irtty-sir.c | 7 +++---- drivers/net/slip.c | 11 +++++------ drivers/net/wan/x25_asy.c | 8 ++++---- drivers/net/wireless/strip.c | 8 +++----- 4 files changed, 15 insertions(+), 19 deletions(-)
drivers/net/irda/irtty-sir.c +3 -4
@@ -191,7 +191,7 @@ static int irtty_do_write(struct sir_dev *dev, const unsigned char *ptr, size_t tty = priv->tty;if (!tty->ops->write)return 0 ; - tty->flags |= (1 <<TTY_DO_WRITE_WAKEUP ); +set_bit (TTY_DO_WRITE_WAKEUP , &tty->flags); writelen =tty_write_room (tty);if (writelen > len) writelen = len;
@@ -263,8 +263,7 @@ static void irtty_write_wakeup(struct tty_struct *tty) IRDA_ASSERT(priv != NULL, return;); IRDA_ASSERT(priv->magic == IRTTY_MAGIC, return;); - tty->flags &= ~(1 <<TTY_DO_WRITE_WAKEUP ); - +clear_bit (TTY_DO_WRITE_WAKEUP , &tty->flags);if (priv->dev)sirdev_write_complete (priv->dev); }
@@ -522,7 +521,7 @@ static void irtty_close(struct tty_struct *tty)/* Stop tty */ irtty_stop_receiver (tty, TRUE); - tty->flags &= ~(1 <<TTY_DO_WRITE_WAKEUP ); +clear_bit (TTY_DO_WRITE_WAKEUP , &tty->flags);if (tty->ops->stop) tty->ops->stop (tty);
drivers/net/slip.c +5 -6
@@ -402,7 +402,7 @@ static void sl_encaps(struct slip *sl, unsigned char *icp, int len)* if we did not request it before write operation. * 14 Oct 1994 Dmitry Gorodchanin. */ - sl->tty->flags |= (1 <<TTY_DO_WRITE_WAKEUP ); +set_bit (TTY_DO_WRITE_WAKEUP , &sl->tty->flags); actual = sl->tty->ops->write (sl->tty, sl->xbuff, count);#ifdef SL_CHECK_TRANSMIT sl->dev->trans_start = jiffies;
@@ -432,7 +432,7 @@ static void slip_write_wakeup(struct tty_struct *tty)/* Now serial buffer is almost free & we can start * transmission of another packet */ sl->tx_packets++; - tty->flags &= ~(1 <<TTY_DO_WRITE_WAKEUP ); +clear_bit (TTY_DO_WRITE_WAKEUP , &tty->flags);sl_unlock (sl);return ; }
@@ -465,7 +465,7 @@ static void sl_tx_timeout(struct net_device *dev) (tty_chars_in_buffer (sl->tty) || sl->xleft) ? "bad line quality" : "driver error"); sl->xleft =0 ; - sl->tty->flags &= ~(1 <<TTY_DO_WRITE_WAKEUP ); +clear_bit (TTY_DO_WRITE_WAKEUP , &sl->tty->flags);sl_unlock (sl);#endif }
@@ -515,10 +515,9 @@ sl_close(struct net_device *dev)struct slip *sl =netdev_priv (dev);spin_lock_bh (&sl->lock); -if (sl->tty) { +if (sl->tty)/* TTY discipline is running. */ - sl->tty->flags &= ~(1 <<TTY_DO_WRITE_WAKEUP ); - } +clear_bit (TTY_DO_WRITE_WAKEUP , &sl->tty->flags);netif_stop_queue (dev); sl->rcount =0 ; sl->xleft =0 ;
drivers/net/wan/x25_asy.c +4 -4
@@ -243,7 +243,7 @@ static void x25_asy_encaps(struct x25_asy *sl, unsigned char *icp, int len)* if we did not request it before write operation. * 14 Oct 1994 Dmitry Gorodchanin. */ - sl->tty->flags |= (1 <<TTY_DO_WRITE_WAKEUP ); +set_bit (TTY_DO_WRITE_WAKEUP , &sl->tty->flags); actual = sl->tty->ops->write (sl->tty, sl->xbuff, count); sl->xleft = count - actual; sl->xhead = sl->xbuff + actual;
@@ -268,7 +268,7 @@ static void x25_asy_write_wakeup(struct tty_struct *tty)/* Now serial buffer is almost free & we can start * transmission of another packet */ sl->stats.tx_packets++; - tty->flags &= ~(1 <<TTY_DO_WRITE_WAKEUP ); +clear_bit (TTY_DO_WRITE_WAKEUP , &tty->flags);x25_asy_unlock (sl);return ; }
@@ -291,7 +291,7 @@ static void x25_asy_timeout(struct net_device *dev) (tty_chars_in_buffer (sl->tty) || sl->xleft) ? "bad line quality" : "driver error"); sl->xleft =0 ; - sl->tty->flags &= ~(1 <<TTY_DO_WRITE_WAKEUP ); +clear_bit (TTY_DO_WRITE_WAKEUP , &sl->tty->flags);x25_asy_unlock (sl); }spin_unlock (&sl->lock);
@@ -504,7 +504,7 @@ static int x25_asy_close(struct net_device *dev)spin_lock (&sl->lock);if (sl->tty) - sl->tty->flags &= ~(1 <<TTY_DO_WRITE_WAKEUP ); +clear_bit (TTY_DO_WRITE_WAKEUP , &sl->tty->flags);netif_stop_queue (dev); sl->rcount =0 ;
drivers/net/wireless/strip.c +3 -5
@@ -1252,7 +1252,7 @@ static void strip_write_some_more(struct tty_struct *tty)#endif }else {/* Else start transmission of another packet */ - tty->flags &= ~(1 <<TTY_DO_WRITE_WAKEUP ); +clear_bit (TTY_DO_WRITE_WAKEUP , &tty->flags);strip_unlock (strip_info); } }
@@ -1455,8 +1455,7 @@ static void strip_send(struct strip *strip_info, struct sk_buff *skb)*/ strip_info->tx_head = strip_info->tx_buff; strip_info->tx_left = ptr - strip_info->tx_buff; - strip_info->tty->flags |= (1 <<TTY_DO_WRITE_WAKEUP ); - +set_bit (TTY_DO_WRITE_WAKEUP , &strip_info->tty->flags);/* * 4. Debugging check to make sure we're not overflowing the buffer. */
@@ -2455,8 +2454,7 @@ static int strip_close_low(struct net_device *dev)if (strip_info->tty ==NULL )return -EBUSY ; - strip_info->tty->flags &= ~(1 <<TTY_DO_WRITE_WAKEUP ); - +clear_bit (TTY_DO_WRITE_WAKEUP , &strip_info->tty->flags);netif_stop_queue (dev);/*
PATCH 2/2 tty: driverdata and discdata are void *
In reply to Alan CoxFrom: Alan Cox <[email protected]>
Remove all the extra casting while we are cleaning up
Signed-off-by Alan Cox <[email protected]>
---
drivers/net/wan/x25_asy.c | 10 +++++----- drivers/net/wireless/strip.c | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-)
drivers/net/wan/x25_asy.c +5 -5
@@ -258,7 +258,7 @@ static void x25_asy_encaps(struct x25_asy *sl, unsigned char *icp, int len)static void x25_asy_write_wakeup (struct tty_struct *tty) {int actual; -struct x25_asy *sl = (struct x25_asy *) tty->disc_data; +struct x25_asy *sl = tty->disc_data;/* First make sure we're connected. */ if (!sl || sl->magic !=X25_ASY_MAGIC || !netif_running (sl->dev))
@@ -527,7 +527,7 @@ static int x25_asy_close(struct net_device *dev)static void x25_asy_receive_buf (struct tty_struct *tty,const unsigned char *cp,char *fp,int count) { -struct x25_asy *sl = (struct x25_asy *) tty->disc_data; +struct x25_asy *sl = tty->disc_data;if (!sl || sl->magic !=X25_ASY_MAGIC || !netif_running (sl->dev))return ;
@@ -555,7 +555,7 @@ static void x25_asy_receive_buf(struct tty_struct *tty,static int x25_asy_open_tty (struct tty_struct *tty) { -struct x25_asy *sl = (struct x25_asy *) tty->disc_data; +struct x25_asy *sl = tty->disc_data;int err;if (tty->ops->write ==NULL )
@@ -596,7 +596,7 @@ static int x25_asy_open_tty(struct tty_struct *tty)*/ static void x25_asy_close_tty (struct tty_struct *tty) { -struct x25_asy *sl = (struct x25_asy *) tty->disc_data; +struct x25_asy *sl = tty->disc_data;/* First make sure we're connected. */ if (!sl || sl->magic !=X25_ASY_MAGIC )
@@ -696,7 +696,7 @@ static void x25_asy_unesc(struct x25_asy *sl, unsigned char s)static int x25_asy_ioctl (struct tty_struct *tty,struct file *file,unsigned int cmd,unsigned long arg) { -struct x25_asy *sl = (struct x25_asy *) tty->disc_data; +struct x25_asy *sl = tty->disc_data;/* First make sure we're connected. */ if (!sl || sl->magic !=X25_ASY_MAGIC )
drivers/net/wireless/strip.c +5 -5
@@ -1234,7 +1234,7 @@ static void ResetRadio(struct strip *strip_info)static void strip_write_some_more (struct tty_struct *tty) { -struct strip *strip_info = (struct strip *) tty->disc_data; +struct strip *strip_info = tty->disc_data;/* First make sure we're connected. */ if (!strip_info || strip_info->magic != STRIP_MAGIC ||
@@ -2260,7 +2260,7 @@ static void process_message(struct strip *strip_info)static void strip_receive_buf (struct tty_struct *tty,const unsigned char *cp,char *fp,int count) { -struct strip *strip_info = (struct strip *) tty->disc_data; +struct strip *strip_info = tty->disc_data;const unsigned char *end = cp + count; if (!strip_info || strip_info->magic != STRIP_MAGIC
@@ -2596,7 +2596,7 @@ static struct strip *strip_alloc(void)static int strip_open (struct tty_struct *tty) { -struct strip *strip_info = (struct strip *) tty->disc_data; +struct strip *strip_info = tty->disc_data;/* * First make sure we're not already connected.
@@ -2667,7 +2667,7 @@ static int strip_open(struct tty_struct *tty)static void strip_close (struct tty_struct *tty) { -struct strip *strip_info = (struct strip *) tty->disc_data; +struct strip *strip_info = tty->disc_data;/* * First make sure we're connected.
@@ -2693,7 +2693,7 @@ static void strip_close(struct tty_struct *tty)static int strip_ioctl (struct tty_struct *tty,struct file *file,unsigned int cmd,unsigned long arg) { -struct strip *strip_info = (struct strip *) tty->disc_data; +struct strip *strip_info = tty->disc_data;/* * First make sure we're connected.