lkml.org 
[lkml]   [2023]   [Aug]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH net] net: phy: Fix deadlocking in phy_error() invocation
From
Date
Hello:

This patch was applied to netdev/net.git (main)
by David S. Miller <davem@davemloft.net>:

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


\
 
 \ /
  Last update: 2023-08-20 02:39    [W:0.340 / U:0.056 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site