Lines Matching refs:req
425 void tcp_openreq_init_rwin(struct request_sock *req, in tcp_openreq_init_rwin() argument
429 struct inet_request_sock *ireq = inet_rsk(req); in tcp_openreq_init_rwin()
440 req->rsk_window_clamp = window_clamp ? : dst_metric(dst, RTAX_WINDOW); in tcp_openreq_init_rwin()
444 (req->rsk_window_clamp > full_space || req->rsk_window_clamp == 0)) in tcp_openreq_init_rwin()
445 req->rsk_window_clamp = full_space; in tcp_openreq_init_rwin()
447 rcv_wnd = tcp_rwnd_init_bpf((struct sock *)req); in tcp_openreq_init_rwin()
456 &req->rsk_rcv_wnd, in tcp_openreq_init_rwin()
457 &req->rsk_window_clamp, in tcp_openreq_init_rwin()
465 const struct request_sock *req) in tcp_ecn_openreq_child() argument
467 tcp_ecn_mode_set(tp, inet_rsk(req)->ecn_ok ? in tcp_ecn_openreq_child()
502 struct request_sock *req, in smc_check_reset_syn_req() argument
509 ireq = inet_rsk(req); in smc_check_reset_syn_req()
523 struct request_sock *req, in tcp_create_openreq_child() argument
526 struct sock *newsk = inet_csk_clone_lock(sk, req, GFP_ATOMIC); in tcp_create_openreq_child()
527 const struct inet_request_sock *ireq = inet_rsk(req); in tcp_create_openreq_child()
528 struct tcp_request_sock *treq = tcp_rsk(req); in tcp_create_openreq_child()
541 smc_check_reset_syn_req(oldtp, req, newtp); in tcp_create_openreq_child()
567 newtp->total_retrans = req->num_retrans; in tcp_create_openreq_child()
577 newtp->window_clamp = req->rsk_window_clamp; in tcp_create_openreq_child()
578 newtp->rcv_ssthresh = req->rsk_rcv_wnd; in tcp_create_openreq_child()
579 newtp->rcv_wnd = req->rsk_rcv_wnd; in tcp_create_openreq_child()
593 newtp->rx_opt.ts_recent = req->ts_recent; in tcp_create_openreq_child()
601 if (req->num_timeout) { in tcp_create_openreq_child()
602 newtp->total_rto = req->num_timeout; in tcp_create_openreq_child()
623 if (tcp_rsk_used_ao(req)) { in tcp_create_openreq_child()
626 ao_key = treq->af_specific->ao_lookup(sk, req, tcp_rsk(req)->ao_keyid, -1); in tcp_create_openreq_child()
633 newtp->rx_opt.mss_clamp = req->mss; in tcp_create_openreq_child()
634 tcp_ecn_openreq_child(newtp, req); in tcp_create_openreq_child()
664 struct request_sock *req, in tcp_check_req() argument
681 tmp_opt.ts_recent = req->ts_recent; in tcp_check_req()
683 if (inet_rsk(req)->tstamp_ok && !fastopen) in tcp_check_req()
685 tcp_rsk(req)->snt_tsval_first, in tcp_check_req()
686 READ_ONCE(tcp_rsk(req)->snt_tsval_last)); in tcp_check_req()
687 tmp_opt.rcv_tsecr -= tcp_rsk(req)->ts_off; in tcp_check_req()
693 tmp_opt.ts_recent_stamp = ktime_get_seconds() - reqsk_timeout(req, TCP_RTO_MAX) / HZ; in tcp_check_req()
699 if (TCP_SKB_CB(skb)->seq == tcp_rsk(req)->rcv_isn && in tcp_check_req()
727 &tcp_rsk(req)->last_oow_ack_time) && in tcp_check_req()
729 !tcp_rtx_synack(sk, req)) { in tcp_check_req()
732 expires += reqsk_timeout(req, TCP_RTO_MAX); in tcp_check_req()
734 mod_timer_pending(&req->rsk_timer, expires); in tcp_check_req()
736 req->rsk_timer.expires = expires; in tcp_check_req()
800 tcp_rsk(req)->snt_isn + 1)) in tcp_check_req()
808 tcp_rsk(req)->rcv_nxt, in tcp_check_req()
809 tcp_rsk(req)->rcv_nxt + in tcp_check_req()
810 tcp_synack_window(req))) { in tcp_check_req()
815 &tcp_rsk(req)->last_oow_ack_time)) in tcp_check_req()
816 req->rsk_ops->send_ack(sk, skb, req); in tcp_check_req()
831 if (TCP_SKB_CB(skb)->seq == tcp_rsk(req)->rcv_isn) { in tcp_check_req()
861 if (req->num_timeout < READ_ONCE(inet_csk(sk)->icsk_accept_queue.rskq_defer_accept) && in tcp_check_req()
862 TCP_SKB_CB(skb)->end_seq == tcp_rsk(req)->rcv_isn + 1) { in tcp_check_req()
863 inet_rsk(req)->acked = 1; in tcp_check_req()
874 child = inet_csk(sk)->icsk_af_ops->syn_recv_sock(sk, skb, req, NULL, in tcp_check_req()
875 req, &own_req); in tcp_check_req()
880 !after(TCP_SKB_CB(skb)->seq, tcp_rsk(req)->rcv_nxt)) in tcp_check_req()
883 if (own_req && rsk_drop_req(req)) { in tcp_check_req()
884 reqsk_queue_removed(&inet_csk(req->rsk_listener)->icsk_accept_queue, req); in tcp_check_req()
885 inet_csk_reqsk_queue_drop_and_put(req->rsk_listener, req); in tcp_check_req()
890 tcp_synack_rtt_meas(child, req); in tcp_check_req()
892 return inet_csk_complete_hashdance(sk, child, req, own_req); in tcp_check_req()
896 if (sk != req->rsk_listener) in tcp_check_req()
900 inet_rsk(req)->acked = 1; in tcp_check_req()
911 req->rsk_ops->send_reset(sk, skb, SK_RST_REASON_INVALID_SYN); in tcp_check_req()
913 reqsk_fastopen_remove(sk, req, true); in tcp_check_req()
917 bool unlinked = inet_csk_reqsk_queue_drop(sk, req); in tcp_check_req()