Lines Matching defs:subflow
188 const struct mptcp_subflow_context *subflow)
193 update_subflows = subflow->request_join || subflow->mp_join;
210 /* Even if this subflow is not really established, tell the PM to try
222 struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
223 struct mptcp_sock *msk = mptcp_sk(subflow->conn);
296 struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
297 struct sock *sk = subflow->conn;
300 pr_debug("subflow->backup=%d, bkup=%d\n", subflow->backup, bkup);
302 if (subflow->backup != bkup)
303 subflow->backup = bkup;
310 struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
311 struct mptcp_sock *msk = mptcp_sk(subflow->conn);
318 if (!subflow->fail_tout) {
321 subflow->send_mp_fail = 1;
322 subflow->send_infinite_map = 1;
326 WRITE_ONCE(subflow->fail_tout, 0);
417 /* The 0 ID mapping is defined by the first subflow, copied into the msk
455 struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
459 if (!subflow->stale_count) {
460 subflow->stale_rcv_tstamp = rcv_tstamp;
461 subflow->stale_count++;
462 } else if (subflow->stale_rcv_tstamp == rcv_tstamp) {
463 if (subflow->stale_count < U8_MAX)
464 subflow->stale_count++;
467 subflow->stale_count = 0;
468 mptcp_subflow_set_active(subflow);