{"action":"created","issue":{"url":"https://api.github.com/repos/multipath-tcp/mptcp/issues/243","repository_url":"https://api.github.com/repos/multipath-tcp/mptcp","labels_url":"https://api.github.com/repos/multipath-tcp/mptcp/issues/243/labels{/name}","comments_url":"https://api.github.com/repos/multipath-tcp/mptcp/issues/243/comments","events_url":"https://api.github.com/repos/multipath-tcp/mptcp/issues/243/events","html_url":"https://github.com/multipath-tcp/mptcp/issues/243","id":301716564,"number":243,"title":"TCP: tcp_ack resetting flow","user":{"login":"berezoka","id":32198999,"avatar_url":"https://avatars3.githubusercontent.com/u/32198999?v=4","gravatar_id":"","url":"https://api.github.com/users/berezoka","html_url":"https://github.com/berezoka","followers_url":"https://api.github.com/users/berezoka/followers","following_url":"https://api.github.com/users/berezoka/following{/other_user}","gists_url":"https://api.github.com/users/berezoka/gists{/gist_id}","starred_url":"https://api.github.com/users/berezoka/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/berezoka/subscriptions","organizations_url":"https://api.github.com/users/berezoka/orgs","repos_url":"https://api.github.com/users/berezoka/repos","events_url":"https://api.github.com/users/berezoka/events{/privacy}","received_events_url":"https://api.github.com/users/berezoka/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":13,"created_at":"2018-03-02T10:13:38Z","updated_at":"2018-03-06T00:14:17Z","closed_at":null,"author_association":"NONE","body":"Hello,\r\nin server side I got some errors:\r\n\r\n```\r\n[Thu Mar  1 23:19:24 2018] mptcp_verif_dss_csum csum is wrong: 0xc5e9 data_seq 1924841623 dss_csum_added 1 overflowed 0 iterations 1\r\n[Thu Mar  1 23:49:31 2018] TCP: mptcp_fallback_infinite 0x806a1f10 will fallback - pi 2, src 11.111.11.22:1090 dst 185.2.229.214:56279 rcv_nxt 2923808224 from tcp_rcv_state_process+0x1de/0x820\r\n[Thu Mar  1 23:49:31 2018] TCP: tcp_ack resetting flow\r\n[Fri Mar  2 00:27:24 2018] TCP: mptcp_fallback_infinite 0xa29a980d will fallback - pi 2, src 11.111.11.22:1090 dst 185.2.229.214:17413 rcv_nxt 3298219397 from tcp_rcv_state_process+0x1de/0x820\r\n[Fri Mar  2 00:27:24 2018] TCP: tcp_ack resetting flow\r\n[Fri Mar  2 00:56:25 2018] TCP: mptcp_fallback_infinite 0xe5f938ee will fallback - pi 2, src 11.111.11.22:1090 dst 185.2.229.214:19303 rcv_nxt 2875906644 from tcp_rcv_state_process+0x1de/0x820\r\n[Fri Mar  2 00:56:25 2018] TCP: tcp_ack resetting flow\r\n[Fri Mar  2 02:15:31 2018] TCP: mptcp_fallback_infinite 0x54a53d7 will fallback - pi 2, src 11.111.11.22:1090 dst 185.2.229.214:41031 rcv_nxt 2204363645 from tcp_rcv_state_process+0x1de/0x820\r\n[Fri Mar  2 02:15:31 2018] TCP: tcp_ack resetting flow\r\n[Fri Mar  2 03:10:47 2018] TCP: mptcp_fallback_infinite 0x521a016c will fallback - pi 2, src 11.111.11.22:1090 dst 185.2.229.214:44595 rcv_nxt 1751121396 from tcp_rcv_state_process+0x1de/0x820\r\n[Fri Mar  2 03:10:47 2018] TCP: tcp_ack resetting flow\r\n[Fri Mar  2 03:11:33 2018] TCP: mptcp_fallback_infinite 0x83322e3a will fallback - pi 2, src 11.111.11.22:1090 dst 185.2.229.214:34951 rcv_nxt 3543815736 from tcp_rcv_state_process+0x1de/0x820\r\n[Fri Mar  2 03:11:33 2018] TCP: tcp_ack resetting flow\r\n[Fri Mar  2 03:38:25 2018] TCP: mptcp_fallback_infinite 0x8cfa64bd will fallback - pi 2, src 11.111.11.22:1090 dst 185.2.229.214:35017 rcv_nxt 1180093270 from tcp_rcv_state_process+0x1de/0x820\r\n[Fri Mar  2 03:38:25 2018] TCP: tcp_ack resetting flow\r\n```\r\n\r\n Client side was used LAN+LTE and no any errors. After error \"TCP: tcp_ack resetting flow\" client side traffic is not gonna go back to LTE.  I need to stop and start the stream so that can go back to LTE.\r\n\r\n```\r\nMPTCP version 0.93.1 (https://github.com/multipath-tcp/mptcp/archive/mptcp_v0.93.zip)\r\nnet.mptcp.mptcp_checksum = 1\r\nnet.mptcp.mptcp_debug = 0\r\nnet.mptcp.mptcp_enabled = 1\r\nnet.mptcp.mptcp_path_manager = fullmesh\r\nnet.mptcp.mptcp_scheduler = default\r\nnet.mptcp.mptcp_syn_retries = 3\r\nnet.mptcp.mptcp_version = 0\r\n```\r\n\r\nCongestions:\r\n```\r\nnet.ipv4.tcp_allowed_congestion_control = balia reno\r\nnet.ipv4.tcp_available_congestion_control = balia reno cubic lia olia wvegas\r\nnet.ipv4.tcp_congestion_control = balia\r\n```\r\n\r\n Where the problem might be?"},"comment":{"url":"https://api.github.com/repos/multipath-tcp/mptcp/issues/comments/370614434","html_url":"https://github.com/multipath-tcp/mptcp/issues/243#issuecomment-370614434","issue_url":"https://api.github.com/repos/multipath-tcp/mptcp/issues/243","id":370614434,"user":{"login":"cpaasch","id":116300,"avatar_url":"https://avatars0.githubusercontent.com/u/116300?v=4","gravatar_id":"","url":"https://api.github.com/users/cpaasch","html_url":"https://github.com/cpaasch","followers_url":"https://api.github.com/users/cpaasch/followers","following_url":"https://api.github.com/users/cpaasch/following{/other_user}","gists_url":"https://api.github.com/users/cpaasch/gists{/gist_id}","starred_url":"https://api.github.com/users/cpaasch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cpaasch/subscriptions","organizations_url":"https://api.github.com/users/cpaasch/orgs","repos_url":"https://api.github.com/users/cpaasch/repos","events_url":"https://api.github.com/users/cpaasch/events{/privacy}","received_events_url":"https://api.github.com/users/cpaasch/received_events","type":"User","site_admin":false},"created_at":"2018-03-06T00:14:17Z","updated_at":"2018-03-06T00:14:17Z","author_association":"OWNER","body":"Here is the debug-patch that would be good to apply:\r\n\r\n```\r\ndiff --git a/include/net/mptcp.h b/include/net/mptcp.h\r\nindex c642b683abc7..9ac1254ef555 100644\r\n--- a/include/net/mptcp.h\r\n+++ b/include/net/mptcp.h\r\n@@ -1131,6 +1131,8 @@ static inline void mptcp_check_sndseq_wrap(struct tcp_sock *meta_tp, int inc)\r\n \t\tstruct mptcp_cb *mpcb = meta_tp->mpcb;\r\n \t\tmpcb->snd_hiseq_index = mpcb->snd_hiseq_index ? 0 : 1;\r\n \t\tmpcb->snd_high_order[mpcb->snd_hiseq_index] += 2;\r\n+\r\n+\t\tpr_err(\"%s %#x wrapped around at %u\\n\", __func__, meta_tp->mpcb->mptcp_loc_token, meta_tp->snd_nxt);\r\n \t}\r\n }\r\n \r\n@@ -1141,6 +1143,8 @@ static inline void mptcp_check_rcvseq_wrap(struct tcp_sock *meta_tp,\r\n \t\tstruct mptcp_cb *mpcb = meta_tp->mpcb;\r\n \t\tmpcb->rcv_high_order[mpcb->rcv_hiseq_index] += 2;\r\n \t\tmpcb->rcv_hiseq_index = mpcb->rcv_hiseq_index ? 0 : 1;\r\n+\r\n+\t\tpr_err(\"%s %#x wrapped around at %u\\n\", __func__, meta_tp->mpcb->mptcp_loc_token, meta_tp->rcv_nxt);\r\n \t}\r\n }\r\n \r\ndiff --git a/net/mptcp/mptcp_input.c b/net/mptcp/mptcp_input.c\r\nindex fb3d99379e11..0442ad051cec 100644\r\n--- a/net/mptcp/mptcp_input.c\r\n+++ b/net/mptcp/mptcp_input.c\r\n@@ -349,8 +349,8 @@ static int mptcp_verif_dss_csum(struct sock *sk)\r\n \r\n \t/* Now, checksum must be 0 */\r\n \tif (unlikely(csum_fold(csum_tcp))) {\r\n-\t\tpr_err(\"%s csum is wrong: %#x data_seq %u dss_csum_added %d overflowed %d iterations %d\\n\",\r\n-\t\t       __func__, csum_fold(csum_tcp), TCP_SKB_CB(last)->seq,\r\n+\t\tpr_err(\"%s %#x csum is wrong: %#x TCP-seq %u dss_csum_added %d overflowed %d iterations %d\\n\",\r\n+\t\t       __func__, tp->mpcb->mptcp_loc_token, csum_fold(csum_tcp), TCP_SKB_CB(last)->seq,\r\n \t\t       dss_csum_added, overflowed, iter);\r\n \r\n \t\tMPTCP_INC_STATS(sock_net(sk), MPTCP_MIB_CSUMFAIL);\r\n```"}}
{"actor":{"display_login":"cpaasch"}}