mtk_phy_link_adjust takes a spinlock and disables interrupts, but never unlocks. This can leave interrupts disabled on one CPU and various things stop working. Signed-off-by: NeilBrown <neil@xxxxxxxxxx> --- drivers/staging/mt7621-eth/mdio.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/staging/mt7621-eth/mdio.c b/drivers/staging/mt7621-eth/mdio.c index 9d713078ef90..c6db11aad9e4 100644 --- a/drivers/staging/mt7621-eth/mdio.c +++ b/drivers/staging/mt7621-eth/mdio.c @@ -57,6 +57,7 @@ static void mtk_phy_link_adjust(struct net_device *dev) } } } + spin_unlock_irqrestore(ð->phy->lock, flags); } int mtk_connect_phy_node(struct mtk_eth *eth, struct mtk_mac *mac, _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel