patch-2.4.21 linux-2.4.21/drivers/net/pcmcia/xirc2ps_cs.c
Next file: linux-2.4.21/drivers/net/pcmcia/xircom_cb.c
Previous file: linux-2.4.21/drivers/net/pcmcia/wavelan_cs.c
Back to the patch index
Back to the overall index
- Lines: 23
- Date:
2003-06-13 07:51:35.000000000 -0700
- Orig file:
linux-2.4.20/drivers/net/pcmcia/xirc2ps_cs.c
- Orig date:
2002-11-28 15:53:14.000000000 -0800
diff -urN linux-2.4.20/drivers/net/pcmcia/xirc2ps_cs.c linux-2.4.21/drivers/net/pcmcia/xirc2ps_cs.c
@@ -1548,7 +1548,6 @@
DEBUG(1, "do_start_xmit(skb=%p, dev=%p) len=%u\n",
skb, dev, pktlen);
- netif_stop_queue(dev);
/* adjust the packet length to min. required
* and hope that the buffer is large enough
@@ -1558,8 +1557,14 @@
* pad this in his buffer with random bytes
*/
if (pktlen < ETH_ZLEN)
+ {
+ skb = skb_padto(skb, ETH_ZLEN);
+ if(skb == NULL)
+ return 0;
pktlen = ETH_ZLEN;
+ }
+ netif_stop_queue(dev);
SelectPage(0);
PutWord(XIRCREG0_TRS, (u_short)pktlen+2);
freespace = GetWord(XIRCREG0_TSO);
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)