CVE-2026-64373 PUBLISHED

cpufreq: Fix hotplug-suspend race during reboot

Assigner: Linux
Reserved: 19.07.2026 Published: 25.07.2026 Updated: 25.07.2026

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

cpufreq: Fix hotplug-suspend race during reboot

During system reboot, cpufreq_suspend() is called via the kernel_restart() -> device_shutdown() path. Unlike the normal system suspend path, the reboot path does not call freeze_processes(), so userspace processes and kernel threads remain active.

This allows CPU hotplug operations to run concurrently with cpufreq_suspend(). The original code has no synchronization with CPU hotplug, leading to a race condition where governor_data can be freed by the hotplug path while cpufreq_suspend() is still accessing it, resulting in a null pointer dereference:

Unable to handle kernel NULL pointer dereference Call Trace: do_kernel_fault+0x28/0x3c cpufreq_suspend+0xdc/0x160 device_shutdown+0x18/0x200 kernel_restart+0x40/0x80 arm64_sys_reboot+0x1b0/0x200

Fix this by adding cpus_read_lock()/cpus_read_unlock() to cpufreq_suspend() to block CPU hotplug operations while suspend is in progress.

[ rjw: Changelog edits ]

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from 65650b35133ff20f0c9ef0abd5c3c66dbce3ae57 to 6d5dd354c37abaf4d60400c55c71f23ba2b33639 (excl.)
  • affected from 65650b35133ff20f0c9ef0abd5c3c66dbce3ae57 to 9103078c7b3091a2fbb52af176f95982ee7dd7f8 (excl.)
  • affected from 65650b35133ff20f0c9ef0abd5c3c66dbce3ae57 to cd4524ff6567fa4458a5bec4b017105e671d393e (excl.)
  • affected from 65650b35133ff20f0c9ef0abd5c3c66dbce3ae57 to 73255d702c7560185fd5951aadcf7eb057c2f453 (excl.)
  • affected from 65650b35133ff20f0c9ef0abd5c3c66dbce3ae57 to a0ef2fc89d28ca62923376c4b8ffaa57136a36be (excl.)
  • affected from 65650b35133ff20f0c9ef0abd5c3c66dbce3ae57 to 6e175c00c62dca3d91b987015808b5d52e8db2b4 (excl.)
  • affected from 65650b35133ff20f0c9ef0abd5c3c66dbce3ae57 to a0106b41f9a724868d390b8b3b4ea5ca0e04ea53 (excl.)
  • affected from 65650b35133ff20f0c9ef0abd5c3c66dbce3ae57 to a9029dd55696c651ee46912afa2a166fa456bb3e (excl.)
  • Version 8bfa06ea6e81bf08d2132d7e70c2b5313b34caf8 is affected
  • Version 7ccf3b8b7a12dc9da158c2e699c36d04b2496944 is affected
  • Version 5f466713989250938624afa79dc33bae20920700 is affected
  • Version 89ab39da1452d272007acc5912d4008047b86706 is affected
  • Version cb4b4601f910c78d2b49f637a12ef98b41cb76a9 is affected
  • affected from 4.4.198 to 4.5 (excl.)
  • affected from 4.9.198 to 4.10 (excl.)
  • affected from 4.14.151 to 4.15 (excl.)
  • affected from 4.19.81 to 4.20 (excl.)
  • affected from 5.3.8 to 5.4 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 5.4 is affected
  • unaffected from 0 to 5.4 (excl.)
  • unaffected from 5.10.261 to 5.10.* (incl.)
  • unaffected from 5.15.212 to 5.15.* (incl.)
  • unaffected from 6.1.178 to 6.1.* (incl.)
  • unaffected from 6.6.145 to 6.6.* (incl.)
  • unaffected from 6.12.96 to 6.12.* (incl.)
  • unaffected from 6.18.39 to 6.18.* (incl.)
  • unaffected from 7.1.4 to 7.1.* (incl.)
  • unaffected from 7.2-rc1 to * (incl.)

References