Skip to content
Heist/ feed
Back to feed
UnratedFix available

PM / devfreq: Synchronize devfreq_monitor_[start/stop]

Type: advisorySources: OSV

In the Linux kernel, the following vulnerability has been resolved: PM / devfreq: Synchronize devfreq_monitor_[start/stop] There is a chance if a frequent switch of the governor done in a loop result in timer list corruption where timer cancel being done from two place one from cancel_delayed_work_sync() and followed by expire_timers() can be seen from the traces[1]. while true do echo "simple_ondemand" > /sys/class/devfreq/1d84000.ufshc/governor echo "performance" > /sys/class/devfreq/1d84000.ufshc/governor done It looks to be issue with devfreq driver where device_monitor_[start/stop] need to synchronized so that delayed work should get corrupted while it is either being queued or running or being cancelled. Let's use polling flag and devfreq lock to synchronize the queueing the timer instance twice and work data being corrupted. [1] ... .. -0 [003] 9436.209662: timer_cancel timer=0xffffff80444f0428 -0 [003] 9436.209664: timer_expire_entry timer=0xffffff80444f0428 now=0x10022da1c function=__typeid__ZTSFvP10timer_listE_global_addr baseclk=0x10022da1c -0 [003] 9436.209718: timer_expire_exit timer=0xffffff80444f0428 kworker/u16:6-14217 [003] 9436.209863: timer_start timer=0xffffff80444f0428 function=__typeid__ZTSFvP10timer_listE_global_addr expires=0x10022da2b now=0x10022da1c flags=182452227 vendor.xxxyyy.ha-1593 [004] 9436.209888: timer_cancel timer=0xffffff80444f0428 vendor.xxxyyy.ha-1593 [004] 9436.216390: timer_init timer=0xffffff80444f0428 vendor.xxxyyy.ha-1593 [004] 9436

Products
Kernel
Affected versions
Not specified
Fixed versions
5.10.210, 5.15.149, 6.1.77, 6.6.16, 6.7.4
CVEs
CVE-2023-52635
Confirmed fixed CVEs
Not specified
Updated in this feed
2 Nov 2026, 20:30 UTC · Revision 1

Source evidence

PM / devfreq: Synchronize devfreq_monitor_[start/stop]

core-osv · Original source

Published 2 Apr 2024, 06:49 UTC

In the Linux kernel, the following vulnerability has been resolved: PM / devfreq: Synchronize devfreq_monitor_[start/stop] There is a chance if a frequent switch of the governor done in a loop result in timer list corruption where timer cancel being done from two place one from cancel_delayed_work_sync() and followed by expire_timers() can be seen from the traces[1]. while true do echo "simple_ondemand" > /sys/class/devfreq/1d84000.ufshc/governor echo "performance" > /sys/class/devfreq/1d84000.ufshc/governor done It looks to be issue with devfreq driver where device_monitor_[start/stop] need to synchronized so that delayed work should get corrupted while it is either being queued or running or being cancelled. Let's use polling flag and devfreq lock to synchronize the queueing the timer instance twice and work data being corrupted. [1] ... .. -0 [003] 9436.209662: timer_cancel timer=0xffffff80444f0428 -0 [003] 9436.209664: timer_expire_entry timer=0xffffff80444f0428 now=0x10022da1c function=__typeid__ZTSFvP10timer_listE_global_addr baseclk=0x10022da1c -0 [003] 9436.209718: timer_expire_exit timer=0xffffff80444f0428 kworker/u16:6-14217 [003] 9436.209863: timer_start timer=0xffffff80444f0428 function=__typeid__ZTSFvP10timer_listE_global_addr expires=0x10022da2b now=0x10022da1c flags=182452227 vendor.xxxyyy.ha-1593 [004] 9436.209888: timer_cancel timer=0xffffff80444f0428 vendor.xxxyyy.ha-1593 [004] 9436.216390: timer_init timer=0xffffff80444f0428 vendor.xxxyyy.ha-1593 [004] 9436

osv:CVE-2023-52635

Kernel

Fixed versions: 5.10.210, 5.15.149, 6.1.77, 6.6.16, 6.7.4

