mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-09-04 20:19:47 +08:00
If it fails to get the devices's MAC address, octep_probe exits while
leaving the delayed work intr_poll_task queued. When the work later
runs, it's a use after free.
Move the cancelation of intr_poll_task from octep_remove into
octep_device_cleanup. This does not change anything in the octep_remove
flow, but octep_device_cleanup is called also in the octep_probe error
path, where the cancelation is needed.
Note that the cancelation of ctrl_mbox_task has to follow
intr_poll_task's, because the ctrl_mbox_task may be queued by
intr_poll_task.
Fixes:
|
||
|---|---|---|
| .. | ||
| Kconfig | ||
| Makefile | ||
| octep_cn9k_pf.c | ||
| octep_config.h | ||
| octep_ctrl_mbox.c | ||
| octep_ctrl_mbox.h | ||
| octep_ctrl_net.c | ||
| octep_ctrl_net.h | ||
| octep_ethtool.c | ||
| octep_main.c | ||
| octep_main.h | ||
| octep_regs_cn9k_pf.h | ||
| octep_rx.c | ||
| octep_rx.h | ||
| octep_tx.c | ||
| octep_tx.h | ||