cveboard RSS feed

CVE-2026-23371

CVE.org · Published

Historical CVEsJSONAI instructions

Record status
Published
Identifier year (not publication year)
2026
Source publication
Source updated
Imported by cveboard
Source snapshot
cve_2026-10-24_midnight_baseline ·

Plain text

CNA source text (English)

sched/deadline: Fix missing ENQUEUE_REPLENISH during PI de-boosting

In the Linux kernel, the following vulnerability has been resolved: sched/deadline: Fix missing ENQUEUE_REPLENISH during PI de-boosting Running stress-ng --schedpolicy 0 on an RT kernel on a big machine might lead to the following WARNINGs (edited). sched: DL de-boosted task PID 22725: REPLENISH flag missing WARNING: CPU: 93 PID: 0 at kernel/sched/deadline.c:239 dequeue_task_dl+0x15c/0x1f8 ... (running_bw underflow) Call trace: dequeue_task_dl+0x15c/0x1f8 (P) dequeue_task+0x80/0x168 deactivate_task+0x24/0x50 push_dl_task+0x264/0x2e0 dl_task_timer+0x1b0/0x228 __hrtimer_run_queues+0x188/0x378 hrtimer_interrupt+0xfc/0x260 ... The problem is that when a SCHED_DEADLINE task (lock holder) is changed to a lower priority class via sched_setscheduler(), it may fail to properly inherit the parameters of potential DEADLINE donors if it didn't already inherit them in the past (shorter deadline than donor's at that time). This might lead to bandwidth accounting corruption, as enqueue_task_dl() won't recognize the lock holder as boosted. The scenario occurs when: 1. A DEADLINE task (donor) blocks on a PI mutex held by another DEADLINE task (holder), but the holder doesn't inherit parameters (e.g., it already has a shorter deadline) 2. sched_setscheduler() changes the holder from DEADLINE to a lower class while still holding the mutex 3. The holder should now inherit DEADLINE parameters from the donor and be enqueued with ENQUEUE_REPLENISH, but this doesn't happen Fix the issue by introducing __setscheduler_dl_pi(), which detects when a DEADLINE (proper or boosted) task gets setscheduled to a lower priority class. In case, the function makes the task inherit DEADLINE parameters of the donoer (pi_se) and sets ENQUEUE_REPLENISH flag to ensure proper bandwidth accounting during the next enqueue operation.

Scoped product and version facts

Fix information unknown; no fixed version is derived here. Missing information does not prove that no fix exists.

Exploitation unknown; this catalogue does not assess exploitation.

Linux

Vendor
Linux
Product
Linux
Platforms
Unknown
Default status
unaffected
Linux · Scoped product and version facts
Version (version)Status (status)Version scheme (versionType)Exclusive end (lessThan)Inclusive end (lessThanOrEqual)Status changes (at → status)
2279f540ea7d05f22d2f0c4224319330228586bcaffectedgitce6253fe718811cceb3a0ae0dbf0a5941dea3eb6UnavailableNone listed
2279f540ea7d05f22d2f0c4224319330228586bcaffectedgit65af3633caf195d397ec4c39f51ae7615bd5a627UnavailableNone listed
2279f540ea7d05f22d2f0c4224319330228586bcaffectedgit0638bf16b7a73a2fe63624bd0d16d9fd904805c3UnavailableNone listed
2279f540ea7d05f22d2f0c4224319330228586bcaffectedgitba1c22924ddcc280672a2a06a9ca99ee3a1b92c3UnavailableNone listed
2279f540ea7d05f22d2f0c4224319330228586bcaffectedgitd658686a1331db3bb108ca079d76deb3208ed949UnavailableNone listed
3cc3d77dc541181f97f1dc96d2977ef8359fd760affectedgitUnavailableUnavailableNone listed
d2b65976bf1ae9d0d9dd5770cd01695559438309affectedgitUnavailableUnavailableNone listed
4.19.257affectedsemver4.20UnavailableNone listed
5.4.212affectedsemver5.5UnavailableNone listed

Linux

Vendor
Linux
Product
Linux
Platforms
Unknown
Default status
affected
Linux · Scoped product and version facts
Version (version)Status (status)Version scheme (versionType)Exclusive end (lessThan)Inclusive end (lessThanOrEqual)Status changes (at → status)
5.10affectedUnavailableUnavailableUnavailableNone listed
0unaffectedsemver5.10UnavailableNone listed
6.6.160unaffectedsemverUnavailable6.6.*None listed
6.12.114unaffectedsemverUnavailable6.12.*None listed
6.18.34unaffectedsemverUnavailable6.18.*None listed
6.19.7unaffectedsemverUnavailable6.19.*None listed
7.0unaffectedoriginal_commit_for_fixUnavailable*None listed