diff options
author | Eric Dumazet <edumazet@google.com> | 2018-10-19 19:11:26 -0700 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2018-11-13 11:08:20 -0800 |
commit | 3fdf483bcf76ab19cf4412c6cac31135d7eda30e (patch) | |
tree | df37e8e78bb14b8a32647f7ba326ca1c541c2538 /drivers | |
parent | cf5819b288283892459297a8a6ddc33f279ab611 (diff) | |
download | linux-rt-3fdf483bcf76ab19cf4412c6cac31135d7eda30e.tar.gz |
net: loopback: clear skb->tstamp before netif_rx()
[ Upstream commit 4c16128b6271e70c8743178e90cccee147858503 ]
At least UDP / TCP stacks can now cook skbs with a tstamp using
MONOTONIC base (or arbitrary values with SCM_TXTIME)
Since loopback driver does not call (directly or indirectly)
skb_scrub_packet(), we need to clear skb->tstamp so that
net_timestamp_check() can eventually resample the time,
using ktime_get_real().
Fixes: 80b14dee2bea ("net: Add a new socket option for a future transmit time.")
Fixes: fb420d5d91c1 ("tcp/fq: move back to CLOCK_MONOTONIC")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Willem de Bruijn <willemb@google.com>
Cc: Soheil Hassas Yeganeh <soheil@google.com>
Acked-by: Soheil Hassas Yeganeh <soheil@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/loopback.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/loopback.c b/drivers/net/loopback.c index 30612497643c..d192936b76cf 100644 --- a/drivers/net/loopback.c +++ b/drivers/net/loopback.c @@ -75,6 +75,10 @@ static netdev_tx_t loopback_xmit(struct sk_buff *skb, int len; skb_tx_timestamp(skb); + + /* do not fool net_timestamp_check() with various clock bases */ + skb->tstamp = 0; + skb_orphan(skb); /* Before queueing this packet to netif_rx(), |