CVEvulnerability
CVE-2026-98544
- Status
- Received
- Published
- 2026-10-18
- Last modified
- 2026-10-21
- Assigner
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Description
In the Linux kernel, the following vulnerability has been resolved:
bna: prevent IOC timer rearm during teardown
bna: prevent IOC timer rearm during teardown
bnad_pci_remove() and the probe disable_ioceth path call
timer_delete_sync() for ioc_timer, sem_timer and hb_timer, but not for
iocpf_timer. bnad_iocpf_timeout() then takes bnad->bna_lock after
free_netdev() has freed the struct bnad.
Deleting iocpf_timer last does not fix this. sem_timer and
iocpf_timer rearm each other: bnad_iocpf_sem_timeout() can arm
iocpf_timer, and bnad_iocpf_timeout() arms sem_timer from
bfa_ioc_hw_sem_get() when the semaphore is busy.
timer_delete_sync() only waits out its own callback.
bnad_ioceth_disable() can time out and leave that callback live.
Shut all four IOC timers down with timer_shutdown_sync() on both
paths, so a later mod_timer() is ignored.
This issue was identified during our ongoing static-analysis research
while reviewing kernel code.
References
- https://git.kernel.org/stable/c/28e32ace754b57534ef0ca0fb99bcbea5b13ba2a git.kernel.org
- https://git.kernel.org/stable/c/4d97a141e85a034566c33c7ed854c8a3e8a268f1 git.kernel.org
- https://git.kernel.org/stable/c/77b1718e39e5c9f6956fb60807326af20baf889d git.kernel.org
- https://git.kernel.org/stable/c/e09d1c6729ee4a7812128902d9274ff565f958b8 git.kernel.org
- https://git.kernel.org/stable/c/f04cbdfac9b8284146995ab7ba0d054ad1d20ec6 git.kernel.org