[LTP] [PATCH] accept02: Join the multicast group on lo
Martin Doucha
mdoucha@suse.cz
Wed Sep 30 16:19:01 CEST 2026
Hi,
I've tested the patch on affected kernel v4.4 and the bug is still
reproducible. Let's merge it.
Reviewed-by: Martin Doucha <mdoucha@suse.cz>
Tested-by: Martin Doucha <mdoucha@suse.cz>
On 9/28/26 23:27, Anders Roxell wrote:
> The test joins the multicast group with interface 0. Then the kernel
> needs a route to 224.0.0.0 to find a device. When we only have lo,
> like in a QEMU guest with no network, there is no such route and the
> test breaks:
>
> accept02.c:52: TBROK: setsockopt(3, 0, 42, ...) failed: ENODEV (19)
>
> All traffic in the test goes over 127.0.0.1, so join the group on lo.
>
> Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
> ---
> testcases/kernel/syscalls/accept/accept02.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/testcases/kernel/syscalls/accept/accept02.c b/testcases/kernel/syscalls/accept/accept02.c
> index 17056625e933..09a1c35e2591 100644
> --- a/testcases/kernel/syscalls/accept/accept02.c
> +++ b/testcases/kernel/syscalls/accept/accept02.c
> @@ -22,6 +22,7 @@
> #include <errno.h>
> #include <sys/socket.h>
> #include "tst_test.h"
> +#include "tst_netdevice.h"
> #include "tst_safe_net.h"
> #include "tst_safe_pthread.h"
>
> @@ -112,7 +113,7 @@ static void setup(void)
> client_addr = tst_alloc(sizeof(*client_addr));
> mc_group = tst_alloc(sizeof(*mc_group));
>
> - mc_group->gr_interface = 0;
> + mc_group->gr_interface = NETDEV_INDEX_BY_NAME("lo");
> mc_group_addr = (struct sockaddr_in *) &mc_group->gr_group;
> mc_group_addr->sin_family = AF_INET;
> inet_aton(MULTICASTIP, &mc_group_addr->sin_addr);
--
Martin Doucha mdoucha@suse.cz
SW Quality Engineer
SUSE LINUX, s.r.o.
CORSO IIa
Krizikova 148/34
186 00 Prague 8
Czech Republic
More information about the ltp
mailing list