{"id":"CVE-2024-47143","summary":"dma-debug: fix a possible deadlock on radix_lock","details":"In the Linux kernel, the following vulnerability has been resolved:\n\ndma-debug: fix a possible deadlock on radix_lock\n\nradix_lock() shouldn't be held while holding dma_hash_entry[idx].lock\notherwise, there's a possible deadlock scenario when\ndma debug API is called holding rq_lock():\n\nCPU0                   CPU1                       CPU2\ndma_free_attrs()\ncheck_unmap()          add_dma_entry()            __schedule() //out\n                                                  (A) rq_lock()\nget_hash_bucket()\n(A) dma_entry_hash\n                                                  check_sync()\n                       (A) radix_lock()           (W) dma_entry_hash\ndma_entry_free()\n(W) radix_lock()\n                       // CPU2's one\n                       (W) rq_lock()\n\nCPU1 situation can happen when it extending radix tree and\nit tries to wake up kswapd via wake_all_kswapd().\n\nCPU2 situation can happen while perf_event_task_sched_out()\n(i.e. dma sync operation is called while deleting perf_event using\n etm and etr tmc which are Arm Coresight hwtracing driver backends).\n\nTo remove this possible situation, call dma_entry_free() after\nput_hash_bucket() in check_unmap().","modified":"2026-04-02T12:19:49.821937Z","published":"2025-01-11T12:25:13.561Z","related":["MGASA-2025-0030","MGASA-2025-0032","SUSE-SU-2025:0289-1","SUSE-SU-2025:0428-1","SUSE-SU-2025:0499-1","SUSE-SU-2025:0557-1","SUSE-SU-2025:20165-1","SUSE-SU-2025:20166-1","SUSE-SU-2025:20248-1","SUSE-SU-2025:20249-1","USN-7379-2","USN-7380-1"],"database_specific":{"cna_assigner":"Linux","osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/47xxx/CVE-2024-47143.json"},"references":[{"type":"WEB","url":"https://git.kernel.org/stable/c/3ccce34a5c3f5c9541108a451657ade621524b32"},{"type":"WEB","url":"https://git.kernel.org/stable/c/7543c3e3b9b88212fcd0aaf5cab5588797bdc7de"},{"type":"WEB","url":"https://git.kernel.org/stable/c/8c1b4fea8d62285f5e1a8194889b39661608bd8a"},{"type":"WEB","url":"https://git.kernel.org/stable/c/c212d91070beca0d03fef7bf988baf4ff4b3eee4"},{"type":"WEB","url":"https://git.kernel.org/stable/c/efe1b9bbf356357fdff0399af361133d6e3ba18e"},{"type":"WEB","url":"https://git.kernel.org/stable/c/f2b95248a16c5186d1c658fc0aeb2f3bd95e5259"},{"type":"WEB","url":"https://lists.debian.org/debian-lts-announce/2025/03/msg00001.html"},{"type":"WEB","url":"https://lists.debian.org/debian-lts-announce/2025/03/msg00002.html"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/47xxx/CVE-2024-47143.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2024-47143"},{"type":"PACKAGE","url":"https://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/cve-osv-conversion/osv-output/CVE-2024-47143.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"}]}