patch-2.4.21 linux-2.4.21/drivers/net/eexpress.c
Next file: linux-2.4.21/drivers/net/epic100.c
Previous file: linux-2.4.21/drivers/net/eepro100.c
Back to the patch index
Back to the overall index
- Lines: 32
- Date:
2003-06-13 07:51:34.000000000 -0700
- Orig file:
linux-2.4.20/drivers/net/eexpress.c
- Orig date:
2002-11-28 15:53:13.000000000 -0800
diff -urN linux-2.4.20/drivers/net/eexpress.c linux-2.4.21/drivers/net/eexpress.c
@@ -640,6 +640,7 @@
static int eexp_xmit(struct sk_buff *buf, struct net_device *dev)
{
struct net_local *lp = (struct net_local *)dev->priv;
+ short length = buf->len;
#ifdef CONFIG_SMP
unsigned long flags;
#endif
@@ -648,6 +649,14 @@
printk(KERN_DEBUG "%s: eexp_xmit()\n", dev->name);
#endif
+ if(buf->len < ETH_ZLEN)
+ {
+ buf = skb_padto(buf, ETH_ZLEN);
+ if(buf == NULL)
+ return 0;
+ length = buf->len;
+ }
+
disable_irq(dev->irq);
/*
@@ -660,8 +669,6 @@
#endif
{
- unsigned short length = (ETH_ZLEN < buf->len) ? buf->len :
- ETH_ZLEN;
unsigned short *data = (unsigned short *)buf->data;
lp->stats.tx_bytes += length;
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)