mbox series

[net,0/5] net: lan966x: Fix issues with MAC table

Message ID 20220714194040.231651-1-horatiu.vultur@microchip.com (mailing list archive)
Headers show
Series net: lan966x: Fix issues with MAC table | expand

Message

Horatiu Vultur July 14, 2022, 7:40 p.m. UTC
The patch series fixes 2 issues:
- when an entry was forgotten the irq thread was holding a spin lock and then
  was talking also rtnl_lock.
- the access to the HW MAC table is indirect, so the access to the HW MAC
  table was not synchronized, which means that there could be race conditions.

Horatiu Vultur (5):
  net: lan966x: Fix taking rtnl_lock while holding spin_lock
  net: lan966x: Fix usage of lan966x->mac_lock when entry is added
  net: lan966x: Fix usage of lan966x->mac_lock when entry is removed
  net: lan966x: Fix usage of lan966x->mac_lock inside
    lan966x_mac_irq_handler
  net: lan966x: Fix usage of lan966x->mac_lock when used by FDB

 .../ethernet/microchip/lan966x/lan966x_mac.c  | 112 +++++++++++++-----
 1 file changed, 80 insertions(+), 32 deletions(-)

Comments

Vladimir Oltean July 16, 2022, 8:10 p.m. UTC | #1
On Thu, Jul 14, 2022 at 09:40:35PM +0200, Horatiu Vultur wrote:
> The patch series fixes 2 issues:
> - when an entry was forgotten the irq thread was holding a spin lock and then
>   was talking also rtnl_lock.
> - the access to the HW MAC table is indirect, so the access to the HW MAC
>   table was not synchronized, which means that there could be race conditions.

Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com>
patchwork-bot+netdevbpf@kernel.org July 19, 2022, 3:20 a.m. UTC | #2
Hello:

This series was applied to netdev/net.git (master)
by Jakub Kicinski <kuba@kernel.org>:

On Thu, 14 Jul 2022 21:40:35 +0200 you wrote:
> The patch series fixes 2 issues:
> - when an entry was forgotten the irq thread was holding a spin lock and then
>   was talking also rtnl_lock.
> - the access to the HW MAC table is indirect, so the access to the HW MAC
>   table was not synchronized, which means that there could be race conditions.
> 
> Horatiu Vultur (5):
>   net: lan966x: Fix taking rtnl_lock while holding spin_lock
>   net: lan966x: Fix usage of lan966x->mac_lock when entry is added
>   net: lan966x: Fix usage of lan966x->mac_lock when entry is removed
>   net: lan966x: Fix usage of lan966x->mac_lock inside
>     lan966x_mac_irq_handler
>   net: lan966x: Fix usage of lan966x->mac_lock when used by FDB
> 
> [...]

Here is the summary with links:
  - [net,1/5] net: lan966x: Fix taking rtnl_lock while holding spin_lock
    https://git.kernel.org/netdev/net/c/45533a534a45
  - [net,2/5] net: lan966x: Fix usage of lan966x->mac_lock when entry is added
    https://git.kernel.org/netdev/net/c/43243bb3195b
  - [net,3/5] net: lan966x: Fix usage of lan966x->mac_lock when entry is removed
    https://git.kernel.org/netdev/net/c/99343cfa4f75
  - [net,4/5] net: lan966x: Fix usage of lan966x->mac_lock inside lan966x_mac_irq_handler
    https://git.kernel.org/netdev/net/c/c19246843697
  - [net,5/5] net: lan966x: Fix usage of lan966x->mac_lock when used by FDB
    https://git.kernel.org/netdev/net/c/675c807ae26b

You are awesome, thank you!