Lines Matching refs:tw
43 tcp_timewait_check_oow_rate_limit(struct inet_timewait_sock *tw,
46 struct tcp_timewait_sock *tcptw = tcp_twsk((struct sock *)tw);
48 if (!tcp_oow_rate_limited(twsk_net(tw), skb, mib_idx,
56 /* We are rate-limiting, so just release the tw sock and drop skb. */
57 inet_twsk_put(tw);
92 tcp_timewait_state_process(struct inet_timewait_sock *tw, struct sk_buff *skb,
96 struct tcp_timewait_sock *tcptw = tcp_twsk((struct sock *)tw);
101 tcp_parse_options(twsk_net(tw), skb, &tmp_opt, 0, NULL);
112 if (tw->tw_substate == TCP_FIN_WAIT2) {
121 tw, skb, LINUX_MIB_TCPACKSKIPPEDFINWAIT2);
133 inet_twsk_put(tw);
145 tw->tw_substate = TCP_TIME_WAIT;
152 inet_twsk_reschedule(tw, TCP_TIMEWAIT_LEN);
183 if (!READ_ONCE(twsk_net(tw)->ipv4.sysctl_tcp_rfc1337)) {
185 inet_twsk_deschedule_put(tw);
189 inet_twsk_reschedule(tw, TCP_TIMEWAIT_LEN);
197 inet_twsk_put(tw);
230 __NET_INC_STATS(twsk_net(tw), LINUX_MIB_PAWSESTABREJECTED);
240 inet_twsk_reschedule(tw, TCP_TIMEWAIT_LEN);
243 tw, skb, LINUX_MIB_TCPACKSKIPPEDTIMEWAIT);
245 inet_twsk_put(tw);
257 struct inet_timewait_sock *tw;
260 tw = inet_twsk_alloc(sk, tcp_death_row, state);
262 if (tw) {
263 struct tcp_timewait_sock *tcptw = tcp_twsk((struct sock *)tw);
267 tw->tw_transparent = inet->transparent;
268 tw->tw_mark = sk->sk_mark;
269 tw->tw_priority = sk->sk_priority;
270 tw->tw_rcv_wscale = tp->rx_opt.rcv_wscale;
280 if (tw->tw_family == PF_INET6) {
283 tw->tw_v6_daddr = sk->sk_v6_daddr;
284 tw->tw_v6_rcv_saddr = sk->sk_v6_rcv_saddr;
285 tw->tw_tclass = np->tclass;
286 tw->tw_flowlabel = be32_to_cpu(np->flow_label & IPV6_FLOWLABEL_MASK);
287 tw->tw_txhash = sk->sk_txhash;
288 tw->tw_ipv6only = sk->sk_ipv6only;
325 inet_twsk_schedule(tw, timeo);
327 * Note that access to tw after this point is illegal.
329 inet_twsk_hashdance(tw, sk, &tcp_hashinfo);