Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.debian.kernel > #87639 > unrolled thread

Bug#1106321: iproute2: "ip monitor" fails with current trixie's linux kernel / iproute2 combination

Started byAdel Belhouane <bugs.a.b@free.fr>
First post2025-05-22 21:50 +0200
Last post2025-05-27 02:10 +0200
Articles 8 — 5 participants

Back to article view | Back to linux.debian.kernel


Contents

  Bug#1106321: iproute2: "ip monitor" fails with current trixie's linux kernel / iproute2 combination Adel Belhouane <bugs.a.b@free.fr> - 2025-05-22 21:50 +0200
    Bug#1106321: iproute2: "ip monitor" fails with current trixie's linux kernel / iproute2 combination Luca Boccassi <bluca@debian.org> - 2025-05-23 01:00 +0200
      Bug#1106321: iproute2: "ip monitor" fails with current trixie's linux kernel / iproute2 combination David Ahern <dsahern@kernel.org> - 2025-05-23 02:20 +0200
    Bug#1106321: iproute2: "ip monitor" fails with current trixie's linux kernel / iproute2 combination Luca Boccassi <bluca@debian.org> - 2025-05-23 02:10 +0200
      Bug#1106321: iproute2: "ip monitor" fails with current trixie's linux kernel / iproute2 combination Yuyang Huang <yuyanghuang@google.com> - 2025-05-23 03:10 +0200
    Bug#1106321: iproute2: "ip monitor" fails with current trixie's linux kernel / iproute2 combination Yuyang Huang <yuyanghuang@google.com> - 2025-05-23 03:20 +0200
      Bug#1106321: iproute2: "ip monitor" fails with current trixie's linux kernel / iproute2 combination David Ahern <dsahern@kernel.org> - 2025-05-23 04:30 +0200
    Bug#1106321: marked as done (iproute2: "ip monitor" fails with  current trixie's linux kernel / iproute2 combination) "Debian Bug Tracking System" <owner@bugs.debian.org> - 2025-05-27 02:10 +0200

#87639 — Bug#1106321: iproute2: "ip monitor" fails with current trixie's linux kernel / iproute2 combination

FromAdel Belhouane <bugs.a.b@free.fr>
Date2025-05-22 21:50 +0200
SubjectBug#1106321: iproute2: "ip monitor" fails with current trixie's linux kernel / iproute2 combination
Message-ID<KPk5r-4Zw3-1@gated-at.bofh.it>
Package: iproute2
Version: 6.14.0-3
Severity: normal
X-Debbugs-Cc: bugs.a.b@free.fr

Dear Maintainer,

Having iproute2 >= 6.14 while running a linux kernel < 6.14
triggers this bug (tested using debian-13-nocloud-amd64-daily-20250520-2118.qcow2)

    root@localhost:~# ip monitor
    Failed to add ipv4 mcaddr group to list

More specifically this subcommand, which didn't exist in iproute2 6.13
is affected:

    root@localhost:~# ip mon maddr
    Failed to add ipv4 mcaddr group to list
    root@localhost:~# ip -6 mon maddr
    Failed to add ipv6 mcaddr group to list

causing the generic "ip monitor" command to fail.

As trixie will use a 6.12.x kernel, trixie is affected.

bookworm's iproute2/bookworm-backports is also affected since currently
bookworm's backport kernel is also 6.12.x

Workarounds:
* upgrade the kernel to experimental's (currently) 6.14.6-1~exp1
* downgrade iproute2 to 6.13.0-1 (using snapshot.d.o)
* on bookworm downgrade (using snapshot.d.o)
  iproute2 backport to 6.13.0-1~bpo12+1

Details I could gather:

This appears to come from this iproute2 6.14's commit:

https://git.kernel.org/pub/scm/network/iproute2/iproute2.git/commit/?h=v6.14.0&id=7240e0e40f8332dd9f11348700c0c96b8df4ca5b

