[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZrMbbIrNpCISI63I@shredder.lan>
Date: Wed, 7 Aug 2024 09:59:56 +0300
From: Ido Schimmel <idosch@...dia.com>
To: Geliang Tang <geliang@...nel.org>
Cc: "David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
Shuah Khan <shuah@...nel.org>, Petr Machata <petrm@...dia.com>,
Hangbin Liu <liuhangbin@...il.com>,
Benjamin Poirier <bpoirier@...dia.com>,
Jiri Pirko <jiri@...nulli.us>,
Vladimir Oltean <vladimir.oltean@....com>,
Geliang Tang <tanggeliang@...inos.cn>, netdev@...r.kernel.org,
linux-kselftest@...r.kernel.org
Subject: Re: [PATCH net-next] selftests: forwarding: lib.sh: ignore "Address
not found"
On Wed, Aug 07, 2024 at 12:08:15PM +0800, Geliang Tang wrote:
> On Tue, 2024-08-06 at 10:40 +0300, Ido Schimmel wrote:
> > On Tue, Aug 06, 2024 at 12:20:38PM +0800, Geliang Tang wrote:
> > > From: Geliang Tang <tanggeliang@...inos.cn>
> > >
> > > So many "Address not found" messages occur at the end of forwarding
> > > tests
> > > when using "ip address del" command for an invalid address:
> >
> > Can you give an example of an invalid address that triggers this
> > message?
> >
> > >
> > > TEST: FDB limits interacting with FDB type local
> > > [ OK ]
> > > Error: ipv4: Address not found.
> > >
> > > ... ...
> > > TEST: IGMPv3 S,G port entry automatic add to a *,G port
> > > [ OK ]
> > > Error: ipv4: Address not found.
> > > Error: ipv6: address not found.
> > >
> > > ... ...
> > > TEST: Isolated port flooding
> > > [ OK ]
> > > Error: ipv4: Address not found.
> > > Error: ipv6: address not found.
> > >
> > > ... ...
> > > TEST: Externally learned FDB entry - ageing & roaming
> > > [ OK ]
> > > Error: ipv4: Address not found.
> > > Error: ipv6: address not found.
> >
> > I'm unable to reproduce these with net-next and iproute2-next. Please
> > debug this to understand the root cause or provide more details on
> > how
> > to reproduce.
>
> I did get these errors with the latest net-next and iproute2-next. For
> example, I got these errors of "bridge_mdb_port_down.sh":
>
> $ sudo ./bridge_mdb_port_down.sh
> TEST: MDB add/del entry to port with state down [ OK ]
> Error: ipv4: Address not found.
> Error: ipv6: address not found.
> Error: ipv4: Address not found.
> Error: ipv6: address not found.
>
> These errors occur when using h1_destroy() and h2_destroy() to delete
> the addresses of h1 (192.0.2.1, 2001:db8:1::1) and h2 (192.0.2.2,
> 2001:db8:1::2):
>
> h1_destroy()
> {
> simple_if_fini $h1 192.0.2.1/24 2001:db8:1::1/64
> }
>
> h2_destroy()
> {
> simple_if_fini $h2 192.0.2.2/24 2001:db8:1::2/64
> }
>
> It seems that when invoking h1_destroy() and h2_destroy(), both h1 and
> h2 no longer have IP addresses.
This is unexpected, I do see the addresses on my end. Maybe you have
some network manager that is deleting these addresses for some reason?
Try tracing __inet_del_ifa() while running the tests:
# bpftrace -e 'k:__inet_del_ifa { @bla[comm] = count(); }'
Attaching 1 probe...
^C
@bla[ip]: 2
>
> I added "ifconfig" to show the addresses of h1 and h2 before invoking
> h1_destroy() and h2_destroy() like this:
>
> '''
> @@ -105,7 +105,9 @@ cleanup()
> pre_cleanup
>
> switch_destroy
> + ifconfig $h1
> h1_destroy
> + ifconfig $h2
> h2_destroy
>
> vrf_cleanup
> '''
>
> And got these messages:
>
> TEST: MDB add/del entry to port with state down [ OK ]
> veth0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
> ether f2:ca:02:ee:05:19 txqueuelen 1000 (Ethernet)
> RX packets 149 bytes 17355 (17.3 KB)
> RX errors 0 dropped 0 overruns 0 frame 0
> TX packets 81 bytes 9165 (9.1 KB)
> TX errors 0 dropped 12 overruns 0 carrier 0 collisions 0
>
> Error: ipv4: Address not found.
> Error: ipv6: address not found.
> veth3: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
> ether 92:df:97:5c:98:7e txqueuelen 1000 (Ethernet)
> RX packets 67 bytes 6252 (6.2 KB)
> RX errors 0 dropped 0 overruns 0 frame 0
> TX packets 39 bytes 4997 (4.9 KB)
> TX errors 0 dropped 56 overruns 0 carrier 0 collisions 0
>
> Error: ipv4: Address not found.
> Error: ipv6: address not found.
>
> -Geliang
>
> >
> > >
> > > This patch gnores these messages and redirects them to /dev/null in
> > > __addr_add_del().
> > >
> > > Signed-off-by: Geliang Tang <tanggeliang@...inos.cn>
> > > ---
> > > tools/testing/selftests/net/forwarding/lib.sh | 2 +-
> > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/tools/testing/selftests/net/forwarding/lib.sh
> > > b/tools/testing/selftests/net/forwarding/lib.sh
> > > index ff96bb7535ff..8670b6053cde 100644
> > > --- a/tools/testing/selftests/net/forwarding/lib.sh
> > > +++ b/tools/testing/selftests/net/forwarding/lib.sh
> > > @@ -839,7 +839,7 @@ __addr_add_del()
> > > array=("${@}")
> > >
> > > for addrstr in "${array[@]}"; do
> > > - ip address $add_del $addrstr dev $if_name
> > > + ip address $add_del $addrstr dev $if_name &>
> > > /dev/null
> > > done
> > > }
> > >
> > > --
> > > 2.43.0
> > >
>
Powered by blists - more mailing lists