patch-2.4.21 linux-2.4.21/drivers/net/a2065.c

Next file: linux-2.4.21/drivers/net/am79c961a.c
Previous file: linux-2.4.21/drivers/net/Makefile
Back to the patch index
Back to the overall index

diff -urN linux-2.4.20/drivers/net/a2065.c linux-2.4.21/drivers/net/a2065.c
@@ -574,6 +574,15 @@
 	unsigned long flags;
 
 	skblen = skb->len;
+	len = skblen;
+	
+	if(len < ETH_ZLEN)
+	{
+		len = ETH_ZLEN;
+		skb = skb_padto(skb, ETH_ZLEN);
+		if(skb == NULL)
+			return 0;
+	}
 
 	save_flags(flags);
 	cli();
@@ -595,7 +604,6 @@
 		}
 	}
 #endif
-	len = (skblen <= ETH_ZLEN) ? ETH_ZLEN : skblen;
 	entry = lp->tx_new & lp->tx_ring_mod_mask;
 	ib->btx_ring [entry].length = (-len) | 0xf000;
 	ib->btx_ring [entry].misc = 0;

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)