On Wed, Jul 16, 2025 at 10:29:55AM -0400, Joseph Huang wrote: > Talking about these packets being low rate, should I add unlikely() like so:
I don't think it's needed and probably not measurable in most (all?) deployments. The entire thing is hidden behind static_branch_unlikely(). It just seemed weird to perform the checks about the Tx offload and only later check if it's even a packet for which you want this offload. > > diff --git a/net/bridge/br_switchdev.c b/net/bridge/br_switchdev.c > index 95d7355a0407..9a910cf0256e 100644 > --- a/net/bridge/br_switchdev.c > +++ b/net/bridge/br_switchdev.c > @@ -17,6 +17,9 @@ static bool nbp_switchdev_can_offload_tx_fwd(const struct > net_bridge_port *p, > if (!static_branch_unlikely(&br_switchdev_tx_fwd_offload)) > return false; > > + if (unlikely(br_multicast_igmp_type(skb))) > + return false; > + > return (p->flags & BR_TX_FWD_OFFLOAD) && > (p->hwdom != BR_INPUT_SKB_CB(skb)->src_hwdom); > } > > Thanks, > Joseph