[TCP]: MTUprobe: prepare skb fields earlier

They better be valid when call to write_queue functions is made
once things that follow are going in.

Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c
index 98835af..c2aa468 100644
--- a/net/ipv4/tcp_output.c
+++ b/net/ipv4/tcp_output.c
@@ -1342,7 +1342,6 @@
 	sk_charge_skb(sk, nskb);
 
 	skb = tcp_send_head(sk);
-	tcp_insert_write_queue_before(nskb, skb, sk);
 
 	TCP_SKB_CB(nskb)->seq = TCP_SKB_CB(skb)->seq;
 	TCP_SKB_CB(nskb)->end_seq = TCP_SKB_CB(skb)->seq + probe_size;
@@ -1351,6 +1350,8 @@
 	nskb->csum = 0;
 	nskb->ip_summed = skb->ip_summed;
 
+	tcp_insert_write_queue_before(nskb, skb, sk);
+
 	len = 0;
 	while (len < probe_size) {
 		next = tcp_write_queue_next(sk, skb);