In the Linux kernel, the following vulnerability has been resolved:
can: mcp251x: fix resume from sleep before interface was brought up
Since 8ce8c0abcba3 the driver queues work via priv->restartwork when resuming after suspend, even when the interface was not previously enabled. This causes a null dereference error as the workqueue is only allocated and initialized in mcp251xopen().
To fix this we move the workqueue init to mcp251xcanprobe() as there is no reason to do it later and repeat it whenever mcp251x_open() is called.
[mkl: fix error handling in mcp251x_stop()]