options.c (ffb1e76f4f32d2b8ea4189df0484980370476395) | options.c (0d199e4363b482badcedba764e2aceab53a4a10a) |
---|---|
1// SPDX-License-Identifier: GPL-2.0 2/* Multipath TCP 3 * 4 * Copyright (c) 2017 - 2019, Intel Corporation. 5 */ 6 7#define pr_fmt(fmt) "MPTCP: " fmt 8 --- 1005 unchanged lines hidden (view full) --- 1014 1015 /* avoid ack expansion on update conflict, to reduce the risk of 1016 * wrongly expanding to a future ack sequence number, which is way 1017 * more dangerous than missing an ack 1018 */ 1019 old_snd_una = msk->snd_una; 1020 new_snd_una = mptcp_expand_seq(old_snd_una, mp_opt->data_ack, mp_opt->ack64); 1021 | 1// SPDX-License-Identifier: GPL-2.0 2/* Multipath TCP 3 * 4 * Copyright (c) 2017 - 2019, Intel Corporation. 5 */ 6 7#define pr_fmt(fmt) "MPTCP: " fmt 8 --- 1005 unchanged lines hidden (view full) --- 1014 1015 /* avoid ack expansion on update conflict, to reduce the risk of 1016 * wrongly expanding to a future ack sequence number, which is way 1017 * more dangerous than missing an ack 1018 */ 1019 old_snd_una = msk->snd_una; 1020 new_snd_una = mptcp_expand_seq(old_snd_una, mp_opt->data_ack, mp_opt->ack64); 1021 |
1022 /* ACK for data not even sent yet and even above recovery bound? Ignore.*/ 1023 if (unlikely(after64(new_snd_una, snd_nxt))) { 1024 if (!msk->recovery || after64(new_snd_una, msk->recovery_snd_nxt)) 1025 new_snd_una = old_snd_una; 1026 } | 1022 /* ACK for data not even sent yet? Ignore.*/ 1023 if (unlikely(after64(new_snd_una, snd_nxt))) 1024 new_snd_una = old_snd_una; |
1027 1028 new_wnd_end = new_snd_una + tcp_sk(ssk)->snd_wnd; 1029 1030 if (after64(new_wnd_end, msk->wnd_end)) 1031 msk->wnd_end = new_wnd_end; 1032 1033 /* this assumes mptcp_incoming_options() is invoked after tcp_ack() */ 1034 if (after64(msk->wnd_end, READ_ONCE(msk->snd_nxt))) --- 480 unchanged lines hidden --- | 1025 1026 new_wnd_end = new_snd_una + tcp_sk(ssk)->snd_wnd; 1027 1028 if (after64(new_wnd_end, msk->wnd_end)) 1029 msk->wnd_end = new_wnd_end; 1030 1031 /* this assumes mptcp_incoming_options() is invoked after tcp_ack() */ 1032 if (after64(msk->wnd_end, READ_ONCE(msk->snd_nxt))) --- 480 unchanged lines hidden --- |