Skip to content

Commit c8c23da

Browse files
committed
tgupdate: merge t/upstream base into t/upstream
2 parents fd38de4 + 1577660 commit c8c23da

File tree

1 file changed

+4
-6
lines changed

1 file changed

+4
-6
lines changed

net/ipv4/tcp_minisocks.c

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -813,12 +813,6 @@ struct sock *tcp_check_req(struct sock *sk, struct sk_buff *skb,
813813

814814
/* In sequence, PAWS is OK. */
815815

816-
/* TODO: We probably should defer ts_recent change once
817-
* we take ownership of @req.
818-
*/
819-
if (tmp_opt.saw_tstamp && !after(TCP_SKB_CB(skb)->seq, tcp_rsk(req)->rcv_nxt))
820-
WRITE_ONCE(req->ts_recent, tmp_opt.rcv_tsval);
821-
822816
if (TCP_SKB_CB(skb)->seq == tcp_rsk(req)->rcv_isn) {
823817
/* Truncate SYN, it is out of window starting
824818
at tcp_rsk(req)->rcv_isn + 1. */
@@ -867,6 +861,10 @@ struct sock *tcp_check_req(struct sock *sk, struct sk_buff *skb,
867861
if (!child)
868862
goto listen_overflow;
869863

864+
if (own_req && tmp_opt.saw_tstamp &&
865+
!after(TCP_SKB_CB(skb)->seq, tcp_rsk(req)->rcv_nxt))
866+
tcp_sk(child)->rx_opt.ts_recent = tmp_opt.rcv_tsval;
867+
870868
if (own_req && rsk_drop_req(req)) {
871869
reqsk_queue_removed(&inet_csk(req->rsk_listener)->icsk_accept_queue, req);
872870
inet_csk_reqsk_queue_drop_and_put(req->rsk_listener, req);

0 commit comments

Comments
 (0)