On Thu, Mar 30, 2006 at 10:02:01AM +0000, Boris B. Zhmurov wrote: > > [EMAIL PROTECTED] linux-2.6.16]$ patch -p1 < > ../../../SOURCES/linux-2.6.16-e1000-try-to-fix-assertion_sk_forward_alloc_failed_by_Herbert_Xu.patch > > > patching file drivers/net/e1000/e1000_main.c > Reversed (or previously applied) patch detected! Assume -R? [n] > > Herbert, is that patch already included in 2.6.16.1?
Not really. It's just patch being silly (or too smart :) Here it is again rediffed against 2.6.16. -- Visit Openswan at http://www.openswan.org/ Email: Herbert Xu ~{PmV>HI~} <[EMAIL PROTECTED]> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c index 84dcca3..847d168 100644 --- a/drivers/net/e1000/e1000_main.c +++ b/drivers/net/e1000/e1000_main.c @@ -2932,13 +2932,6 @@ count++; #endif -#ifdef NETIF_F_TSO - /* Controller Erratum workaround */ - if (!skb->data_len && tx_ring->last_tx_tso && - !skb_shinfo(skb)->tso_size) - count++; -#endif - count += TXD_USE_COUNT(len, max_txd_pwr); if (adapter->pcix_82544) @@ -2957,9 +2950,6 @@ max_txd_pwr); if (adapter->pcix_82544) count += nr_frags; - - if (adapter->hw.tx_pkt_filtering && (adapter->hw.mac_type == e1000_82573) ) - e1000_transfer_dhcp_info(adapter, skb); local_irq_save(flags); if (!spin_trylock(&tx_ring->tx_lock)) { @@ -2967,6 +2957,16 @@ local_irq_restore(flags); return NETDEV_TX_LOCKED; } + +#ifdef NETIF_F_TSO + /* Controller Erratum workaround */ + if (!skb->data_len && tx_ring->last_tx_tso && + !skb_shinfo(skb)->tso_size) + count++; +#endif + + if (adapter->hw.tx_pkt_filtering && (adapter->hw.mac_type == e1000_82573) ) + e1000_transfer_dhcp_info(adapter, skb); /* need: count + 2 desc gap to keep tail from touching * head, otherwise try next time */