{"cve":"CVE-2023-54020","nvd":{"published":"2025-12-24T11:15:55.003","modified":"2026-06-17T06:46:33.090","status":"Deferred","description":"In the Linux kernel, the following vulnerability has been resolved:\n\ndmaengine: sf-pdma: pdma_desc memory leak fix\n\nCommit b2cc5c465c2c (\"dmaengine: sf-pdma: Add multithread support for a\nDMA channel\") changed sf_pdma_prep_dma_memcpy() to unconditionally\nallocate a new sf_pdma_desc each time it is called.\n\nThe driver previously recycled descs, by checking the in_use flag, only\nallocating additional descs if the existing one was in use. This logic\nwas removed in commit b2cc5c465c2c (\"dmaengine: sf-pdma: Add multithread\nsupport for a DMA channel\"), but sf_pdma_free_desc() was not changed to\nhandle the new behaviour.\n\nAs a result, each time sf_pdma_prep_dma_memcpy() is called, the previous\ndescriptor is leaked, over time leading to memory starvation:\n\n  unreferenced object 0xffffffe008447300 (size 192):\n  comm \"irq/39-mchp_dsc\", pid 343, jiffies 4294906910 (age 981.200s)\n  hex dump (first 32 bytes):\n    00 00 00 ff 00 00 00 00 b8 c1 00 00 00 00 00 00  ................\n    00 00 70 08 10 00 00 00 00 00 00 c0 00 00 00 00  ..p.............\n  backtrace:\n    [<00000000064a04f4>] kmemleak_alloc+0x1e/0x28\n    [<00000000018927a7>] kmem_cache_alloc+0x11e/0x178\n    [<000000002aea8d16>] sf_pdma_prep_dma_memcpy+0x40/0x112\n\nAdd the missing kfree() to sf_pdma_free_desc(), and remove the redundant\nin_use flag.","cvss_v4":null,"cvss_v3":null,"cwes":[],"references":["https://git.kernel.org/stable/c/03fece43fa109beba7cc9948c02f5e2d1205d607","https://git.kernel.org/stable/c/8bd5040bd43f2b5ba3c898b09a3197a0c7ace126","https://git.kernel.org/stable/c/ad222c9af25e3f074c180e389b3477dce42afc4f","https://git.kernel.org/stable/c/b02e07015a5ac7bbc029da931ae17914b8ae0339"],"products":[],"source":"nvd","synced_at":"2026-10-19T22:17:07.138532058+00:00"},"epss":{"cve":"CVE-2023-54020","score":0.00195,"percentile":0.09201,"date":"2026-10-31"},"kev":null,"osv":[],"attribution":["This product uses the NVD API but is not endorsed or certified by the NVD.","EPSS scores: FIRST Exploit Prediction Scoring System, https://www.first.org/epss","Known exploited vulnerabilities: CISA Known Exploited Vulnerabilities Catalog, https://www.cisa.gov/known-exploited-vulnerabilities-catalog","Package advisories: OSV (https://osv.dev), from the GitHub Advisory Database, PyPA, Go, RustSec and other ecosystem databases, under CC-BY 4.0 or CC0","CVE records: the CVE Program's CVE List (https://www.cve.org), under its terms of use (https://www.cve.org/Legal/TermsOfUse). CVE is a registered trademark of The MITRE Corporation; this product is not affiliated with the CVE Program."]}