Lines Matching refs:msk
444 struct mptcp_sock *msk = mptcp_sk(subflow->conn); in mptcp_established_options_mp() local
476 opts->csum_reqd = READ_ONCE(msk->csum_enabled); in mptcp_established_options_mp()
558 struct mptcp_sock *msk = mptcp_sk(subflow->conn); in mptcp_established_options_dss() local
565 opts->csum_reqd = READ_ONCE(msk->csum_enabled); in mptcp_established_options_dss()
590 if (!READ_ONCE(msk->can_ack)) { in mptcp_established_options_dss()
595 ack_seq = READ_ONCE(msk->ack_seq); in mptcp_established_options_dss()
596 if (READ_ONCE(msk->use_64bit_ack)) { in mptcp_established_options_dss()
607 WRITE_ONCE(msk->old_wspace, __mptcp_space((struct sock *)msk)); in mptcp_established_options_dss()
652 struct mptcp_sock *msk = mptcp_sk(subflow->conn); in mptcp_established_options_add_addr() local
661 if (!mptcp_pm_should_add_signal(msk) || in mptcp_established_options_add_addr()
663 !mptcp_pm_add_addr_signal(msk, skb, opt_size, remaining, &opts->addr, in mptcp_established_options_add_addr()
688 opts->ahmac = add_addr_generate_hmac(msk->local_key, in mptcp_established_options_add_addr()
689 msk->remote_key, in mptcp_established_options_add_addr()
704 struct mptcp_sock *msk = mptcp_sk(subflow->conn); in mptcp_established_options_rm_addr() local
708 if (!mptcp_pm_should_rm_signal(msk) || in mptcp_established_options_rm_addr()
709 !(mptcp_pm_rm_addr_signal(msk, remaining, &rm_list))) in mptcp_established_options_rm_addr()
779 struct mptcp_sock *msk = mptcp_sk(subflow->conn); in mptcp_established_options_fastclose() local
789 opts->rcvr_key = msk->remote_key; in mptcp_established_options_fastclose()
824 struct mptcp_sock *msk = mptcp_sk(subflow->conn); in mptcp_established_options() local
831 if (unlikely(__mptcp_check_fallback(msk) && !mptcp_check_infinite_map(skb))) in mptcp_established_options()
848 snd_data_fin = mptcp_data_fin_enabled(msk); in mptcp_established_options()
919 static bool check_fully_established(struct mptcp_sock *msk, struct sock *ssk, in check_fully_established() argument
957 WRITE_ONCE(msk->fully_established, true); in check_fully_established()
969 pr_fallback(msk); in check_fully_established()
975 WRITE_ONCE(msk->pm.remote_deny_join_id0, true); in check_fully_established()
977 if (unlikely(!READ_ONCE(msk->pm.server_side))) in check_fully_established()
993 mptcp_pm_subflow_established(msk); in check_fully_established()
995 mptcp_pm_fully_established(msk, ssk, GFP_ATOMIC); in check_fully_established()
1020 static void ack_update_msk(struct mptcp_sock *msk, in ack_update_msk() argument
1024 u64 new_wnd_end, new_snd_una, snd_nxt = READ_ONCE(msk->snd_nxt); in ack_update_msk()
1025 struct sock *sk = (struct sock *)msk; in ack_update_msk()
1034 old_snd_una = msk->snd_una; in ack_update_msk()
1043 if (after64(new_wnd_end, msk->wnd_end)) in ack_update_msk()
1044 msk->wnd_end = new_wnd_end; in ack_update_msk()
1047 if (after64(msk->wnd_end, READ_ONCE(msk->snd_nxt))) in ack_update_msk()
1051 msk->snd_una = new_snd_una; in ack_update_msk()
1058 new_wnd_end, msk->wnd_end); in ack_update_msk()
1061 bool mptcp_update_rcv_data_fin(struct mptcp_sock *msk, u64 data_fin_seq, bool use_64bit) in mptcp_update_rcv_data_fin() argument
1068 if (READ_ONCE(msk->rcv_data_fin)) in mptcp_update_rcv_data_fin()
1071 WRITE_ONCE(msk->rcv_data_fin_seq, in mptcp_update_rcv_data_fin()
1072 mptcp_expand_seq(READ_ONCE(msk->ack_seq), data_fin_seq, use_64bit)); in mptcp_update_rcv_data_fin()
1073 WRITE_ONCE(msk->rcv_data_fin, 1); in mptcp_update_rcv_data_fin()
1078 static bool add_addr_hmac_valid(struct mptcp_sock *msk, in add_addr_hmac_valid() argument
1086 hmac = add_addr_generate_hmac(msk->remote_key, in add_addr_hmac_valid()
1087 msk->local_key, in add_addr_hmac_valid()
1091 msk, hmac, mp_opt->ahmac); in add_addr_hmac_valid()
1100 struct mptcp_sock *msk = mptcp_sk(subflow->conn); in mptcp_incoming_options() local
1104 if (__mptcp_check_fallback(msk)) { in mptcp_incoming_options()
1123 if (!check_fully_established(msk, sk, subflow, skb, &mp_opt)) in mptcp_incoming_options()
1128 msk->local_key == mp_opt.rcvr_key) { in mptcp_incoming_options()
1129 WRITE_ONCE(msk->rcv_fastclose, true); in mptcp_incoming_options()
1130 mptcp_schedule_work((struct sock *)msk); in mptcp_incoming_options()
1135 add_addr_hmac_valid(msk, &mp_opt)) { in mptcp_incoming_options()
1140 mptcp_pm_add_addr_echoed(msk, &mp_opt.addr); in mptcp_incoming_options()
1141 mptcp_pm_del_add_timer(msk, &mp_opt.addr, true); in mptcp_incoming_options()
1150 mptcp_pm_rm_addr_received(msk, &mp_opt.rm_list); in mptcp_incoming_options()
1177 ack_update_msk(msk, sk, &mp_opt); in mptcp_incoming_options()
1186 mptcp_update_rcv_data_fin(msk, mp_opt.data_seq, mp_opt.dsn64) && in mptcp_incoming_options()
1187 schedule_work(&msk->work)) in mptcp_incoming_options()
1233 struct mptcp_sock *msk; in mptcp_set_rwin() local
1238 msk = mptcp_sk(subflow->conn); in mptcp_set_rwin()
1240 ack_seq = READ_ONCE(msk->ack_seq); in mptcp_set_rwin()
1243 rcv_wnd_old = atomic64_read(&msk->rcv_wnd_sent); in mptcp_set_rwin()
1248 rcv_wnd = atomic64_cmpxchg(&msk->rcv_wnd_sent, rcv_wnd_old, rcv_wnd_new); in mptcp_set_rwin()