mptcp_subflow_context
TP_PROTO(struct mptcp_subflow_context *subflow),
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *sf;
void mptcp_fastopen_subflow_synack_set_params(struct mptcp_subflow_context *subflow,
const struct mptcp_subflow_context *ctx = mptcp_subflow_ctx(sk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
static void mptcp_write_data_fin(struct mptcp_subflow_context *subflow,
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
const struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
struct mptcp_subflow_context *subflow,
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow,
struct mptcp_subflow_context *subflow,
static bool subflow_in_rm_list(const struct mptcp_subflow_context *subflow,
struct mptcp_subflow_context *subflow, *stale = NULL, *same_id = NULL;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
const struct mptcp_subflow_context *subflow)
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow, *tmp;
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
struct mptcp_subflow_context *iter, *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
const struct mptcp_subflow_context *sf;
const struct mptcp_subflow_context *sf;
const struct mptcp_subflow_context *sf;
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
void mptcp_subflow_set_active(struct mptcp_subflow_context *subflow)
bool mptcp_subflow_active(struct mptcp_subflow_context *subflow)
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow,
struct mptcp_subflow_context *subflow,
struct mptcp_subflow_context *subflow)
struct mptcp_subflow_context *subflow, *tmp;
struct mptcp_subflow_context *subflow, *tmp;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow, *tmp;
struct mptcp_subflow_context *subflow, *tmp;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow, *tmp;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
static long mptcp_timeout_from_subflow(const struct mptcp_subflow_context *subflow)
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow,
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *tmp, *subflow;
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
const struct mptcp_subflow_context *subflow);
struct mptcp_subflow_context *subflow,
void mptcp_fastopen_subflow_synack_set_params(struct mptcp_subflow_context *subflow,
static inline u8 subflow_get_local_id(const struct mptcp_subflow_context *subflow)
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow,
static inline bool is_active_ssk(struct mptcp_subflow_context *subflow)
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
static inline struct mptcp_subflow_context *
return (__force struct mptcp_subflow_context *)icsk->icsk_ulp_data;
mptcp_subflow_tcp_sock(const struct mptcp_subflow_context *subflow)
mptcp_subflow_ctx_reset(struct mptcp_subflow_context *subflow)
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
__mptcp_subflow_lend_fwdmem(struct mptcp_subflow_context *subflow, int size)
mptcp_subflow_lend_fwdmem(struct mptcp_subflow_context *subflow,
mptcp_subflow_get_map_offset(const struct mptcp_subflow_context *subflow)
mptcp_subflow_get_mapped_dsn(const struct mptcp_subflow_context *subflow)
static inline void mptcp_subflow_delegate(struct mptcp_subflow_context *subflow, int action)
static inline struct mptcp_subflow_context *
struct mptcp_subflow_context *ret;
ret = list_first_entry(&delegated->head, struct mptcp_subflow_context, delegated_node);
struct mptcp_subflow_context *subflow,
struct mptcp_subflow_context *subflow);
void mptcp_subflow_set_scheduled(struct mptcp_subflow_context *subflow,
static inline bool __mptcp_subflow_active(struct mptcp_subflow_context *subflow)
void mptcp_subflow_set_active(struct mptcp_subflow_context *subflow);
bool mptcp_subflow_active(struct mptcp_subflow_context *subflow);
struct mptcp_subflow_context *ctx)
struct mptcp_subflow_context *subflow;
void mptcp_subflow_set_scheduled(struct mptcp_subflow_context *subflow,
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
const struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
const struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
struct mptcp_subflow_context *listener = mptcp_subflow_ctx(sk_listener);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow;
static struct mptcp_subflow_context *subflow_create_ctx(struct sock *sk,
struct mptcp_subflow_context *ctx;
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *ctx;
struct mptcp_subflow_context *ctx = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *old_ctx = mptcp_subflow_ctx(newsk);
struct mptcp_subflow_context *new_ctx;
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *listener = mptcp_subflow_ctx(sk_listener);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
static bool subflow_thmac_valid(struct mptcp_subflow_context *subflow)
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context *subflow,
struct mptcp_subflow_context *subflow,
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
static void subflow_set_local_id(struct mptcp_subflow_context *subflow, int local_id)
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk);
struct mptcp_subflow_context *old_ctx)
struct mptcp_subflow_context *ctx = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow,
struct mptcp_subflow_context *listener = mptcp_subflow_ctx(sk);
struct mptcp_subflow_context *ctx = mptcp_subflow_ctx(child);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(child);
static void dbg_bad_map(struct mptcp_subflow_context *subflow, u32 ssn)
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(ssk);
static struct mptcp_subflow_context *build_ctx(struct kunit *test)
struct mptcp_subflow_context *ctx;
ctx = kunit_kzalloc(test, sizeof(struct mptcp_subflow_context),
struct mptcp_subflow_context *ctx = build_ctx(test);
mptcp_subflow_tcp_sock(const struct mptcp_subflow_context *subflow)
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context));
struct mptcp_subflow_context *subflow;
struct mptcp_subflow_context));