From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: DKIM-Filter: OpenDKIM Filter v2.11.0 smtp4.osuosl.org 89CCA41916 DKIM-Filter: OpenDKIM Filter v2.11.0 smtp4.osuosl.org 0F39F418F7 MIME-Version: 1.0 Date: Tue, 20 Sep 2022 23:29:12 +0200 From: netdev@kapio-technology.com In-Reply-To: References: <5cee059b65f6f7671e099150f9da79c1@kapio-technology.com> <8dfc9b525f084fa5ad55019f4418a35e@kapio-technology.com> <20220908112044.czjh3xkzb4r27ohq@skbuf> <152c0ceadefbd742331c340bec2f50c0@kapio-technology.com> <20220911001346.qno33l47i6nvgiwy@skbuf> <15ee472a68beca4a151118179da5e663@kapio-technology.com> Message-ID: <086704ce7f323cc1b3cca78670b42095@kapio-technology.com> Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Bridge] [PATCH v5 net-next 6/6] selftests: forwarding: add test of MAC-Auth Bypass to locked port tests List-Id: Linux Ethernet Bridging List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Ido Schimmel Cc: Andrew Lunn , Alexandre Belloni , Nikolay Aleksandrov , Kurt Kanzenbach , Eric Dumazet , linux-kselftest@vger.kernel.org, Shuah Khan , Ivan Vecera , Florian Fainelli , Daniel Borkmann , bridge@lists.linux-foundation.org, linux-arm-kernel@lists.infradead.org, Roopa Prabhu , kuba@kernel.org, Paolo Abeni , Vivien Didelot , Woojung Huh , Landen Chao , Jiri Pirko , Christian Marangi , Hauke Mehrtens , Sean Wang , DENG Qingfang , Claudiu Manoil , linux-mediatek@lists.infradead.org, Matthias Brugger , Yuwei Wang , netdev@vger.kernel.org, linux-kernel@vger.kernel.org, UNGLinuxDriver@microchip.com, Vladimir Oltean , davem@davemloft.net On 2022-09-12 11:08, Ido Schimmel wrote: > On Sun, Sep 11, 2022 at 11:23:55AM +0200, netdev@kapio-technology.com > wrote: >> On 2022-09-11 02:13, Vladimir Oltean wrote: >> > On Fri, Sep 09, 2022 at 03:11:56PM +0200, netdev@kapio-technology.com >> > wrote: >> > > > > > On Wed, Sep 07, 2022 at 11:10:07PM +0200, netdev@kapio-technology.com wrote: >> > > > > > > I am at the blackhole driver implementation now, as I suppose that the >> > > > > > > iproute2 command should work with the mv88e6xxx driver when adding blackhole >> > > > > > > entries (with a added selftest)? >> > > > > > > I decided to add the blackhole feature as new ops for drivers with functions >> > > > > > > blackhole_fdb_add() and blackhole_fdb_del(). Do you agree with that approach? >> > > > > > >> > > > > > I assume you are talking about extending 'dsa_switch_ops'? >> > > > > >> > > > > Yes, that is the idea. >> > > > > >> > > > > > If so, it's up to the DSA maintainers to decide. >> > > > >> > > > What will be the usefulness of adding a blackhole FDB entry from user >> > > > space? >> > > >> > > With the software bridge it could be used to signal a untrusted host >> > > in >> > > connection with a locked port entry attempt. I don't see so much use >> > > other >> > > that test purposes with the driver though. >> > >> > Not a huge selling point, to be honest. Can't the blackhole flag remain >> > settable only in the device -> bridge direction, with user space just >> > reading it? >> >> That is possible, but it would of course not make sense to have >> selftests of >> the feature as that would not work unless there is a driver with this >> capability (now just mv88e6xxx). > > The new "blackhole" flag requires changes in the bridge driver and > without allowing user space to add such entries, the only way to test > these changes is with mv88e6xxx which many of us do not have... I am now building from new system (comp), and the kernel selftests are not being installed correctly, so I haven't been able to run the selftests yet. I have made a blackhole selftest, which looks like this: test_blackhole_fdb() { RET=0 check_blackhole_fdb_support || return 0 tcpdump_start $h2 $MZ $h1 -q -t udp -a $h1 -b $h2 tcpdump_stop tcpdump_show | grep -q udp check_err $? "test_blackhole_fdb: No packet seen on initial" tcpdump_cleanup bridge fdb add `mac_get $h2` dev br0 blackhole bridge fdb show dev br0 | grep -q "blackhole" check_err $? "test_blackhole_fdb: No blackhole FDB entry found" tcpdump_start $h2 $MZ $h1 -q -t udp -a $h1 -b $h2 tcpdump_stop tcpdump_show | grep -q udp check_fail $? "test_blackhole_fdb: packet seen with blackhole fdb entry" tcpdump_cleanup bridge fdb del `mac_get $h2` dev br0 blackhole bridge fdb show dev br0 | grep -q "blackhole" check_fail $? "test_blackhole_fdb: Blackhole FDB entry not deleted" tcpdump_start $h2 $MZ $h1 -q -t udp -a $h1 -b $h2 tcpdump_stop tcpdump_show | grep -q udp check_err $? "test_blackhole_fdb: No packet seen after removing blackhole FDB entry" tcpdump_cleanup log_test "Blackhole FDB entry test" } the setup is simple and is the same as in bridge_sticky_fdb.sh. Does the test look sound or is there obvious mistakes?