Subject: Re: [PATCH v5 net-next 00/10] Let switchdev drivers offload and unoffload bridge ports at their own convenience

From: Ido Schimmel <[email-masked]>
Date: Tue, 20 Jul 2021 17:51:24 +0300

On Tue, Jul 20, 2021 at 02:46:18PM +0000, Vladimir Oltean wrote:
> On Tue, Jul 20, 2021 at 05:25:08PM +0300, Ido Schimmel wrote:
> > If you don't want to change the order, then at least make the
> > replay/cleanup optional and set it to 'false' for mlxsw. This should
> > mean that the only change in mlxsw should be adding calls to
> > switchdev_bridge_port_offload() / switchdev_bridge_port_unoffload() in
> > mlxsw_sp_bridge_port_create() / mlxsw_sp_bridge_port_destroy(),
> > respectively.
> 
> I mean, I could guard br_{vlan,mdb,fdb}_replay() against NULL notifier
> block pointers, and then make mlxsw pass NULL for both the atomic_nb and
> blocking_nb.
> 
> But why? How do you deal with a host-joined mdb that was auto-installed
> while there was no port under the bridge?

mlxsw does not currently support such entries. It's on my TODO list.
When we add support for that, we will also take care of the replay.

> How does anyone deal with that? What's optional about it? Why would
> driver X opt out of it but Y not (apart for the case where driver X
> does not offload MDBs at all, that I can understand).