Stephen Hemminger <[EMAIL PROTECTED]> : [...] > diff --git a/drivers/net/mv643xx_eth.c b/drivers/net/mv643xx_eth.c > index 9997081..4052bfe 100644 > --- a/drivers/net/mv643xx_eth.c > +++ b/drivers/net/mv643xx_eth.c > @@ -1191,25 +1191,23 @@ static int mv643xx_eth_start_xmit(struct > struct net_device_stats *stats = &mp->stats; > unsigned long flags; > > - BUG_ON(netif_queue_stopped(dev)); > - BUG_ON(skb == NULL); > - > - if (mp->tx_ring_size - mp->tx_desc_count < MAX_DESCS_PER_SKB) { > - printk(KERN_ERR "%s: transmit with queue full\n", dev->name); > - netif_stop_queue(dev); > - return 1; > - } > - > - if (has_tiny_unaligned_frags(skb)) { > - if (__skb_linearize(skb)) { > - stats->tx_dropped++; > + if (has_tiny_unaligned_frags(skb) && __skb_linearize(skb)) { > + stats->tx_dropped++; > + if (net_ratelimit()) > printk(KERN_DEBUG "%s: failed to linearize tiny " > - "unaligned fragment\n", dev->name); > - return 1; > - } > + "unaligned fragment\n", dev->name); > + return NETDEV_TX_OK; > }
It seems to propagate a leak from the initial codebase. -- Ueimor - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html