tick/broadcast: Move per CPU pointer access into the atomic section
- 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.105, 6.6.46, 6.10.5
- 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
- Exploitation: none
- Automatable: no
- Technical impact: partial
Summary
In the Linux kernel, the following vulnerability has been resolved: tick/broadcast: Move per CPU pointer access into the atomic section The recent fix for making the take over of the broadcast timer more reliable retrieves a per CPU pointer in preemptible context. This went unnoticed as compilers hoist the access into the non-preemptible region where the pointer is actually used. But of course it's valid that the compiler keeps it at the place where the code puts it which rightfully triggers: BUG: using smp_processor_id() in preemptible [00000000] code: caller is hotplug_cpu__broadcast_tick_pull+0x1c/0xc0 Move it to the actual usage site which is in a non-preemptible region.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: no · Technical impact: partial
- Record last updated
Affected versions
- Linux Linux
Version range not reported
- Linux Linux
From 6.1.103 · fixed in 6.1.105; From 6.6.44 · fixed in 6.6.46; From 6.10.3 · fixed in 6.10.5
References 8
git.kernel.org
- stable/c/f54abf332a2bc0413cfa8bd6a8511f7aa99faea0
- stable/c/f91fb47ecacc178a83a77eeebd25cbaec18c01d6
- stable/c/668c6c4a7e9e9f081c06b70f30104fb7013437ed
- stable/c/541a900d245536d4809cb1aa322c3fcc2cdb58a6
- stable/c/7b3ec186ba93e333e9efe7254e7e31c1828e5d2d
- stable/c/b9d604933d5fd72dd37f24e1dc35f778297d745a
- stable/c/7dd12f85f150010ef7518201c63fa7e395f5c3e9
- stable/c/6881e75237a84093d0986f56223db3724619f26e