CVE-2024-42319

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

State
Published
Severity
Not scored
Published
Aug 17, 2024
Updated
May 11, 2026
Reserved
Jul 30, 2024

Read the record on cve.org

Description

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().

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 623a6143a845bd485b00ba684f0ccef11835edab to before 1403991a40b94438a2acc749bf05c117abdb34f9Affected
  • 623a6143a845bd485b00ba684f0ccef11835edab to before d00df6700ad10974a7e20646956f4ff22cdbe0ecAffected
  • 623a6143a845bd485b00ba684f0ccef11835edab to before 11fa625b45faf0649118b9deaf2d31c86ac41911Affected
  • 623a6143a845bd485b00ba684f0ccef11835edab to before a8bd68e4329f9a0ad1b878733e0f80be6a971649Affected
LinuxLinux
  • 4.19Affected
  • before 4.19Not affected
  • 6.1.120 through 6.1.*Not affected
  • 6.6.64 through 6.6.*Not affected
  • 6.10.3 through 6.10.*Not affected
  • 6.11 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.