Lines Matching refs:ctx
467 * sock_put(ctx->conn).
502 struct mptcp_subflow_context *ctx = mptcp_subflow_ctx(ssk);
504 if (!ctx)
507 subflow_ulp_fallback(ssk, ctx);
508 if (ctx->conn)
509 sock_put(ctx->conn);
511 kfree_rcu(ctx, rcu);
586 struct mptcp_subflow_context *ctx = mptcp_subflow_ctx(child);
590 /* we need to fallback on ctx allocation failure and on pre-reqs
594 if (!ctx || fallback) {
602 if (ctx->mp_capable) {
614 ctx->conn = new_msk;
621 mptcp_subflow_fully_established(ctx, &mp_opt);
622 } else if (ctx->mp_join) {
631 ctx->conn = (struct sock *)owner;
1231 struct mptcp_subflow_context *ctx;
1233 ctx = kzalloc(sizeof(*ctx), priority);
1234 if (!ctx)
1237 rcu_assign_pointer(icsk->icsk_ulp_data, ctx);
1238 INIT_LIST_HEAD(&ctx->node);
1240 pr_debug("subflow=%p", ctx);
1242 ctx->tcp_sock = sk;
1244 return ctx;
1299 struct mptcp_subflow_context *ctx;
1311 ctx = subflow_create_ctx(sk, GFP_KERNEL);
1312 if (!ctx) {
1317 pr_debug("subflow=%p, family=%d", ctx, sk->sk_family);
1320 ctx->icsk_af_ops = icsk->icsk_af_ops;
1322 ctx->tcp_data_ready = sk->sk_data_ready;
1323 ctx->tcp_state_change = sk->sk_state_change;
1324 ctx->tcp_write_space = sk->sk_write_space;
1334 struct mptcp_subflow_context *ctx = mptcp_subflow_ctx(sk);
1336 if (!ctx)
1339 if (ctx->conn)
1340 sock_put(ctx->conn);
1342 kfree_rcu(ctx, rcu);