In the Linux kernel, the following vulnerability has been resolved:
dmaengine: zynqmp_dma: In struct zynqmp_dma_chan fix desc_size data type
In zynqmp_dma_alloc/free_chan_resources functions there is a
potential overflow in the below expressions.
dma_alloc_coherent(chan->dev, (2 * chan->desc_size *
ZYNQMP_DMA_NUM_DESCS),
&chan->desc_pool_p, GFP_KERNEL);
dma_free_coherent(chan->dev,(2 * ZYNQMP_DMA_DESC_SIZE(chan) *
ZYNQMP_DMA_NUM_DESCS),
chan->desc_pool_v, chan->desc_pool_p);
The arguments desc_size and ZYNQMP_DMA_NUM_DESCS were 32 bit. Though
this overflow condition is not observed but it is a potential problem
in the case of 32-bit multiplication. Hence fix it by changing the
desc_size data type to size_t.
In addition to coverity fix it also reuse ZYNQMP_DMA_DESC_SIZE macro in
dma_alloc_coherent API argument.
Addresses-Coverity: Event overflow_before_widen.
References
Configurations
Configuration 1 (hide)
|
History
22 Sep 2025, 20:46
Type | Values Removed | Values Added |
---|---|---|
CWE | CWE-190 | |
CPE | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | |
CVSS |
v2 : v3 : |
v2 : unknown
v3 : 5.5 |
First Time |
Linux
Linux linux Kernel |
|
References | () https://git.kernel.org/stable/c/4838969e4d95d2bd2995d1605b20d3144fcb3e74 - Patch | |
References | () https://git.kernel.org/stable/c/7b5488f4721fed6e121e661e165bab06ae2f8675 - Patch | |
References | () https://git.kernel.org/stable/c/83960276ffc9bf5570d4106490346b61e61be5f3 - Patch | |
References | () https://git.kernel.org/stable/c/90aefae2e3a770a6909d339f5d8a988c0b0ceaf0 - Patch | |
References | () https://git.kernel.org/stable/c/95a0ba85c1b51b36e909841c02d205cd223ab753 - Patch | |
References | () https://git.kernel.org/stable/c/f9a9f43a62a04ec3183fb0da9226c7706eed0115 - Patch | |
Summary |
|
26 Feb 2025, 07:01
Type | Values Removed | Values Added |
---|---|---|
New CVE |
Information
Published : 2025-02-26 07:01
Updated : 2025-09-22 20:46
NVD link : CVE-2022-49320
Mitre link : CVE-2022-49320
CVE.ORG link : CVE-2022-49320
JSON object : View
Products Affected
linux
- linux_kernel
CWE
CWE-190
Integer Overflow or Wraparound