From: Eric Dumazet <eduma...@google.com>
Date: Thu, 18 Oct 2018 09:12:19 -0700

> Andrey reported the following warning triggered while running CRIU tests:
> 
> tcp_clean_rtx_queue()
> ...
>       last_ackt = tcp_skb_timestamp_us(skb);
>       WARN_ON_ONCE(last_ackt == 0);
> 
> This is caused by 5f6188a8003d ("tcp: do not change tcp_wstamp_ns
> in tcp_mstamp_refresh"), as we end up having skbs in retransmit queue
> with a zero skb->skb_mstamp_ns field.
> 
> We could fix this bug in different ways, like making sure
> tp->tcp_wstamp_ns is not zero at socket creation, but as Neal pointed
> out, we also do not want that pacing status of a repaired socket
> could push tp->tcp_wstamp_ns far ahead in the future.
> 
> So we prefer changing tcp_write_xmit() to not call tcp_update_skb_after_send()
> and instead do what is requested by TCP_REPAIR logic.
> 
> Fixes: 5f6188a8003d ("tcp: do not change tcp_wstamp_ns in tcp_mstamp_refresh")
> Signed-off-by: Eric Dumazet <eduma...@google.com>
> Reported-by: Andrey Vagin <ava...@openvz.org>
> Acked-by: Soheil Hassas Yeganeh <soh...@google.com>
> Acked-by: Neal Cardwell <ncardw...@google.com>

Applied, thanks Eric.

Reply via email to