tx_desc->cmd_type_offset_bsz =
                        build_ctob(td_cmd, td_offset, size, td_tag);
 
+       skb_tx_timestamp(skb);
+
        /* Force memory writes to complete before letting h/w know there
         * are new descriptors to fetch.
         *
        if (tsyn)
                tx_flags |= I40E_TX_FLAGS_TSYN;
 
-       skb_tx_timestamp(skb);
-
        /* always enable CRC insertion offload */
        td_cmd |= I40E_TX_DESC_CMD_ICRC;
 
 
        tx_desc->cmd_type_offset_bsz =
                        build_ctob(td_cmd, td_offset, size, td_tag);
 
+       skb_tx_timestamp(skb);
+
        /* Force memory writes to complete before letting h/w know there
         * are new descriptors to fetch.
         *
        if (tso < 0)
                goto out_drop;
 
-       skb_tx_timestamp(skb);
-
        /* always enable CRC insertion offload */
        td_cmd |= IAVF_TX_DESC_CMD_ICRC;
 
 
        /* set the timestamp */
        first->time_stamp = jiffies;
 
+       skb_tx_timestamp(skb);
+
        /* Force memory writes to complete before letting h/w know there
         * are new descriptors to fetch.  (Only applicable for weak-ordered
         * memory model archs, such as IA-64).
        else if (!tso)
                igb_tx_csum(tx_ring, first);
 
-       skb_tx_timestamp(skb);
-
        if (igb_tx_map(tx_ring, first, hdr_len))
                goto cleanup_tx_tstamp;
 
 
        /* set the timestamp */
        first->time_stamp = jiffies;
 
+       skb_tx_timestamp(skb);
+
        /* Force memory writes to complete before letting h/w know there
         * are new descriptors to fetch.  (Only applicable for weak-ordered
         * memory model archs, such as IA-64).
        first->bytecount = skb->len;
        first->gso_segs = 1;
 
-       skb_tx_timestamp(skb);
-
        /* record initial flags and protocol */
        first->tx_flags = tx_flags;
        first->protocol = protocol;
 
        /* set the timestamp */
        first->time_stamp = jiffies;
 
+       skb_tx_timestamp(skb);
+
        /*
         * Force memory writes to complete before letting h/w know there
         * are new descriptors to fetch.  (Only applicable for weak-ordered
                }
        }
 
-       skb_tx_timestamp(skb);
-
 #ifdef CONFIG_PCI_IOV
        /*
         * Use the l2switch_enable flag - would be false if the DMA