e1000e: Simple optimizations in e1000_xmit_frame
authorAuke Kok <auke-jan.h.kok@intel.com>
Fri, 5 Oct 2007 21:15:23 +0000 (14:15 -0700)
committerDavid S. Miller <davem@sunset.davemloft.net>
Wed, 10 Oct 2007 23:55:25 +0000 (16:55 -0700)
After an e1000 patch from Krishna Kumar <krkumar2@in.ibm.com>.

Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
drivers/net/e1000e/netdev.c

index 3a0bb2a..600538b 100644 (file)
@@ -3424,14 +3424,13 @@ static int e1000_xmit_frame(struct sk_buff *skb, struct net_device *netdev)
        unsigned int max_per_txd = E1000_MAX_PER_TXD;
        unsigned int max_txd_pwr = E1000_MAX_TXD_PWR;
        unsigned int tx_flags = 0;
-       unsigned int len = skb->len;
+       unsigned int len = skb->len - skb->data_len;
        unsigned long irq_flags;
-       unsigned int nr_frags = 0;
-       unsigned int mss = 0;
+       unsigned int nr_frags;
+       unsigned int mss;
        int count = 0;
        int tso;
        unsigned int f;
-       len -= skb->data_len;
 
        if (test_bit(__E1000_DOWN, &adapter->state)) {
                dev_kfree_skb_any(skb);
@@ -3459,7 +3458,7 @@ static int e1000_xmit_frame(struct sk_buff *skb, struct net_device *netdev)
                * points to just header, pull a few bytes of payload from
                * frags into skb->data */
                hdr_len = skb_transport_offset(skb) + tcp_hdrlen(skb);
-               if (skb->data_len && (hdr_len == (skb->len - skb->data_len))) {
+               if (skb->data_len && (hdr_len == len)) {
                        unsigned int pull_size;
 
                        pull_size = min((unsigned int)4, skb->data_len);