CVE-2026-93150
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
cgroup/cpuset: Make nr_deadline_tasks an atomic_t
The nr_deadline_tasks variable in the cpuset structure was introduced by commit 6c24849f5515 ("sched/cpuset: Keep track of SCHED_DEADLINE task in cpusets"). It is reported by sashiko [1] that nr_deadline_tasks can currently be modified by inc_dl_tasks_cs() under rq->lock and by cpuset_attach() under cpuset_mutex. So if both updates happen simultaneously, the nr_deadline_tasks variable can be corrupted leading to incorrect operations down the road.
Fix that by changing its type to atomic_t so that nr_deadline_tasks are always atomically updated. This fix patch is a low hanging fruit. It can handle some of the races between a concurrent sched_setscheduler() and cpuset_can_attach()/cpuset_attach() calls, but not all of them like the other issue raised by sashiko [2]. This will be handled hopefully in a future follow up patch.
[1] https://sashiko.dev/#/patchset/20260626181923.133658-1-longman%40redhat.com [2] https://sashiko.dev/#/patchset/20260630033344.352702-1-longman%40redhat.com
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 6c24849f5515e4966d94fa5279bdff4acf2e9489 < e422b32e6a57269ca8164c60674a78bee85cf5fb | affected |
| Linux | Linux | 6c24849f5515e4966d94fa5279bdff4acf2e9489 < e5965ae3f7c918151b87e5c925b7978afbeaf638 | affected |
| Linux | Linux | 6c24849f5515e4966d94fa5279bdff4acf2e9489 < 78d9daf5e13ad1448b7dfebac949936710ec7565 | affected |
| Linux | Linux | 6c24849f5515e4966d94fa5279bdff4acf2e9489 < 95220e1f18f6321008f021abc7d6f581f64bcb82 | affected |
| Linux | Linux | 5ac05ce5684315d0e71194a63febaf33921c3268 | affected |
| Linux | Linux | 43d8cbfefa7c59bd3b5fe184535eca476d45304e | affected |
| Linux | Linux | d1b4262b78cc7638642833252ae92fc586854ffb | affected |
| Linux | Linux | 74fac5bb0d375d6b8f5e7997925063c509089c9c | affected |
| Linux | Linux | 5.10.193 < 5.11 | affected |
| Linux | Linux | 5.15.129 < 5.16 | affected |
| Linux | Linux | 6.1.50 < 6.2 | affected |
| Linux | Linux | 6.4.13 < 6.5 | affected |
| Linux | Linux | 6.5 | affected |
| Linux | Linux | 0 < 6.5 | unaffected |
| Linux | Linux | 6.12.110 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.52 <= 6.18.* | unaffected |
| Linux | Linux | 7.2.6 <= 7.2.* | unaffected |
| Linux | Linux | 7.3-rc1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/e422b32e6a57269ca8164c60674a78bee85cf5fb
- https://git.kernel.org/stable/c/e5965ae3f7c918151b87e5c925b7978afbeaf638
- https://git.kernel.org/stable/c/78d9daf5e13ad1448b7dfebac949936710ec7565
- https://git.kernel.org/stable/c/95220e1f18f6321008f021abc7d6f581f64bcb82
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.