Re: [PATCH net-next v2 5/5] selftests: net: bridge: add tests for igmpv3 MRC and QQIC validation

Ido Schimmel <[email protected]>
Newsgroups dev.linux.lists.bridge,org.kernel.vger.linux-kernel,org.kernel.vger.linux-kselftest,org.kernel.vger.netdev
Message-ID <20260403101944.GA66518@shredder>
On Fri, Apr 03, 2026 at 01:20:49PM +0530, Ujjal Roy wrote:
> On Tue, Mar 31, 2026 at 7:44 PM Ido Schimmel <[email protected]> wrote:
> >
> > On Mon, Mar 30, 2026 at 07:16:11PM +0000, Ujjal Roy wrote:
> > > Add bridge selftests that configure IGMPv3 parameters and validate the
> > > resulting Query packet fields for Max Resp Code (MRC) and Querier Query
> > > Interval Code (QQIC).
> > >
> > > This also adds helper binary to encode floating-point exponential fields.
> > >
> > > Future extensions may cover corresponding IPv6 cases.
> >
> > Please cover both IGMPv3 and MLDv2 since the patchset touches both. You
> > can add the MLDv2 tests in bridge_mld.sh.
> >
> > Also, I think you can simplify the test by simply matching on the
> > expected values of MRC and QQIC using tc-u32.
> >
> > For both IGMPv3 and MLDv2 please test both:
> >
> > * MRC and QQIC in linear range.
> > * MRC and QQIC in non-linear range.
> >
> > And please make sure the new test cases don't add new shellcheck
> > warnings / errors or it will fail in the CI. You can ignore existing
> > ones.
> 
> I will upgrade the existing test cases in file bridge_vlan_mcast.sh
> instead of the previous file (bridge_igmp/mld.sh).

Is there a reason to place them in bridge_vlan_mcast.sh given they are
not specific to the per-VLAN multicast context? bridge_{igmp,mld}.sh
looks like a better fit.

> 
> I have some doubts on test case logs reporting. Below are the logs
> without my patchset. API used vlmc_query_intvl_test() and
> vlmc_query_response_intvl_test().
> TEST: Vlan mcast_query_interval global option default value         [ OK ]
> TEST: Vlan 10 mcast_query_interval option changed to 200            [ OK ]
> TEST: Vlan mcast_query_response_interval global option default value   [ OK ]
> TEST: Vlan 10 mcast_query_response_interval option changed to 200   [ OK ]
> 
> I am expecting some suggestions from the logs below. And are these
> covers both IGMPv3 and MLDv2 for QQIC and MRC?
> Actually mcast_query_interval=QQIC and
> mcast_query_response_interval=MRC we already know.

Not sure what you are asking. My request was to have test cases for both
MRC and QQIC, for both IGMPv3 and MLDv2.

> 
> TEST: Vlan mcast_query_interval global option default value         [ OK ]
> TEST: Vlan 10 mcast_query_interval option changed to 200            [ OK ]
> TEST: Vlan 10 mcast_query_interval number of IGMPv2 general query   [
> OK ] -> old case added log
> TEST: Vlan 10 mcast_query_interval option changed to 6000           [ OK ]
> TEST: Vlan 10 mcast_query_interval in IGMPv3 is 60                  [ OK ]
> TEST: Vlan 10 mcast_query_interval in MLDv2 is 60                   [ OK ]
> TEST: Vlan 10 mcast_query_interval option changed to 16000          [ OK ]
> TEST: Vlan 10 mcast_query_interval in IGMPv3 is 160                 [ OK ]
> TEST: Vlan 10 mcast_query_interval in MLDv2 is 160                  [ OK ]
> TEST: Vlan mcast_query_response_interval global option default value   [ OK ]
> TEST: Vlan 10 mcast_query_response_interval option changed to 600   [ OK ]
> TEST: Vlan 10 mcast_query_response_interval in IGMPv3 is 60         [ OK ]
> TEST: Vlan 10 mcast_query_response_interval option changed to 1600   [ OK ]
> TEST: Vlan 10 mcast_query_response_interval in IGMPv3 is 160        [ OK ]
> TEST: Vlan 10 mcast_query_response_interval option changed to 3000   [ OK ]
> TEST: Vlan 10 mcast_query_response_interval in MLDv2 is 30000       [ OK ]
> TEST: Vlan 10 mcast_query_response_interval option changed to 6000   [ OK ]
> TEST: Vlan 10 mcast_query_response_interval in MLDv2 is 60000       [ OK ]
> 
> Or is it better to name them properly instead of mcast option names, like below?
> 
> Vlan 10 mcast_query_interval:
> TEST: Number of tagged IGMPv2 general query                         [ OK ]
> TEST: IGMPv3 QQIC linear value 60                                   [ OK ]
> TEST: IGMPv3 QQIC non linear value 160                              [ OK ]
> TEST: MLDv2 QQIC linear value 60                                    [ OK ]
> TEST: MLDv2 QQIC non linear value 160                               [ OK ]

I find the latter clearer.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.