GHSA-VRRH-VFW6-8F53
Vulnerability from github – Published: 2026-09-17 18:31 – Updated: 2026-09-17 18:31In the Linux kernel, the following vulnerability has been resolved:
mailbox: qcom-cpucp: fix PREEMPT_RT self-deadlock in IRQ handler
qcom_cpucp_mbox_irq_fn() calls mbox_chan_received_data() while holding chan->lock. Under PREEMPT_RT, spin_lock_irqsave() is converted to an rt_spinlock (rtmutex-based), which tracks ownership and can sleep.
The callback chain triggered by mbox_chan_received_data() eventually reaches mailbox_clear_channel() -> mbox_send_message() -> add_to_rbuf(), which attempts to re-acquire the same chan->lock. Since rtmutex detects the re-entrant lock attempt by the same owner, the thread blocks waiting for a lock it already holds, causing a permanent deadlock.
This deadlock manifests as 'irq/N-apss_cpucp_mbox' stuck in D state with the following call trace: rt_spin_lock -> mbox_send_message -> mailbox_clear_channel -> scmi_rx_callback -> mbox_chan_received_data [<- held chan->lock here]
Fix by saving chan->cl locally and clearing the HW interrupt register inside the lock, then invoking mbox_chan_received_data() after releasing the lock. This preserves the mutual exclusion for chan->cl access while avoiding the lock re-entrancy that causes the PREEMPT_RT deadlock.
{
"affected": [],
"aliases": [
"CVE-2026-90193"
],
"database_specific": {
"cwe_ids": [],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2026-09-17T17:17:14Z",
"severity": null
},
"details": "In the Linux kernel, the following vulnerability has been resolved:\n\nmailbox: qcom-cpucp: fix PREEMPT_RT self-deadlock in IRQ handler\n\nqcom_cpucp_mbox_irq_fn() calls mbox_chan_received_data() while holding\nchan-\u003elock. Under PREEMPT_RT, spin_lock_irqsave() is converted to an\nrt_spinlock (rtmutex-based), which tracks ownership and can sleep.\n\nThe callback chain triggered by mbox_chan_received_data() eventually\nreaches mailbox_clear_channel() -\u003e mbox_send_message() -\u003e add_to_rbuf(),\nwhich attempts to re-acquire the same chan-\u003elock. Since rtmutex detects\nthe re-entrant lock attempt by the same owner, the thread blocks waiting\nfor a lock it already holds, causing a permanent deadlock.\n\nThis deadlock manifests as \u0027irq/N-apss_cpucp_mbox\u0027 stuck in D state\nwith the following call trace:\n rt_spin_lock -\u003e mbox_send_message -\u003e mailbox_clear_channel -\u003e\n scmi_rx_callback -\u003e mbox_chan_received_data [\u003c- held chan-\u003elock here]\n\nFix by saving chan-\u003ecl locally and clearing the HW interrupt register\ninside the lock, then invoking mbox_chan_received_data() after releasing\nthe lock. This preserves the mutual exclusion for chan-\u003ecl access while\navoiding the lock re-entrancy that causes the PREEMPT_RT deadlock.",
"id": "GHSA-vrrh-vfw6-8f53",
"modified": "2026-09-17T18:31:55Z",
"published": "2026-09-17T18:31:54Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-90193"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/3690aaa6d18f6775c3e7932fb8af8c5bf6a6b69c"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/8b8de6400c86937ed57d680d06d716e167b381de"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/aa482273f32117c3adeba9b1cc945e0b5d33722d"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/e40b3edeaf25cd09e9c88edb1ef99373ca37593b"
}
],
"schema_version": "1.4.0",
"severity": []
}
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
The approach is described in our paper Mapping CVEs to MITRE ATT&CK Techniques: A Curated Gold-Set Classifier and the Limits of LLM-Assisted Label Expansion.
Browse all ATT&CK techniques and the vulnerabilities related to each.
Related by attack behaviour
Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.