[PATCH 6.1.y] selftests: mptcp: connect: fix build regression caused by backport

Kenta Akagi posted 1 patch 1 week, 1 day ago
Failed in applying to current master (apply log)
tools/testing/selftests/net/mptcp/mptcp_connect.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH 6.1.y] selftests: mptcp: connect: fix build regression caused by backport
Posted by Kenta Akagi 1 week, 1 day ago
Since v6.1.154, mptcp selftests have failed to build with the following
errors:

mptcp_connect.c: In function ‘main_loop_s’:
mptcp_connect.c:1040:59: error: ‘winfo’ undeclared (first use in this function)
 1040 |                 err = copyfd_io(fd, remotesock, 1, true, &winfo);
      |                                                           ^~~~~
mptcp_connect.c:1040:59: note: each undeclared identifier is reported only once for each function it appears in
mptcp_connect.c:1040:23: error: too many arguments to function ‘copyfd_io’; expected 4, have 5
 1040 |                 err = copyfd_io(fd, remotesock, 1, true, &winfo);
      |                       ^~~~~~~~~                          ~~~~~~
mptcp_connect.c:845:12: note: declared here
  845 | static int copyfd_io(int infd, int peerfd, int outfd, bool close_peerfd)
      |            ^~~~~~~~~

This is caused by commit ff160500c499 ("selftests: mptcp: connect: catch
IO errors on listen side"), a backport of upstream 14e22b43df25,
which attempts to use the undeclared variable 'winfo' and passes too many
arguments to copyfd_io(). Both the winfo variable and the updated
copyfd_io() function were introduced in upstream
commit ca7ae8916043 ("selftests: mptcp: mptfo Initiator/Listener"),
which is not present in v6.1.y.

The goal of the backport is to stop on errors from copyfd_io.
Therefore, the backport does not depend on the changes in upstream
commit ca7ae8916043 ("selftests: mptcp: mptfo Initiator/Listener").

This commit simply removes ', &winfo' to fix a build failure.

Fixes: ff160500c499 ("selftests: mptcp: connect: catch IO errors on listen side")
Signed-off-by: Kenta Akagi <k@mgml.me>
---
commit 14e22b43df25 ("selftests: mptcp: connect: catch IO errors
on listen side") has only been backported to >=v6.1.y, and commit
ca7ae8916043 ("selftests: mptcp: mptfo Initiator/Listener")
exists from v6.2. so, only v6.1.y requires this fix.
---
 tools/testing/selftests/net/mptcp/mptcp_connect.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/testing/selftests/net/mptcp/mptcp_connect.c b/tools/testing/selftests/net/mptcp/mptcp_connect.c
index 0d49b6753011..0b253c133f06 100644
--- a/tools/testing/selftests/net/mptcp/mptcp_connect.c
+++ b/tools/testing/selftests/net/mptcp/mptcp_connect.c
@@ -1037,7 +1037,7 @@ int main_loop_s(int listensock)
 
 		SOCK_TEST_TCPULP(remotesock, 0);
 
-		err = copyfd_io(fd, remotesock, 1, true, &winfo);
+		err = copyfd_io(fd, remotesock, 1, true);
 	} else {
 		perror("accept");
 		return 1;
-- 
2.50.1

Re: [PATCH 6.1.y] selftests: mptcp: connect: fix build regression caused by backport
Posted by Matthieu Baerts 1 week, 1 day ago
Hi Kenta,

On 02/10/2025 16:17, Kenta Akagi wrote:
> Since v6.1.154, mptcp selftests have failed to build with the following
> errors:
> 
> mptcp_connect.c: In function ‘main_loop_s’:
> mptcp_connect.c:1040:59: error: ‘winfo’ undeclared (first use in this function)
>  1040 |                 err = copyfd_io(fd, remotesock, 1, true, &winfo);
>       |                                                           ^~~~~
> mptcp_connect.c:1040:59: note: each undeclared identifier is reported only once for each function it appears in
> mptcp_connect.c:1040:23: error: too many arguments to function ‘copyfd_io’; expected 4, have 5
>  1040 |                 err = copyfd_io(fd, remotesock, 1, true, &winfo);
>       |                       ^~~~~~~~~                          ~~~~~~
> mptcp_connect.c:845:12: note: declared here
>   845 | static int copyfd_io(int infd, int peerfd, int outfd, bool close_peerfd)
>       |            ^~~~~~~~~
> 
> This is caused by commit ff160500c499 ("selftests: mptcp: connect: catch
> IO errors on listen side"), a backport of upstream 14e22b43df25,
> which attempts to use the undeclared variable 'winfo' and passes too many
> arguments to copyfd_io(). Both the winfo variable and the updated
> copyfd_io() function were introduced in upstream
> commit ca7ae8916043 ("selftests: mptcp: mptfo Initiator/Listener"),
> which is not present in v6.1.y.
> 
> The goal of the backport is to stop on errors from copyfd_io.
> Therefore, the backport does not depend on the changes in upstream
> commit ca7ae8916043 ("selftests: mptcp: mptfo Initiator/Listener").
> 
> This commit simply removes ', &winfo' to fix a build failure.

Thank you for this fix for v6.1.y!

Reviewed-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>

Cheers,
Matt
-- 
Sponsored by the NGI0 Core fund.

Patch "selftests: mptcp: connect: fix build regression caused by backport" has been added to the 6.1-stable tree
Posted by gregkh@linuxfoundation.org 1 week ago

This is a note to let you know that I've just added the patch titled

    selftests: mptcp: connect: fix build regression caused by backport

to the 6.1-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     selftests-mptcp-connect-fix-build-regression-caused-by-backport.patch
and it can be found in the queue-6.1 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@vger.kernel.org> know about it.


From k@mgml.me  Fri Oct  3 14:56:36 2025
From: Kenta Akagi <k@mgml.me>
Date: Thu,  2 Oct 2025 23:17:59 +0900
Subject: selftests: mptcp: connect: fix build regression caused by backport
To: gregkh@linuxfoundation.org, sashal@kernel.org
Cc: stable@vger.kernel.org, MPTCP Upstream <mptcp@lists.linux.dev>, Kenta Akagi <k@mgml.me>
Message-ID: <20251002141759.76891-1-k@mgml.me>

From: Kenta Akagi <k@mgml.me>

Since v6.1.154, mptcp selftests have failed to build with the following
errors:

mptcp_connect.c: In function ‘main_loop_s’:
mptcp_connect.c:1040:59: error: ‘winfo’ undeclared (first use in this function)
 1040 |                 err = copyfd_io(fd, remotesock, 1, true, &winfo);
      |                                                           ^~~~~
mptcp_connect.c:1040:59: note: each undeclared identifier is reported only once for each function it appears in
mptcp_connect.c:1040:23: error: too many arguments to function ‘copyfd_io’; expected 4, have 5
 1040 |                 err = copyfd_io(fd, remotesock, 1, true, &winfo);
      |                       ^~~~~~~~~                          ~~~~~~
mptcp_connect.c:845:12: note: declared here
  845 | static int copyfd_io(int infd, int peerfd, int outfd, bool close_peerfd)
      |            ^~~~~~~~~

This is caused by commit ff160500c499 ("selftests: mptcp: connect: catch
IO errors on listen side"), a backport of upstream 14e22b43df25,
which attempts to use the undeclared variable 'winfo' and passes too many
arguments to copyfd_io(). Both the winfo variable and the updated
copyfd_io() function were introduced in upstream
commit ca7ae8916043 ("selftests: mptcp: mptfo Initiator/Listener"),
which is not present in v6.1.y.

The goal of the backport is to stop on errors from copyfd_io.
Therefore, the backport does not depend on the changes in upstream
commit ca7ae8916043 ("selftests: mptcp: mptfo Initiator/Listener").

This commit simply removes ', &winfo' to fix a build failure.

Fixes: ff160500c499 ("selftests: mptcp: connect: catch IO errors on listen side")
Signed-off-by: Kenta Akagi <k@mgml.me>
Reviewed-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 tools/testing/selftests/net/mptcp/mptcp_connect.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/tools/testing/selftests/net/mptcp/mptcp_connect.c
+++ b/tools/testing/selftests/net/mptcp/mptcp_connect.c
@@ -1037,7 +1037,7 @@ again:
 
 		SOCK_TEST_TCPULP(remotesock, 0);
 
-		err = copyfd_io(fd, remotesock, 1, true, &winfo);
+		err = copyfd_io(fd, remotesock, 1, true);
 	} else {
 		perror("accept");
 		return 1;


Patches currently in stable-queue which might be from k@mgml.me are

queue-6.1/selftests-mptcp-connect-fix-build-regression-caused-by-backport.patch