diff mbox series

selftests: net: fix cmsg_so_mark.sh test hang

Message ID 20221229054106.96682-1-po-hsu.lin@canonical.com (mailing list archive)
State Accepted
Commit 1573c6882018f69991aead951d09423ce978adac
Headers show
Series selftests: net: fix cmsg_so_mark.sh test hang | expand

Commit Message

Po-Hsu Lin Dec. 29, 2022, 5:41 a.m. UTC
This cmsg_so_mark.sh test will hang on non-amd64 systems because of the
infinity loop for argument parsing in cmsg_sender.

Variable "o" in cs_parse_args() for taking getopt() should be an int,
otherwise it will be 255 when getopt() returns -1 on non-amd64 system
and thus causing infinity loop.

Link: https://lore.kernel.org/lkml/CA+G9fYsM2k7mrF7W4V_TrZ-qDauWM394=8yEJ=-t1oUg8_40YA@mail.gmail.com/t/
Signed-off-by: Po-Hsu Lin <po-hsu.lin@canonical.com>
---
 tools/testing/selftests/net/cmsg_sender.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

patchwork-bot+netdevbpf@kernel.org Dec. 30, 2022, 7:40 a.m. UTC | #1
Hello:

This patch was applied to netdev/net.git (master)
by David S. Miller <davem@davemloft.net>:

On Thu, 29 Dec 2022 13:41:06 +0800 you wrote:
> This cmsg_so_mark.sh test will hang on non-amd64 systems because of the
> infinity loop for argument parsing in cmsg_sender.
> 
> Variable "o" in cs_parse_args() for taking getopt() should be an int,
> otherwise it will be 255 when getopt() returns -1 on non-amd64 system
> and thus causing infinity loop.
> 
> [...]

Here is the summary with links:
  - selftests: net: fix cmsg_so_mark.sh test hang
    https://git.kernel.org/netdev/net/c/1573c6882018

You are awesome, thank you!
diff mbox series

Patch

diff --git a/tools/testing/selftests/net/cmsg_sender.c b/tools/testing/selftests/net/cmsg_sender.c
index 75dd83e..24b21b1 100644
--- a/tools/testing/selftests/net/cmsg_sender.c
+++ b/tools/testing/selftests/net/cmsg_sender.c
@@ -110,7 +110,7 @@  static void __attribute__((noreturn)) cs_usage(const char *bin)
 
 static void cs_parse_args(int argc, char *argv[])
 {
-	char o;
+	int o;
 
 	while ((o = getopt(argc, argv, "46sS:p:m:M:d:tf:F:c:C:l:L:H:")) != -1) {
 		switch (o) {