Re: [PATCH net] net: phy: Fix deadlocking in phy_error() invocation
From: patchwork-bot+netdevbpf
Date: Sat Aug 19 2023 - 20:37:15 EST
Hello:
This patch was applied to netdev/net.git (main)
by David S. Miller <davem@xxxxxxxxxxxxx>:
On Fri, 18 Aug 2023 15:54:45 +0300 you wrote:
> Since commit 91a7cda1f4b8 ("net: phy: Fix race condition on link status
> change") all the phy_error() method invocations have been causing the
> nested-mutex-lock deadlock because it's normally done in the PHY-driver
> threaded IRQ handlers which since that change have been called with the
> phydev->lock mutex held. Here is the calls thread:
>
> IRQ: phy_interrupt()
> +-> mutex_lock(&phydev->lock); <--------------------+
> drv->handle_interrupt() | Deadlock due
> +-> ERROR: phy_error() + to the nested
> +-> phy_process_error() | mutex lock
> +-> mutex_lock(&phydev->lock); <-+
> phydev->state = PHY_ERROR;
> mutex_unlock(&phydev->lock);
> mutex_unlock(&phydev->lock);
>
> [...]
Here is the summary with links:
- [net] net: phy: Fix deadlocking in phy_error() invocation
https://git.kernel.org/netdev/net/c/a0e026e7b37e
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html