patch-2.3.42 linux/drivers/net/irda/irtty.c
Next file: linux/drivers/net/irda/nsc-ircc.c
Previous file: linux/drivers/net/irda/irport.c
Back to the patch index
Back to the overall index
- Lines: 45
- Date:
Fri Jan 28 19:36:22 2000
- Orig file:
v2.3.41/linux/drivers/net/irda/irtty.c
- Orig date:
Fri Jan 7 19:13:22 2000
diff -u --recursive --new-file v2.3.41/linux/drivers/net/irda/irtty.c linux/drivers/net/irda/irtty.c
@@ -6,7 +6,7 @@
* Status: Experimental.
* Author: Dag Brattli <dagb@cs.uit.no>
* Created at: Tue Dec 9 21:18:38 1997
- * Modified at: Wed Jan 5 14:00:13 2000
+ * Modified at: Fri Jan 14 21:02:27 2000
* Modified by: Dag Brattli <dagb@cs.uit.no>
* Sources: slip.c by Laurence Culhane, <loz@holmes.demon.co.uk>
* Fred N. van Kempen, <waltje@uwalt.nl.mugnet.org>
@@ -233,6 +233,8 @@
ERROR(__FUNCTION__ "(), dev_alloc() failed!\n");
return -ENOMEM;
}
+ /* dev_alloc doesn't clear the struct */
+ memset(((__u8*)dev)+sizeof(char*),0,sizeof(struct net_device)-sizeof(char*));
dev->priv = (void *) self;
self->netdev = dev;
@@ -654,6 +656,7 @@
self->tty->flags |= (1 << TTY_DO_WRITE_WAKEUP);
dev->trans_start = jiffies;
+ self->stats.tx_bytes += self->tx_buff.len;
if (self->tty->driver.write)
actual = self->tty->driver.write(self->tty, 0,
@@ -663,9 +666,6 @@
self->tx_buff.data += actual;
self->tx_buff.len -= actual;
- self->stats.tx_packets++;
- self->stats.tx_bytes += self->tx_buff.len;
-
dev_kfree_skb(skb);
return 0;
@@ -709,6 +709,8 @@
self->tx_buff.data += actual;
self->tx_buff.len -= actual;
+
+ self->stats.tx_packets++;
} else {
/*
* Now serial buffer is almost free & we can start
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)