All the mail mirrored from lore.kernel.org
 help / color / mirror / Atom feed
From: Ido Schimmel <idosch@nvidia.com>
To: netdev@kapio-technology.com
Cc: Vladimir Oltean <olteanv@gmail.com>,
	davem@davemloft.net, kuba@kernel.org, netdev@vger.kernel.org,
	Andrew Lunn <andrew@lunn.ch>,
	Vivien Didelot <vivien.didelot@gmail.com>,
	Florian Fainelli <f.fainelli@gmail.com>,
	Eric Dumazet <edumazet@google.com>,
	Paolo Abeni <pabeni@redhat.com>, Jiri Pirko <jiri@resnulli.us>,
	Ivan Vecera <ivecera@redhat.com>, Roopa Prabhu <roopa@nvidia.com>,
	Nikolay Aleksandrov <razor@blackwall.org>,
	Shuah Khan <shuah@kernel.org>,
	Daniel Borkmann <daniel@iogearbox.net>,
	linux-kernel@vger.kernel.org, bridge@lists.linux-foundation.org,
	linux-kselftest@vger.kernel.org
Subject: Re: [PATCH v4 net-next 3/6] drivers: net: dsa: add locked fdb entry flag to drivers
Date: Thu, 25 Aug 2022 14:58:19 +0300	[thread overview]
Message-ID: <Ywdj2+mIQFR6+drZ@shredder> (raw)
In-Reply-To: <7dfe15571370dfb5348a3d0e5478f62c@kapio-technology.com>

On Thu, Aug 25, 2022 at 12:27:01PM +0200, netdev@kapio-technology.com wrote:
> On 2022-08-25 11:23, Ido Schimmel wrote:
> > > 
> > > 
> > > Ido, I am not so known to the selftests, so I am wondering why I
> > > don't see
> > > either check_err or check_fail fail, whichever I use, when I think
> > > they
> > > should and then they are not really checking...
> > > 
> > > 
> > >         local mac=10:20:30:30:20:10
> > > 
> > > 
> > >         $MZ $h1 -t udp -a $mac -b rand
> > >         bridge fdb show dev $swp1 | grep -q "$mac vlan 1 master br0
> > > locked"
> > >         check_err $? "MAB station move: no locked entry on first
> > > injection"
> > > 
> > >         $MZ $h2 -t udp -a $mac -b rand
> > >         bridge fdb show dev $swp1 | grep -q "$mac vlan 1 master br0
> > > locked"
> > >         check_err $? "MAB station move: locked entry did not move"
> > > 
> > > What is wrong here?
> > 
> > Did you try adding a sleep between mausezahn and the FDB dump? At least
> > that is what learning_test() is doing. It is possible that the packet is
> > not sent / processed fast enough for the bridge to learn it before the
> > dump.
> > 
> 
> I missed the call to log_test at the end of the test.
> 
> > > 
> > > For a mv88e6xxx test I guess I can make a check to verify that this
> > > driver
> > > is in use?
> > 
> > Not in a generic forwarding test. Maybe in
> > tools/testing/selftests/drivers/net/dsa/
> > 
> > My preference would be to get as much tests as possible in
> > tools/testing/selftests/net/forwarding/bridge_locked_port.sh.
> 
> I now have a roaming test in
> tools/testing/selftests/net/forwarding/bridge_locked_port.sh, but it will
> not pass with mv88e6xxx as it is meant for the SW bridge.
> 
> I can check if the sticky flag is set on the locked entry and then skip the
> test if it is.

Instead of skipping it you can check that roaming fails when "sticky" is
set.

> 
> The bridge_locked_port.sh test is linked in
> tools/testing/selftests/drivers/net/dsa/, but if I cannot check if the
> mv88e6xxx driver or other switchcores are in use, I cannot do more.

Since the behavior of the HW data path is reflected to the software
bridge and user space via "sticky" / "blackhole" / "extern_learn", you
should be able to add test cases to the generic selftest. For example,
if "blackhole" is set, then simple ping is expected to fail. Otherwise
it is expected to pass.

WARNING: multiple messages have this Message-ID (diff)
From: Ido Schimmel <idosch@nvidia.com>
To: netdev@kapio-technology.com
Cc: Ivan Vecera <ivecera@redhat.com>, Andrew Lunn <andrew@lunn.ch>,
	Florian Fainelli <f.fainelli@gmail.com>,
	Jiri Pirko <jiri@resnulli.us>,
	Daniel Borkmann <daniel@iogearbox.net>,
	netdev@vger.kernel.org, Nikolay Aleksandrov <razor@blackwall.org>,
	bridge@lists.linux-foundation.org, linux-kernel@vger.kernel.org,
	Vivien Didelot <vivien.didelot@gmail.com>,
	Eric Dumazet <edumazet@google.com>,
	Paolo Abeni <pabeni@redhat.com>,
	linux-kselftest@vger.kernel.org, Roopa Prabhu <roopa@nvidia.com>,
	kuba@kernel.org, Vladimir Oltean <olteanv@gmail.com>,
	Shuah Khan <shuah@kernel.org>,
	davem@davemloft.net
