linux-stable/drivers/net/dsa
Andrew Lunn 0ef99ba038 net: dsa: mv88e6xxx: Fix interrupt masking on removal
[ Upstream commit 3d5fdba184 ]

When removing the interrupt handling code, we should mask the
generation of interrupts. The code however unmasked all
interrupts. This can then cause a new interrupt. We then get into a
deadlock where the interrupt thread is waiting to run, and the code
continues, trying to remove the interrupt handler, which means waiting
for the thread to complete. On a UP machine this deadlocks.

Fix so we really mask interrupts in the hardware. The same error is
made in the error path when install the interrupt handling code.

Fixes: 3460a5770c ("net: dsa: mv88e6xxx: Mask g1 interrupts and free interrupt")
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-02-25 11:08:00 +01:00
..
b53 License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
microchip net: dsa: Move FDB dump implementation inside DSA 2017-08-07 14:48:48 -07:00
mv88e6xxx net: dsa: mv88e6xxx: Fix interrupt masking on removal 2018-02-25 11:08:00 +01:00
bcm_sf2.c net: dsa: bcm_sf2: Clear IDDQ_GLOBAL_PWR bit for PHY 2018-01-02 20:31:10 +01:00
bcm_sf2.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-09-01 17:42:05 -07:00
bcm_sf2_cfp.c net: dsa: bcm_sf2: Fix number of CFP entries for BCM7278 2017-08-30 16:02:42 -07:00
bcm_sf2_regs.h net: dsa: bcm_sf2: Advertise number of egress queues 2017-09-05 11:53:34 -07:00
dsa_loop.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-09-05 20:03:35 -07:00
dsa_loop.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
dsa_loop_bdinfo.c net: dsa: Mock-up driver 2017-04-01 12:39:32 -07:00
Kconfig dsa: add DSA switch driver for Microchip KSZ9477 2017-05-31 20:56:31 -04:00
lan9303-core.c net: dsa: lan9303: Do not disable switch fabric port 0 at .probe 2017-12-20 10:10:32 +01:00
lan9303.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
lan9303_i2c.c net: dsa: lan9303: MDIO access phy registers directly 2017-07-30 19:23:29 -07:00
lan9303_mdio.c net: dsa: lan9303: MDIO access phy registers directly 2017-07-30 19:23:29 -07:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mt7530.c net: dsa: make dsa_switch_ops const 2017-08-09 22:42:49 -07:00
mt7530.h net: dsa: mediatek: add adjust link support for user ports 2017-08-08 18:01:25 -07:00
mv88e6060.c net: dsa: mv88e6060: fix switch MAC address 2017-10-14 18:40:03 -07:00
mv88e6060.h net: dsa: Keep the mii bus and address in the private structure 2016-04-13 18:15:23 -04:00
qca8k.c net: dsa: make some structures const 2017-08-29 16:05:07 -07:00
qca8k.h net: dsa: call phy_init_eee in DSA layer 2017-08-01 20:09:10 -07:00