diff options
author | Eric Dumazet <edumazet@google.com> | 2018-09-21 11:51:50 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2018-09-21 22:37:59 -0400 |
commit | d3edd06ea8ea9e03de6567fda80b8be57e21a537 (patch) | |
tree | 090196833fede243080048ee8d143b3cc83fecd4 /net/ipv4/tcp_timer.c | |
parent | 9799ccb0e984a5c1311b22a212e7ff96e8b736de (diff) |
tcp: provide earliest departure time in skb->tstamp
Switch internal TCP skb->skb_mstamp to skb->skb_mstamp_ns,
from usec units to nsec units.
Do not clear skb->tstamp before entering IP stacks in TX,
so that qdisc or devices can implement pacing based on the
earliest departure time instead of socket sk->sk_pacing_rate
Packets are fed with tcp_wstamp_ns, and following patch
will update tcp_wstamp_ns when both TCP and sch_fq switch to
the earliest departure time mechanism.
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/tcp_timer.c')
-rw-r--r-- | net/ipv4/tcp_timer.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv4/tcp_timer.c b/net/ipv4/tcp_timer.c index 7fdf222a0bdf..61023d50cd60 100644 --- a/net/ipv4/tcp_timer.c +++ b/net/ipv4/tcp_timer.c | |||
@@ -360,7 +360,7 @@ static void tcp_probe_timer(struct sock *sk) | |||
360 | */ | 360 | */ |
361 | start_ts = tcp_skb_timestamp(skb); | 361 | start_ts = tcp_skb_timestamp(skb); |
362 | if (!start_ts) | 362 | if (!start_ts) |
363 | skb->skb_mstamp = tp->tcp_mstamp; | 363 | skb->skb_mstamp_ns = tp->tcp_wstamp_ns; |
364 | else if (icsk->icsk_user_timeout && | 364 | else if (icsk->icsk_user_timeout && |
365 | (s32)(tcp_time_stamp(tp) - start_ts) > icsk->icsk_user_timeout) | 365 | (s32)(tcp_time_stamp(tp) - start_ts) > icsk->icsk_user_timeout) |
366 | goto abort; | 366 | goto abort; |