Subject: Re: [Bridge] [PATCH v4 net-next 3/6] drivers: net: dsa: add locked fdb entry flag to drivers
Date: Thu, 25 Aug 2022 14:58:19 +0300	[thread overview]
Message-ID: <Ywdj2+mIQFR6+drZ@shredder> (raw)
In-Reply-To: <7dfe15571370dfb5348a3d0e5478f62c@kapio-technology.com>

On Thu, Aug 25, 2022 at 12:27:01PM +0200, netdev@kapio-technology.com wrote:
> On 2022-08-25 11:23, Ido Schimmel wrote:
> > > 
> > > 
> > > Ido, I am not so known to the selftests, so I am wondering why I
> > > don't see
> > > either check_err or check_fail fail, whichever I use, when I think
> > > they
> > > should and then they are not really checking...
> > > 
> > > 
> > >         local mac=10:20:30:30:20:10
> > > 
> > > 
> > >         $MZ $h1 -t udp -a $mac -b rand
> > >         bridge fdb show dev $swp1 | grep -q "$mac vlan 1 master br0
> > > locked"
> > >         check_err $? "MAB station move: no locked entry on first
> > > injection"
> > > 
> > >         $MZ $h2 -t udp -a $mac -b rand
> > >         bridge fdb show dev $swp1 | grep -q "$mac vlan 1 master br0
> > > locked"
> > >         check_err $? "MAB station move: locked entry did not move"
> > > 
> > > What is wrong here?
> > 
> > Did you try adding a sleep between mausezahn and the FDB dump? At least
> > that is what learning_test() is doing. It is possible that the packet is
> > not sent / processed fast enough for the bridge to learn it before the
> > dump.
> > 
> 
> I missed the call to log_test at the end of the test.
> 
> > > 
> > > For a mv88e6xxx test I guess I can make a check to verify that this
> > > driver
> > > is in use?
> > 
> > Not in a generic forwarding test. Maybe in
> > tools/testing/selftests/drivers/net/dsa/
> > 
> > My preference would be to get as much tests as possible in
> > tools/testing/selftests/net/forwarding/bridge_locked_port.sh.
> 
> I now have a roaming test in
> tools/testing/selftests/net/forwarding/bridge_locked_port.sh, but it will
> not pass with mv88e6xxx as it is meant for the SW bridge.
> 
> I can check if the sticky flag is set on the locked entry and then skip the
> test if it is.

Instead of skipping it you can check that roaming fails when "sticky" is
set.

> 
> The bridge_locked_port.sh test is linked in
> tools/testing/selftests/drivers/net/dsa/, but if I cannot check if the
> mv88e6xxx driver or other switchcores are in use, I cannot do more.

Since the behavior of the HW data path is reflected to the software
bridge and user space via "sticky" / "blackhole" / "extern_learn", you
should be able to add test cases to the generic selftest. For example,
if "blackhole" is set, then simple ping is expected to fail. Otherwise
it is expected to pass.

  reply	other threads:[~2022-08-25 11:58 UTC|newest]

