RDMA/efa: Keep admin queues alive while IRQ is registered
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 6.1.189, 6.6.158, 6.12.112, 6.18.54, 7.2.8
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
Summary
In the Linux kernel, the following vulnerability has been resolved: RDMA/efa: Keep admin queues alive while IRQ is registered The management IRQ handler accesses both the admin completion queue and the async event queue. The driver registered the IRQ before constructing these queues and destroyed them before freeing the IRQ, so the handler's lifetime was not contained by the resources it accesses. Initialize the queues with interrupts masked, request the IRQ, and then switch to interrupt mode. On removal, reset the device and free the IRQ before destroying the queues. Also reset the device before destroying the queues if IRQ registration fails, because the device already has their DMA addresses.
Timeline
- CVE published
- Record last updated
Affected versions
- Linux Linux
From b7f5e880f3774ff1934ce272e1c3b673a3a9c414 · fixed in 0a8a105978e5ace0d885964317c5aed8ab4c0a0c; From b7f5e880f3774ff1934ce272e1c3b673a3a9c414 · fixed in 00f7df59543cce445cfd2f109ace88c17d8aef4d; From b7f5e880f3774ff1934ce272e1c3b673a3a9c414 · fixed in bc7e64bad96c23fb343f47689670d0037f1a65e7; From b7f5e880f3774ff1934ce272e1c3b673a3a9c414 · fixed in d2a1c0bf4139c17b8d7668322b78c28d8c5b2dd0; From b7f5e880f3774ff1934ce272e1c3b673a3a9c414 · fixed in cf5520d1c931a70ccce0a1a247113bcec47a42be; From b7f5e880f3774ff1934ce272e1c3b673a3a9c414 · fixed in e08aca85c02ff290f785f07acae758f0daf5f49e
- Linux Linux
5.2
- KernelLinux
From 5.2.0 · fixed in 6.1.189; From 6.2.0 · fixed in 6.6.158; From 6.7.0 · fixed in 6.12.112; From 6.13.0 · fixed in 6.18.54; From 6.19.0 · fixed in 7.2.8