net: phy: micrel: Move netif_rx() outside of IRQ-off section.
authorSebastian Andrzej Siewior <bigeasy@linutronix.de>
Sun, 6 Mar 2022 21:57:53 +0000 (22:57 +0100)
committerDavid S. Miller <davem@davemloft.net>
Mon, 7 Mar 2022 11:40:41 +0000 (11:40 +0000)
commit67dbd6c0a2c427211244e344b85a55d6e82886bf
treec624eac211a2600ea1c384d14cc23daa1c7323af
parent2655926aea9beea62c9ba80c032485456fd848f0
net: phy: micrel: Move netif_rx() outside of IRQ-off section.

lan8814_match_rx_ts() invokes netif_rx() with disables interrupts
outside which will create a warning. Invoking netif_rx_ni() with
disabled interrupts is wrong even without the recent rework because
netif_rx_ni() would enable interrupts while processing the softirq. This
in turn can lead to dead lock if an interrupts triggers and attempts to
acquire kszphy_ptp_priv::rx_ts_lock.

Move netif_rx() outside the IRQ-off section.

Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Heiner Kallweit <hkallweit1@gmail.com>
Cc: Russell King <linux@armlinux.org.uk>
Cc: Divya Koppera <Divya.Koppera@microchip.com>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/phy/micrel.c