Import Source
https://github.com/microsoft/AzureLinuxVulnerabilityData/blob/main/osv/AZL-97302.json
JSON Data
https://api.osv.dev/v1/vulns/AZL-97302
Upstream
Published
2026-08-22T16:16:31Z
Modified
2026-08-29T05:27:27Z
Summary
CVE-2026-74594 affecting package kernel 6.6.150.1-1
Details

In the Linux kernel, the following vulnerability has been resolved:

sched/psi: Shut down rtpolltimer in psicgroup_free()

psischedulertpollwork() is called locklessly from the scheduler hotpath and can race psitriggerdestroy() taking down the last rtpoll trigger under rtpolltrigger_lock:

psischedulertpollwork() psitrigger_destroy()

rcureadlock(); task = rcudereference(rtpolltask); rcuassignpointer(rtpolltask, NULL); timerdelete(&rtpolltimer); modtimer(&rtpolltimer, ...); rcureadunlock(); synchronizercu(); kthreadstop(taskto_destroy);

The group can then be freed with the re-armed timer still pending, and polltimerfn() runs on freed memory.

461daba06bdc ("psi: eliminate kthreadworker from psi trigger scheduling mechanism") deleted the timer synchronously after the synchronizercu(), which prevented this but raced trigger creation instead: the deletion could cancel the timer that a new trigger set armed during the grace period and, as creation also reinitialized the timer at the time, corrupt it. 8f91efd870ea ("psi: Fix race between psitriggercreate/destroy") moved the initialization into group_init() and the deletion into the locked section, trading the creation races for the window above.

Neither placement in the destruction path works. A pending timer firing while the group is alive is harmless though. polltimerfn() just wakes the rtpoll waitqueue and doesn't re-arm itself. Bind the timer to the group's lifetime instead and shut it down in psicgroupfree(). Nothing can arm it by then. timershutdownsync() because the timer is never armed again.

References

Affected packages

Azure Linux:3 / kernel

Package

Name
kernel
Purl
pkg:rpm/azure-linux/kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Last affected
6.6.150.1-1

Database specific

source
"https://github.com/microsoft/AzureLinuxVulnerabilityData/blob/main/osv/AZL-97302.json"