Re: [PATCH net v3] net: bridge: disable MRP ports before the FDB flush in del_nbp()
From: patchwork-bot+netdevbpf
Date: Thu Nov 05 2026 - 06:22:55 EST
Hello:
This patch was applied to netdev/net.git (main)
by Paolo Abeni <pabeni@xxxxxxxxxx>:
On Sat, 31 Oct 2026 21:48:40 -0700 you wrote:
> From: Cheng Yongkang <teel4res@xxxxxxxxx>
>
> del_nbp() flushes the port's FDB entries before it unregisters the RX
> handler. For a normal port, br_stp_disable_port() moves the port to
> BR_STATE_DISABLED before this cleanup.
>
> That does not hold for an MRP ring port. br_set_state() ignores state
> changes while BR_MRP_AWARE_BIT is set, so br_stp_disable_port() leaves
> the port state alone. br_mrp_port_del() then restores forwarding when
> the bridge is up before clearing the bit. A frame received between
> br_fdb_cleanup_by_dst() and netdev_rx_handler_unregister() can therefore
> create a new FDB entry referencing the dying port. Nothing removes that
> entry before destroy_nbp_rcu() frees the port, so a later frame to the
> learned MAC can be forwarded through the freed port.
>
> [...]
Here is the summary with links:
- [net,v3] net: bridge: disable MRP ports before the FDB flush in del_nbp()
https://git.kernel.org/netdev/net/c/37dfd0efbfff
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html