Files
linux/include
Sergei Miroshnichenko ebee2e2f30 can: dev: fix deadlock reported after bus-off
commit 9abefcb1aa upstream.

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>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Willy Tarreau <w@1wt.eu>
2017-02-10 11:04:06 +01:00
..
2015-09-13 09:07:59 -07:00
2014-10-09 12:18:42 -07:00
2017-02-10 11:03:52 +01:00
2017-02-06 09:04:07 +01:00
2013-04-30 17:04:09 -07:00