linux/drivers/net
Sergei Miroshnichenko 9abefcb1aa can: dev: fix deadlock reported after bus-off
A timer was used to restart after the bus-off state, leading to a
relatively large can_restart() executed in an interrupt context,
which in turn sets up pinctrl. When this happens during system boot,
there is a high probability of grabbing the pinctrl_list_mutex,
which is locked already by the probe() of other device, making the
kernel suspect a deadlock condition [1].

To resolve this issue, the restart_timer is replaced by a delayed
work.

[1] https://github.com/victronenergy/venus/issues/24

Signed-off-by: Sergei Miroshnichenko <sergeimir@emcraft.com>
Cc: linux-stable <stable@vger.kernel.org>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
2016-09-22 10:01:21 +02:00
..
appletalk
arcnet
bonding bonding: Fix bonding crash 2016-09-04 11:41:12 -07:00
caif virtio/vhost: new features for 4.8 2016-08-06 09:20:13 -04:00
can can: dev: fix deadlock reported after bus-off 2016-09-22 10:01:21 +02:00
cris
dsa net: dsa: bcm_sf2: Fix race condition while unmasking interrupts 2016-08-25 16:49:25 -07:00
ethernet net/mlx4_core: Fix to clean devlink resources 2016-09-22 01:41:27 -04:00
fddi net: skfb: remove obsolete -I cflag 2016-06-15 22:06:06 -07:00
fjes net: fjes: fjes_main: Remove create_workqueue 2016-06-03 19:29:42 -04:00
hamradio hamradio: baycom: fix old-style declaration 2016-06-16 22:06:30 -07:00
hippi
hyperv hv_netvsc: fix bonding devices check in netvsc_netdev_event() 2016-08-15 13:48:07 -07:00
ieee802154 mrf24j40: avoid uninitialized byte in SPI transfer to radio. 2016-07-12 11:54:53 +02:00
ipvlan ipvlan: Scrub skb before crossing the namespace boundry 2016-07-25 21:47:26 -07:00
irda net: irda: avoid null pointer dereference 2016-05-19 11:30:57 -07:00
phy drivers: net: phy: xgene: Fix 'remove' function 2016-09-13 12:04:11 -04:00
plip
ppp Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-07-24 00:53:32 -04:00
slip
team team: loadbalance: push lacpdus to exact delivery 2016-08-26 13:08:59 -07:00
usb r8152: disable ALDPS and EEE before setting PHY 2016-09-21 00:53:47 -04:00
vmxnet3 vmxnet3: fix tx data ring copy for variable size 2016-08-19 22:44:22 -07:00
wan wan/fsl_ucc_hdlc: avoid possible NULL pointer dereference 2016-08-01 13:32:52 -07:00
wimax
wireless * fix to prevent firmware crash when sending off-channel frames 2016-09-17 17:06:22 +03:00
xen-netback xen-netback: fix error handling on netback_probe() 2016-09-17 09:56:02 -04:00
dummy.c
eql.c
geneve.c drivers/net: fixup comments after "Future-proof tunnel offload handlers" 2016-07-11 13:42:11 -07:00
gtp.c gtp: remove unused including <linux/version.h> 2016-06-17 22:28:49 -07:00
ifb.c
Kconfig
LICENSE.SRC
loopback.c loopback: make use of NETIF_F_GSO_SOFTWARE 2016-06-03 19:37:21 -04:00
macsec.c net: remove type_check from dev_get_nest_level() 2016-08-13 15:15:54 -07:00
macvlan.c net: remove type_check from dev_get_nest_level() 2016-08-13 15:15:54 -07:00
macvtap.c macvtap: fix use after free for skb_array during release 2016-08-11 09:55:51 -07:00
Makefile
mdio.c
mii.c
netconsole.c
nlmon.c
ntb_netdev.c
rionet.c
sb1000.c
Space.c net: Fix coding style warnings and errors. 2016-05-19 11:48:27 -07:00
sungem_phy.c
tun.c tun: fix transmit timestamp support 2016-08-23 23:09:27 -07:00
veth.c
virtio_net.c virtio-net: Remove more stack DMA 2016-07-19 19:25:43 -07:00
vrf.c net: vrf: Add support for PREROUTING rules on vrf device 2016-07-05 11:50:05 -07:00
vxlan.c vxlan: fix duplicated and wrong error messages 2016-09-04 11:42:56 -07:00
xen-netfront.c