mptcp: update misleading comments.
authorPaolo Abeni <pabeni@redhat.com>
Fri, 30 Sep 2022 15:59:34 +0000 (08:59 -0700)
committerDavid S. Miller <davem@davemloft.net>
Mon, 3 Oct 2022 10:18:53 +0000 (11:18 +0100)
The MPTCP data path is quite complex and hard to understend even
without some foggy comments referring to modified code and/or
completely misleading from the beginning.

Update a few of them to more accurately describing the current
status.

Reviewed-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/mptcp/protocol.c

index acf4407..f599ad4 100644 (file)
@@ -662,9 +662,9 @@ static bool __mptcp_move_skbs_from_subflow(struct mptcp_sock *msk,
 
                skb = skb_peek(&ssk->sk_receive_queue);
                if (!skb) {
-                       /* if no data is found, a racing workqueue/recvmsg
-                        * already processed the new data, stop here or we
-                        * can enter an infinite loop
+                       /* With racing move_skbs_to_msk() and __mptcp_move_skbs(),
+                        * a different CPU can have already processed the pending
+                        * data, stop here or we can enter an infinite loop
                         */
                        if (!moved)
                                done = true;
@@ -672,9 +672,9 @@ static bool __mptcp_move_skbs_from_subflow(struct mptcp_sock *msk,
                }
 
                if (__mptcp_check_fallback(msk)) {
-                       /* if we are running under the workqueue, TCP could have
-                        * collapsed skbs between dummy map creation and now
-                        * be sure to adjust the size
+                       /* Under fallback skbs have no MPTCP extension and TCP could
+                        * collapse them between the dummy map creation and the
+                        * current dequeue. Be sure to adjust the map size.
                         */
                        map_remaining = skb->len;
                        subflow->map_data_len = skb->len;
@@ -3768,7 +3768,7 @@ static __poll_t mptcp_poll(struct file *file, struct socket *sock,
        if (sk->sk_shutdown & RCV_SHUTDOWN)
                mask |= EPOLLIN | EPOLLRDNORM | EPOLLRDHUP;
 
-       /* This barrier is coupled with smp_wmb() in tcp_reset() */
+       /* This barrier is coupled with smp_wmb() in __mptcp_error_report() */
        smp_rmb();
        if (sk->sk_err)
                mask |= EPOLLERR;