Thread overview: 84+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-12 12:29 [PATCH v4 net-next 3/6] drivers: net: dsa: add locked fdb entry flag to drivers netdev
2022-08-12 12:29 ` [Bridge] " netdev
2022-08-14 14:55 ` Ido Schimmel
2022-08-14 14:55   ` [Bridge] " Ido Schimmel
2022-08-19  9:51   ` netdev
2022-08-19  9:51     ` [Bridge] " netdev
2022-08-21  7:08     ` Ido Schimmel
2022-08-21  7:08       ` [Bridge] " Ido Schimmel
2022-08-21 13:43       ` netdev
2022-08-21 13:43         ` [Bridge] " netdev
2022-08-22  5:40         ` Ido Schimmel
2022-08-22  5:40           ` [Bridge] " Ido Schimmel
2022-08-22  7:49           ` netdev
2022-08-22  7:49             ` [Bridge] " netdev
2022-08-23  6:48             ` Ido Schimmel
2022-08-23  6:48               ` [Bridge] " Ido Schimmel
2022-08-23  7:13               ` netdev
2022-08-23  7:13                 ` [Bridge] " netdev
2022-08-23  7:24                 ` Ido Schimmel
2022-08-23  7:24                   ` [Bridge] " Ido Schimmel
2022-08-23  7:37                   ` netdev
2022-08-23  7:37                     ` [Bridge] " netdev
2022-08-23 12:36                     ` Ido Schimmel
2022-08-23 12:36                       ` [Bridge] " Ido Schimmel
2022-08-24  7:07                       ` netdev
2022-08-24  7:07                         ` [Bridge] " netdev
2022-08-23 11:41               ` netdev
2022-08-23 11:41                 ` [Bridge] " netdev
2022-08-25  9:36                 ` Ido Schimmel
2022-08-25  9:36                   ` [Bridge] " Ido Schimmel
2022-08-25 10:28                   ` netdev
2022-08-25 10:28                     ` [Bridge] " netdev
2022-08-25 15:14                   ` netdev
2022-08-25 15:14                     ` [Bridge] " netdev
2022-08-24 20:29       ` netdev
2022-08-24 20:29         ` [Bridge] " netdev
2022-08-25  9:23         ` Ido Schimmel
2022-08-25  9:23           ` [Bridge] " Ido Schimmel
2022-08-25 10:27           ` netdev
2022-08-25 10:27             ` [Bridge] " netdev
2022-08-25 11:58             ` Ido Schimmel [this message]
2022-08-25 11:58               ` Ido Schimmel
2022-08-25 13:41               ` netdev
2022-08-25 13:41                 ` [Bridge] " netdev
  -- strict thread matches above, loose matches on Subject: below --
2022-07-07 15:29 [PATCH v4 net-next 0/6] Extend locked port feature with FDB locked flag (MAC-Auth/MAB) Hans Schultz
2022-07-07 15:29 ` [PATCH v4 net-next 3/6] drivers: net: dsa: add locked fdb entry flag to drivers Hans Schultz
2022-07-08  7:12   ` kernel test robot
2022-07-08  8:49   ` Vladimir Oltean
2022-07-08  9:06     ` netdev
2022-07-08  9:15       ` Vladimir Oltean
2022-07-08  9:27         ` netdev
2022-07-08  9:50         ` netdev
2022-07-08 11:56           ` Vladimir Oltean
2022-07-08 12:34             ` netdev
2022-07-10  8:35               ` Ido Schimmel
2022-07-13  7:09                 ` netdev
2022-07-13 12:39                   ` Ido Schimmel
2022-07-17 12:21                     ` netdev
2022-07-17 12:57                       ` Vladimir Oltean
2022-07-17 13:09                         ` netdev
2022-07-17 13:59                           ` Vladimir Oltean
2022-07-17 14:57                             ` netdev
2022-07-17 15:08                               ` Vladimir Oltean
2022-07-17 16:10                                 ` netdev
2022-07-21 11:54                                   ` Vladimir Oltean
2022-07-17 15:20                       ` Ido Schimmel
2022-07-17 15:53                         ` netdev
2022-07-21 11:59                           ` Vladimir Oltean
2022-07-21 13:27                             ` Ido Schimmel
2022-07-21 14:20                               ` Vladimir Oltean
2022-07-24 11:10                                 ` Ido Schimmel
2022-08-01 11:57                                   ` netdev
2022-08-01 13:14                                   ` netdev
2022-08-02 12:54                             ` netdev
2022-08-01 15:33                     ` netdev
2022-08-09  9:20                       ` Ido Schimmel
2022-08-09 20:00                         ` netdev
2022-08-10  7:21                           ` Ido Schimmel
2022-08-10  8:40                             ` netdev
2022-08-11 11:28                               ` Ido Schimmel
2022-08-12 15:33                                 ` netdev
2022-08-16  7:51                             ` netdev
2022-08-17  6:21                               ` Ido Schimmel
2022-07-21 11:51           ` Vladimir Oltean
2022-07-08 20:39   ` kernel test robot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Ywdj2+mIQFR6+drZ@shredder \
    --to=idosch@nvidia.com \
    --cc=andrew@lunn.ch \
    --cc=bridge@lists.linux-foundation.org \
    --cc=daniel@iogearbox.net \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=f.fainelli@gmail.com \
    --cc=ivecera@redhat.com \
    --cc=jiri@resnulli.us \
    --cc=kuba@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=netdev@kapio-technology.com \
    --cc=netdev@vger.kernel.org \
    --cc=olteanv@gmail.com \
    --cc=pabeni@redhat.com \
    --cc=razor@blackwall.org \
    --cc=roopa@nvidia.com \
    --cc=shuah@kernel.org \
    --cc=vivien.didelot@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.