CVE-2024-47143

Source
https://cve.org/CVERecord?id=CVE-2024-47143
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2024-47143.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2024-47143
Downstream
Related
Published
2025-01-11T12:25:13.561Z
Modified
2026-03-20T12:38:00.231033Z
Severity
  • 5.5 (Medium) CVSS_V3 - CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H CVSS Calculator
Summary
dma-debug: fix a possible deadlock on radix_lock
Details

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

dma-debug: fix a possible deadlock on radix_lock

radixlock() shouldn't be held while holding dmahashentry[idx].lock otherwise, there's a possible deadlock scenario when dma debug API is called holding rqlock():

CPU0 CPU1 CPU2 dmafreeattrs() checkunmap() adddma_entry() _schedule() //out (A) rqlock() gethashbucket() (A) dmaentryhash checksync() (A) radixlock() (W) dmaentryhash dmaentryfree() (W) radixlock() // CPU2's one (W) rqlock()

CPU1 situation can happen when it extending radix tree and it tries to wake up kswapd via wakeallkswapd().

CPU2 situation can happen while perfeventtaskschedout() (i.e. dma sync operation is called while deleting perf_event using etm and etr tmc which are Arm Coresight hwtracing driver backends).

To remove this possible situation, call dmaentryfree() after puthashbucket() in check_unmap().

Database specific
{
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/47xxx/CVE-2024-47143.json",
    "cna_assigner": "Linux"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
0abdd7a81b7e3fd781d7fabcca49501852bba17e
Fixed
3ccce34a5c3f5c9541108a451657ade621524b32
Fixed
efe1b9bbf356357fdff0399af361133d6e3ba18e
Fixed
8c1b4fea8d62285f5e1a8194889b39661608bd8a
Fixed
c212d91070beca0d03fef7bf988baf4ff4b3eee4
Fixed
f2b95248a16c5186d1c658fc0aeb2f3bd95e5259
Fixed
7543c3e3b9b88212fcd0aaf5cab5588797bdc7de

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2024-47143.json"