blk-mq: set RQF_USE_SCHED when the operation is known
- 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.18.56, 7.2.10
- 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: blk-mq: set RQF_USE_SCHED when the operation is known The cached requests are allocated for one operation but can be handed out for another. A passthrough command has RQF_USE_SCHED cleared, so using those flags for a subsequent read/write bio will insert it into the scheduler without ->prepare_request() and frees it without ->finish_request(). For kyber, this leaks the domain token acquired at dispatch and stalls the queue. Don't set RQF_USE_SCHED based on the first operation the batch happened to be allocated for. Instead, set it after the request is claimed by an operation. Introduce a helper function, blk_mq_rq_late_init() for this, and absorb blk_mq_rq_time_init() since the two run together.
Timeline
- CVE published
- Record last updated
Affected versions
- Linux Linux
From 4b6a5d9cea911424e84107df8c4eb8317938d2cd · fixed in 790730e4d95de8356a573d4b4864486bba731863; From 4b6a5d9cea911424e84107df8c4eb8317938d2cd · fixed in 2c47ebc27fa72078e26177cd458cdaf3006a9685; From 4b6a5d9cea911424e84107df8c4eb8317938d2cd · fixed in ab6c756f28c741d704a7c3e04814bfc3adf6f818
- Linux Linux
6.1
- KernelLinux
From 6.1.0 · fixed in 6.18.56; From 6.19.0 · fixed in 7.2.10