* code can come after this skb later on it's better to keep
         * setting gso_size to something.
         */
-       if (!skb_shinfo(prev)->gso_size) {
+       if (!skb_shinfo(prev)->gso_size)
                skb_shinfo(prev)->gso_size = mss;
-               skb_shinfo(prev)->gso_type = sk->sk_gso_type;
-       }
 
        /* CHECKME: To clear or not to clear? Mimics normal skb currently */
-       if (tcp_skb_pcount(skb) <= 1) {
+       if (tcp_skb_pcount(skb) <= 1)
                skb_shinfo(skb)->gso_size = 0;
-               skb_shinfo(skb)->gso_type = 0;
-       }
 
        /* Difference in this won't matter, both ACKed by the same cumul. ACK */
        TCP_SKB_CB(prev)->sacked |= (TCP_SKB_CB(skb)->sacked & TCPCB_EVER_RETRANS);
 
 
        tcp_skb_pcount_set(skb, 1);
        shinfo->gso_size = 0;
-       shinfo->gso_type = 0;
 
        TCP_SKB_CB(skb)->seq = seq;
        if (flags & (TCPHDR_SYN | TCPHDR_FIN))
        }
 
        tcp_options_write((__be32 *)(th + 1), tp, &opts);
+       skb_shinfo(skb)->gso_type = sk->sk_gso_type;
        if (likely((tcb->tcp_flags & TCPHDR_SYN) == 0))
                tcp_ecn_send(sk, skb, tcp_header_size);
 
                 */
                tcp_skb_pcount_set(skb, 1);
                shinfo->gso_size = 0;
-               shinfo->gso_type = 0;
        } else {
                tcp_skb_pcount_set(skb, DIV_ROUND_UP(skb->len, mss_now));
                shinfo->gso_size = mss_now;
-               shinfo->gso_type = sk->sk_gso_type;
        }
 }