which appears to depend on new kernel 6.14 rtnetlink features as described
in Kernelnewbies ( https://kernelnewbies.org/Linux_6.14#Networking ):

Add ipv6 anycast join/leave notifications

with this (kernel 6.14) commit:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=33d97a07b3ae6fa713919de4e1864ca04fff8f80

I guess to fix this one could:

* backport (or have upstream backport) the kernel feature to 6.12.x,
* or supply iproute2 6.13 instead of iproute 6.14 for trixie with
  some versioning trick,
* or patch iproute2 to cope with a kernel not having the API changes

Regards,
Adel Belhouane.

-- System Information:
Debian Release: 13.0
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 6.12.27-amd64 (SMP w/2 CPU threads; PREEMPT)
Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages iproute2 depends on:
ii  debconf [debconf-2.0]  1.5.91
ii  libbpf1                1:1.5.0-3
ii  libc6                  2.41-7
ii  libcap2                1:2.75-7
ii  libcap2-bin            1:2.75-7
ii  libdb5.3t64            5.3.28+dfsg2-9
ii  libelf1t64             0.192-4
ii  libmnl0                1.0.5-3
ii  libselinux1            3.8.1-1
ii  libtirpc3t64           1.3.6+ds-1
ii  libxtables12           1.8.11-2

iproute2 recommends no packages.

Versions of packages iproute2 suggests:
ii  python3  3.13.3-1

-- debconf information excluded

[toc] | [next] | [standalone]


#87646

FromLuca Boccassi <bluca@debian.org>
Date2025-05-23 01:00 +0200
Message-ID<KPn3j-51qT-1@gated-at.bofh.it>
In reply to#87639
On Thu, 22 May 2025 at 20:41, Adel Belhouane <bugs.a.b@free.fr> wrote:
>
> Package: iproute2
> Version: 6.14.0-3
> Severity: normal
> X-Debbugs-Cc: bugs.a.b@free.fr
>
> Dear Maintainer,
>
> Having iproute2 >= 6.14 while running a linux kernel < 6.14
> triggers this bug (tested using debian-13-nocloud-amd64-daily-20250520-2118.qcow2)
>
>     root@localhost:~# ip monitor
>     Failed to add ipv4 mcaddr group to list
>
> More specifically this subcommand, which didn't exist in iproute2 6.13
> is affected:
>
>     root@localhost:~# ip mon maddr
>     Failed to add ipv4 mcaddr group to list
>     root@localhost:~# ip -6 mon maddr
>     Failed to add ipv6 mcaddr group to list
>
> causing the generic "ip monitor" command to fail.
>
> As trixie will use a 6.12.x kernel, trixie is affected.
>
> bookworm's iproute2/bookworm-backports is also affected since currently
> bookworm's backport kernel is also 6.12.x
>
> Workarounds:
> * upgrade the kernel to experimental's (currently) 6.14.6-1~exp1
> * downgrade iproute2 to 6.13.0-1 (using snapshot.d.o)
> * on bookworm downgrade (using snapshot.d.o)
>   iproute2 backport to 6.13.0-1~bpo12+1
>
> Details I could gather:
>
> This appears to come from this iproute2 6.14's commit:
>
> https://git.kernel.org/pub/scm/network/iproute2/iproute2.git/commit/?h=v6.14.0&id=7240e0e40f8332dd9f11348700c0c96b8df4ca5b
>
> which appears to depend on new kernel 6.14 rtnetlink features as described
> in Kernelnewbies ( https://kernelnewbies.org/Linux_6.14#Networking ):
>
> Add ipv6 anycast join/leave notifications
>
> with this (kernel 6.14) commit:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=33d97a07b3ae6fa713919de4e1864ca04fff8f80

Hi Stephen and David,

It looks like there's a regression in iproute2 6.14, and 'ip monitor'
no longer works with kernels < 6.14. Could you please have a look when
you have a moment? Thanks!

[toc] | [prev] | [next] | [standalone]


#87648

FromDavid Ahern <dsahern@kernel.org>
Date2025-05-23 02:20 +0200
Message-ID<KPo93-52jJ-3@gated-at.bofh.it>
In reply to#87646
On 5/22/25 4:55 PM, Luca Boccassi wrote:
> On Thu, 22 May 2025 at 20:41, Adel Belhouane <bugs.a.b@free.fr> wrote:
>>
>> Package: iproute2
>> Version: 6.14.0-3
>> Severity: normal
>> X-Debbugs-Cc: bugs.a.b@free.fr
>>
>> Dear Maintainer,
>>
>> Having iproute2 >= 6.14 while running a linux kernel < 6.14
>> triggers this bug (tested using debian-13-nocloud-amd64-daily-20250520-2118.qcow2)
>>
>>     root@localhost:~# ip monitor
>>     Failed to add ipv4 mcaddr group to list
>>
>> More specifically this subcommand, which didn't exist in iproute2 6.13
>> is affected:
>>
>>     root@localhost:~# ip mon maddr
>>     Failed to add ipv4 mcaddr group to list
>>     root@localhost:~# ip -6 mon maddr
>>     Failed to add ipv6 mcaddr group to list
>>
>> causing the generic "ip monitor" command to fail.
>>
>> As trixie will use a 6.12.x kernel, trixie is affected.
>>
>> bookworm's iproute2/bookworm-backports is also affected since currently
>> bookworm's backport kernel is also 6.12.x
>>
>> Workarounds:
>> * upgrade the kernel to experimental's (currently) 6.14.6-1~exp1
>> * downgrade iproute2 to 6.13.0-1 (using snapshot.d.o)
>> * on bookworm downgrade (using snapshot.d.o)
>>   iproute2 backport to 6.13.0-1~bpo12+1
>>
>> Details I could gather:
>>
>> This appears to come from this iproute2 6.14's commit:
>>
>> https://git.kernel.org/pub/scm/network/iproute2/iproute2.git/commit/?h=v6.14.0&id=7240e0e40f8332dd9f11348700c0c96b8df4ca5b
>>
>> which appears to depend on new kernel 6.14 rtnetlink features as described
>> in Kernelnewbies ( https://kernelnewbies.org/Linux_6.14#Networking ):
>>
>> Add ipv6 anycast join/leave notifications
>>
>> with this (kernel 6.14) commit:
>>
>> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=33d97a07b3ae6fa713919de4e1864ca04fff8f80
> 
> Hi Stephen and David,
> 
> It looks like there's a regression in iproute2 6.14, and 'ip monitor'
> no longer works with kernels < 6.14. Could you please have a look when
> you have a moment? Thanks!

were not a lot of changes, so most likely the multiaddress or anycast
address changes from Yuyang Huang. Please take a look.

[toc] | [prev] | [next] | [standalone]


#87647

FromLuca Boccassi <bluca@debian.org>
Date2025-05-23 02:10 +0200
Message-ID<KPo93-52jJ-1@gated-at.bofh.it>
In reply to#87639
On Fri, 23 May 2025 at 01:00, David Ahern <dsahern@kernel.org> wrote:
>
> On 5/22/25 4:55 PM, Luca Boccassi wrote:
> > On Thu, 22 May 2025 at 20:41, Adel Belhouane <bugs.a.b@free.fr> wrote:
> >>
> >> Package: iproute2
> >> Version: 6.14.0-3
> >> Severity: normal
> >> X-Debbugs-Cc: bugs.a.b@free.fr
> >>
> >> Dear Maintainer,
> >>
> >> Having iproute2 >= 6.14 while running a linux kernel < 6.14
> >> triggers this bug (tested using debian-13-nocloud-amd64-daily-20250520-2118.qcow2)
> >>
> >>     root@localhost:~# ip monitor
> >>     Failed to add ipv4 mcaddr group to list
> >>
> >> More specifically this subcommand, which didn't exist in iproute2 6.13
> >> is affected:
> >>
> >>     root@localhost:~# ip mon maddr
> >>     Failed to add ipv4 mcaddr group to list
> >>     root@localhost:~# ip -6 mon maddr
> >>     Failed to add ipv6 mcaddr group to list
> >>
> >> causing the generic "ip monitor" command to fail.
> >>
> >> As trixie will use a 6.12.x kernel, trixie is affected.
> >>
> >> bookworm's iproute2/bookworm-backports is also affected since currently
> >> bookworm's backport kernel is also 6.12.x
> >>
> >> Workarounds:
> >> * upgrade the kernel to experimental's (currently) 6.14.6-1~exp1
> >> * downgrade iproute2 to 6.13.0-1 (using snapshot.d.o)
> >> * on bookworm downgrade (using snapshot.d.o)
> >>   iproute2 backport to 6.13.0-1~bpo12+1
> >>
> >> Details I could gather:
> >>
> >> This appears to come from this iproute2 6.14's commit:
> >>
> >> https://git.kernel.org/pub/scm/network/iproute2/iproute2.git/commit/?h=v6.14.0&id=7240e0e40f8332dd9f11348700c0c96b8df4ca5b
> >>
> >> which appears to depend on new kernel 6.14 rtnetlink features as described
> >> in Kernelnewbies ( https://kernelnewbies.org/Linux_6.14#Networking ):
> >>
> >> Add ipv6 anycast join/leave notifications
> >>
> >> with this (kernel 6.14) commit:
> >>
> >> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=33d97a07b3ae6fa713919de4e1864ca04fff8f80
> >
> > Hi Stephen and David,
> >
> > It looks like there's a regression in iproute2 6.14, and 'ip monitor'
> > no longer works with kernels < 6.14. Could you please have a look when
> > you have a moment? Thanks!
>
> were not a lot of changes, so most likely the multiaddress or anycast
> address changes from Yuyang Huang. Please take a look.

The original reporter suggested it was this commit that introduced the
regression:

https://git.kernel.org/pub/scm/network/iproute2/iproute2.git/commit/?h=v6.14.0&id=7240e0e40f8332dd9f11348700c0c96b8df4ca5b

[toc] | [prev] | [next] | [standalone]


#87649

FromYuyang Huang <yuyanghuang@google.com>
Date2025-05-23 03:10 +0200
Message-ID<KPp58-52TG-3@gated-at.bofh.it>
In reply to#87647
Backward compatibility is broken due to the exit(1) in the following changes.

```
+ if (lmask & IPMON_LMADDR) {
+ if ((!preferred_family || preferred_family == AF_INET) &&
+     rtnl_add_nl_group(&rth, RTNLGRP_IPV4_MCADDR) < 0) {
+ fprintf(stderr,
+ "Failed to add ipv4 mcaddr group to list\n");
+ exit(1);
+ }
+ if ((!preferred_family || preferred_family == AF_INET6) &&
+     rtnl_add_nl_group(&rth, RTNLGRP_IPV6_MCADDR) < 0) {
+ fprintf(stderr,
+ "Failed to add ipv6 mcaddr group to list\n");
+ exit(1);
+ }
+ }
+
+ if (lmask & IPMON_LACADDR) {
+ if ((!preferred_family || preferred_family == AF_INET6) &&
+     rtnl_add_nl_group(&rth, RTNLGRP_IPV6_ACADDR) < 0) {
+ fprintf(stderr,
+ "Failed to add ipv6 acaddr group to list\n");
+ exit(1);
+ }
+ }
+
```

My patches follow the existing code styles, so I also added exit(1).

Link: https://git.kernel.org/pub/scm/network/iproute2/iproute2-next.git/tree/ip/ipmonitor.c#n330

I thought iproute2 was intentionally not backward compatible, but it
sounds like that's not true.

I can submit a fix patch to remove the exit(1), which should fix the
backward compatibility issue.

Shall we proceed with this proposal?

Thanks,

Yuyang

On Fri, May 23, 2025 at 9:03 AM Luca Boccassi <bluca@debian.org> wrote:
>
> On Fri, 23 May 2025 at 01:00, David Ahern <dsahern@kernel.org> wrote:
> >
> > On 5/22/25 4:55 PM, Luca Boccassi wrote:
> > > On Thu, 22 May 2025 at 20:41, Adel Belhouane <bugs.a.b@free.fr> wrote:
> > >>
> > >> Package: iproute2
> > >> Version: 6.14.0-3
> > >> Severity: normal
> > >> X-Debbugs-Cc: bugs.a.b@free.fr
> > >>
> > >> Dear Maintainer,
> > >>
> > >> Having iproute2 >= 6.14 while running a linux kernel < 6.14
> > >> triggers this bug (tested using debian-13-nocloud-amd64-daily-20250520-2118.qcow2)
> > >>
> > >>     root@localhost:~# ip monitor
> > >>     Failed to add ipv4 mcaddr group to list
> > >>
> > >> More specifically this subcommand, which didn't exist in iproute2 6.13
> > >> is affected:
> > >>
> > >>     root@localhost:~# ip mon maddr
> > >>     Failed to add ipv4 mcaddr group to list
> > >>     root@localhost:~# ip -6 mon maddr
> > >>     Failed to add ipv6 mcaddr group to list
> > >>
> > >> causing the generic "ip monitor" command to fail.
> > >>
> > >> As trixie will use a 6.12.x kernel, trixie is affected.
> > >>
> > >> bookworm's iproute2/bookworm-backports is also affected since currently
> > >> bookworm's backport kernel is also 6.12.x
> > >>
> > >> Workarounds:
> > >> * upgrade the kernel to experimental's (currently) 6.14.6-1~exp1
> > >> * downgrade iproute2 to 6.13.0-1 (using snapshot.d.o)
> > >> * on bookworm downgrade (using snapshot.d.o)
> > >>   iproute2 backport to 6.13.0-1~bpo12+1
> > >>
> > >> Details I could gather:
> > >>
> > >> This appears to come from this iproute2 6.14's commit:
> > >>
> > >> https://git.kernel.org/pub/scm/network/iproute2/iproute2.git/commit/?h=v6.14.0&id=7240e0e40f8332dd9f11348700c0c96b8df4ca5b
> > >>
> > >> which appears to depend on new kernel 6.14 rtnetlink features as described
> > >> in Kernelnewbies ( https://kernelnewbies.org/Linux_6.14#Networking ):
> > >>
> > >> Add ipv6 anycast join/leave notifications
> > >>
> > >> with this (kernel 6.14) commit:
> > >>
> > >> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=33d97a07b3ae6fa713919de4e1864ca04fff8f80
> > >
> > > Hi Stephen and David,
> > >
> > > It looks like there's a regression in iproute2 6.14, and 'ip monitor'
> > > no longer works with kernels < 6.14. Could you please have a look when
> > > you have a moment? Thanks!
> >
> > were not a lot of changes, so most likely the multiaddress or anycast
> > address changes from Yuyang Huang. Please take a look.
>
> The original reporter suggested it was this commit that introduced the
> regression:
>
> https://git.kernel.org/pub/scm/network/iproute2/iproute2.git/commit/?h=v6.14.0&id=7240e0e40f8332dd9f11348700c0c96b8df4ca5b

[toc] | [prev] | [next] | [standalone]


#87650

FromYuyang Huang <yuyanghuang@google.com>
Date2025-05-23 03:20 +0200
Message-ID<KPpeN-52X7-1@gated-at.bofh.it>
In reply to#87639
>iproute2 is generally backward compatible with previous kernels yes,

Acked, will submit a patch ASAP.
Could you advise which branch needs the fix?
Is submitting to iproute2-next and iproute2 enough?

Thanks,

Yuyang

On Fri, May 23, 2025 at 10:10 AM Luca Boccassi <bluca@debian.org> wrote:
>
> On Fri, 23 May 2025 at 01:58, Yuyang Huang <yuyanghuang@google.com> wrote:
> >
> > Backward compatibility is broken due to the exit(1) in the following changes.
> >
> > ```
> > + if (lmask & IPMON_LMADDR) {
> > + if ((!preferred_family || preferred_family == AF_INET) &&
> > +     rtnl_add_nl_group(&rth, RTNLGRP_IPV4_MCADDR) < 0) {
> > + fprintf(stderr,
> > + "Failed to add ipv4 mcaddr group to list\n");
> > + exit(1);
> > + }
> > + if ((!preferred_family || preferred_family == AF_INET6) &&
> > +     rtnl_add_nl_group(&rth, RTNLGRP_IPV6_MCADDR) < 0) {
> > + fprintf(stderr,
> > + "Failed to add ipv6 mcaddr group to list\n");
> > + exit(1);
> > + }
> > + }
> > +
> > + if (lmask & IPMON_LACADDR) {
> > + if ((!preferred_family || preferred_family == AF_INET6) &&
> > +     rtnl_add_nl_group(&rth, RTNLGRP_IPV6_ACADDR) < 0) {
> > + fprintf(stderr,
> > + "Failed to add ipv6 acaddr group to list\n");
> > + exit(1);
> > + }
> > + }
> > +
> > ```
> >
> > My patches follow the existing code styles, so I also added exit(1).
> >
> > Link: https://git.kernel.org/pub/scm/network/iproute2/iproute2-next.git/tree/ip/ipmonitor.c#n330
> >
> > I thought iproute2 was intentionally not backward compatible, but it
> > sounds like that's not true.
> >
> > I can submit a fix patch to remove the exit(1), which should fix the
> > backward compatibility issue.
> >
> > Shall we proceed with this proposal?
>
> iproute2 is generally backward compatible with previous kernels yes,
> so it would be great to have a fix for this. Thanks!

[toc] | [prev] | [next] | [standalone]


#87653

FromDavid Ahern <dsahern@kernel.org>
Date2025-05-23 04:30 +0200
Message-ID<KPqkx-53FS-1@gated-at.bofh.it>
In reply to#87650
On 5/22/25 7:17 PM, Yuyang Huang wrote:
>> iproute2 is generally backward compatible with previous kernels yes,
> 
> Acked, will submit a patch ASAP.
> Could you advise which branch needs the fix?
> Is submitting to iproute2-next and iproute2 enough?
> 
>

Thank you for the quick response.

I should have caught the exit on lack of support for the feature, so
that is on me.

Please send a patch based on iproute2 main (though main and next are
practically the same right now).

[toc] | [prev] | [next] | [standalone]


#87715 — Bug#1106321: marked as done (iproute2: "ip monitor" fails with current trixie's linux kernel / iproute2 combination)

From"Debian Bug Tracking System" <owner@bugs.debian.org>
Date2025-05-27 02:10 +0200
SubjectBug#1106321: marked as done (iproute2: "ip monitor" fails with current trixie's linux kernel / iproute2 combination)
Message-ID<KQQ3f-5Y2g-1@gated-at.bofh.it>
In reply to#87639

[Multipart message — attachments visible in raw view] — view raw

Your message dated Tue, 27 May 2025 00:04:27 +0000
with message-id <E1uJhnv-00B8gU-C4@fasolo.debian.org>
and subject line Bug#1106321: fixed in iproute2 6.15.0-1
has caused the Debian Bug report #1106321,
regarding iproute2: "ip monitor" fails with current trixie's linux kernel / iproute2 combination
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
1106321: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1106321
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems

[toc] | [prev] | [standalone]


Back to top | Article view | linux.debian.kernel


csiph-web