Lucene search

K
cveLinuxCVE-2024-42319
HistoryAug 17, 2024 - 9:15 a.m.

CVE-2024-42319

2024-08-1709:15:11
Linux
web.nvd.nist.gov
27
linux kernel
mtk-cmdq
vulnerability
function calls

AI Score

6.4

Confidence

Low

EPSS

0

Percentile

9.5%

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

mailbox: mtk-cmdq: Move devm_mbox_controller_register() after devm_pm_runtime_enable()

When mtk-cmdq unbinds, a WARN_ON message with condition
pm_runtime_get_sync() < 0 occurs.

According to the call tracei below:
cmdq_mbox_shutdown
mbox_free_channel
mbox_controller_unregister
__devm_mbox_controller_unregister

The root cause can be deduced to be calling pm_runtime_get_sync() after
calling pm_runtime_disable() as observed below:

  1. CMDQ driver uses devm_mbox_controller_register() in cmdq_probe()
    to bind the cmdq device to the mbox_controller, so
    devm_mbox_controller_unregister() will automatically unregister
    the device bound to the mailbox controller when the device-managed
    resource is removed. That means devm_mbox_controller_unregister()
    and cmdq_mbox_shoutdown() will be called after cmdq_remove().
  2. CMDQ driver also uses devm_pm_runtime_enable() in cmdq_probe() after
    devm_mbox_controller_register(), so that devm_pm_runtime_disable()
    will be called after cmdq_remove(), but before
    devm_mbox_controller_unregister().

To fix this problem, cmdq_probe() needs to move
devm_mbox_controller_register() after devm_pm_runtime_enable() to make
devm_pm_runtime_disable() be called after
devm_mbox_controller_unregister().

Affected configurations

Vulners
Node
linuxlinux_kernelRange4.196.10.3
OR
linuxlinux_kernelRange6.11.0
VendorProductVersionCPE
linuxlinux_kernel*cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*

CNA Affected

[
  {
    "product": "Linux",
    "vendor": "Linux",
    "defaultStatus": "unaffected",
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "programFiles": [
      "drivers/mailbox/mtk-cmdq-mailbox.c"
    ],
    "versions": [
      {
        "version": "623a6143a845",
        "lessThan": "11fa625b45fa",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "623a6143a845",
        "lessThan": "a8bd68e4329f",
        "status": "affected",
        "versionType": "git"
      }
    ]
  },
  {
    "product": "Linux",
    "vendor": "Linux",
    "defaultStatus": "affected",
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "programFiles": [
      "drivers/mailbox/mtk-cmdq-mailbox.c"
    ],
    "versions": [
      {
        "version": "4.19",
        "status": "affected"
      },
      {
        "version": "0",
        "lessThan": "4.19",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "6.10.3",
        "lessThanOrEqual": "6.10.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "6.11",
        "lessThanOrEqual": "*",
        "status": "unaffected",
        "versionType": "original_commit_for_fix"
      }
    ]
  }
]

AI Score

6.4

Confidence

Low

EPSS

0

Percentile

9.5%