Complete source record
{
  "id": "dfb340100c66197067308a2b7642a6eea57edd77ed8a39652ad9e009743a5971",
  "url": "https://osv.dev/vulnerability/CVE-2023-52635",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "PM / devfreq: Synchronize devfreq_monitor_[start/stop]",
    "summary": "In the Linux kernel, the following vulnerability has been resolved: PM / devfreq: Synchronize devfreq_monitor_[start/stop] There is a chance if a frequent switch of the governor done in a loop result in timer list corruption where timer cancel being done from two place one from cancel_delayed_work_sync() and followed by expire_timers() can be seen from the traces[1]. while true do echo \"simple_ondemand\" > /sys/class/devfreq/1d84000.ufshc/governor echo \"performance\" > /sys/class/devfreq/1d84000.ufshc/governor done It looks to be issue with devfreq driver where device_monitor_[start/stop] need to synchronized so that delayed work should get corrupted while it is either being queued or running or being cancelled. Let's use polling flag and devfreq lock to synchronize the queueing the timer instance twice and work data being corrupted. [1] ... .. -0 [003] 9436.209662: timer_cancel timer=0xffffff80444f0428 -0 [003] 9436.209664: timer_expire_entry timer=0xffffff80444f0428 now=0x10022da1c function=__typeid__ZTSFvP10timer_listE_global_addr baseclk=0x10022da1c -0 [003] 9436.209718: timer_expire_exit timer=0xffffff80444f0428 kworker/u16:6-14217 [003] 9436.209863: timer_start timer=0xffffff80444f0428 function=__typeid__ZTSFvP10timer_listE_global_addr expires=0x10022da2b now=0x10022da1c flags=182452227 vendor.xxxyyy.ha-1593 [004] 9436.209888: timer_cancel timer=0xffffff80444f0428 vendor.xxxyyy.ha-1593 [004] 9436.216390: timer_init timer=0xffffff80444f0428 vendor.xxxyyy.ha-1593 [004] 9436",
    "evidence": "osv:CVE-2023-52635",
    "products": [
      {
        "name": {
          "value": "Kernel",
          "evidence": "/affected/1/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [
          {
            "value": "5.10.210",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "5.15.149",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.1.77",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.6.16",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.7.4",
            "evidence": "/affected/1/ranges"
          }
        ],
        "affected_versions": []
      }
    ],
    "severity": "unknown",
    "structured": {
      "id": "CVE-2023-52635",
      "aliases": [
        "CVE-2023-52635"
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "7e6fdd4bad033fa2d73716377b184fa975b0d985"
                },
                {
                  "fixed": "3399cc7013e761fee9d6eec795e9b31ab0cbe475"
                },
                {
                  "fixed": "099f6a9edbe30b142c1d97fe9a4748601d995675"
                },
                {
                  "fixed": "31569995fc65007b73a3fff605ec2b3401b435e9"
                },
                {
                  "fixed": "0aedb319ef3ed39e9e5a7b7726c8264ca627bbd9"
                },
                {
                  "fixed": "ae815e2fdc284ab31651d52460698bd89c0fce22"
                },
                {
                  "fixed": "aed5ed595960c6d301dcd4ed31aeaa7a8054c0c6"
                }
              ]
            }
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2023-52635.json"
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "3.8.0"
                },
                {
                  "fixed": "5.10.210"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "5.11.0"
                },
                {
                  "fixed": "5.15.149"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "5.16.0"
                },
                {
                  "fixed": "6.1.77"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.2.0"
                },
                {
                  "fixed": "6.6.16"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.7.0"
                },
                {
                  "fixed": "6.7.4"
                }
              ]
            }
          ],
          "package": {
            "name": "Kernel",
            "ecosystem": "Linux"
          },
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2023-52635.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:23.741660320Z",
      "provider": "osv",
      "references": [
        "https://git.kernel.org/stable/c/099f6a9edbe30b142c1d97fe9a4748601d995675",
        "https://git.kernel.org/stable/c/0aedb319ef3ed39e9e5a7b7726c8264ca627bbd9",
        "https://git.kernel.org/stable/c/31569995fc65007b73a3fff605ec2b3401b435e9",
        "https://git.kernel.org/stable/c/3399cc7013e761fee9d6eec795e9b31ab0cbe475",
        "https://git.kernel.org/stable/c/ae815e2fdc284ab31651d52460698bd89c0fce22",
        "https://git.kernel.org/stable/c/aed5ed595960c6d301dcd4ed31aeaa7a8054c0c6",
        "https://lists.debian.org/debian-lts-announce/2024/06/msg00017.html",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2023/52xxx/CVE-2023-52635.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2023-52635",
        "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
      ],
      "provider_metadata": {
        "cna_assigner": "Linux",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2023/52xxx/CVE-2023-52635.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2023-52635",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": null
  },
  "source_id": "core-osv",
  "document_id": 489875,
  "published_at": "2024-04-02T06:49:13.143+00:00"
}