fm10k: move setting shinfo inside ts_tx_enqueue
authorJacob Keller <jacob.e.keller@intel.com>
Wed, 3 Jun 2015 23:31:00 +0000 (16:31 -0700)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Wed, 17 Jun 2015 21:20:33 +0000 (14:20 -0700)
This patch simplifies the code flow for setting the IN_PROGRESS bit of
the shinfo for an skb we will be timestamping.

Reported-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Tested-by: Krishneil Singh <Krishneil.k.singh@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/fm10k/fm10k_ptp.c

index 95f1d62b0690b245ea0d4198391e0698627ed508..39b832889b75f7d8f984a3d5082ba91d4f4e4b37 100644 (file)
@@ -70,16 +70,16 @@ void fm10k_ts_tx_enqueue(struct fm10k_intfc *interface, struct sk_buff *skb)
         * if none are present then insert skb in tail of list
         */
        skb = fm10k_ts_tx_skb(interface, FM10K_CB(clone)->fi.w.dglort);
-       if (!skb)
+       if (!skb) {
+               skb_shinfo(clone)->tx_flags |= SKBTX_IN_PROGRESS;
                __skb_queue_tail(list, clone);
+       }
 
        spin_unlock_irqrestore(&list->lock, flags);
 
        /* if list is already has one then we just free the clone */
        if (skb)
                kfree_skb(skb);
-       else
-               skb_shinfo(clone)->tx_flags |= SKBTX_IN_PROGRESS;
 }
 
 void fm10k_ts_tx_hwtstamp(struct fm10k_intfc *interface, __le16 dglort,