CVE-2025-22014: soc: qcom: pdr: Fix the potential deadlock
In the Linux kernel, the following vulnerability has been resolved:
soc: qcom: pdr: Fix the potential deadlock
When some client process A call pdr_add_lookup() to add the look up for
the service and does schedule locator work, later a process B got a new
server packet indicating locator is up and call pdr_locator_new_server()
which eventually sets pdr->locator_init_complete to true which process A
sees and takes list lock and queries domain list but it will timeout due
to deadlock as the response will queued to the same qmi->wq and it is
ordered workqueue and process B is not able to complete new server
request work due to deadlock on list lock.
Fix it by removing the unnecessary list iteration as the list iteration
is already being done inside locator work, so avoid it here and just
call schedule_work() here.
Process A Process B
process_scheduled_works()
pdr_add_lookup() qmi_data_ready_work()
process_scheduled_works() pdr_locator_new_server()
pdr->locator_init_complete=true;
pdr_locator_work()
mutex_lock(&pdr->list_lock);
pdr_locate_service() mutex_lock(&pdr->list_lock);
pdr_get_domain_list()
pr_err("PDR: %s get domain list
txn wait failed: %d\n",
req->service_name,
ret);
Timeout error log due to deadlock:
"
PDR: tms/servreg get domain list txn wait failed: -110
PDR: service lookup for msm/adsp/sensor_pd:tms/servreg failed: -110
"
Thanks to Bjorn and Johan for letting me know that this commit also fixes
an audio regression when using the in-kernel pd-mapper as that makes it
easier to hit this race. [1]
Security readout for executives and security teams
Plain-English summary
This Linux kernel issue can deadlock Qualcomm PDR service discovery, causing service lookup timeouts and regressions such as audio problems on affected systems. It is an availability and reliability concern, not a confirmed data theft or remote compromise issue based on the provided sources.
Executive priority
Prioritize patching for Qualcomm-based Linux fleets where audio, sensors, or service discovery support business operations. Broad enterprise urgency is lower without exploitation evidence, but affected embedded or mobile-adjacent systems may see user-visible reliability impact.
Technical view
The race involves pdr_add_lookup(), pdr_locator_new_server(), an ordered QMI workqueue, and pdr->list_lock. One worker can block while waiting for a domain-list response queued behind another worker that is blocked on the same list lock. The fix removes unnecessary list iteration and schedules locator work instead.
Likely exposure
Exposure appears limited to Linux systems using the Qualcomm PDR driver path, especially platforms relying on in-kernel pd-mapper behavior. The source bundle lists affected Linux kernel versions and stable backport commits, but does not identify every distribution kernel package.
Exploitation context
No active exploitation is stated. KEV is false in the source bundle, and the provided references describe a kernel deadlock and regression fix rather than public exploitation. Treat this primarily as a stability and denial-of-service risk.
Researcher notes
The evidence supports a concurrency bug in the Qualcomm PDR subsystem fixed upstream and backported to stable kernels. The bundle gives no CVSS, CWE, exploitability analysis, or proof of external triggerability, so validation should focus on kernel provenance and affected hardware paths.
Mitigation direction
Update affected Linux kernels using vendor or distribution security updates.
Confirm the deployed kernel includes the relevant stable backport commit.
For Debian systems, review the referenced Debian LTS advisories.
Prioritize Qualcomm-based systems with PDR, pd-mapper, sensor, or audio service dependencies.
If no vendor update is available, monitor vendor guidance for supported backports.
Validation and detection
Inventory Linux kernel versions across Qualcomm-based systems.
Check whether the Qualcomm PDR driver path is present and used.
Review logs for PDR domain-list timeout messages like txn wait failed -110.
Verify vendor kernel changelogs reference CVE-2025-22014 or the stable commits.
Regression-test affected audio, sensor, and service-discovery workflows after patching.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2025-22014 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
0CVSS vectors
3Timeline events
1ADP providers
10Source links
Vulnerability timeline
Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.
CVE reservedCVE Program
The CVE ID was reserved by the assigning CNA.
CVE publishedCVE Program
The CVE record was published.
Apr 8, 2025, 08:18 UTC (UTC+00:00)
CVE updatedCVE Program
The CVE record metadata indicates this as the latest update time.