lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <2025022637-CVE-2022-49320-c76e@gregkh>
Date: Wed, 26 Feb 2025 03:09:54 +0100
From: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
To: linux-cve-announce@...r.kernel.org
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Subject: CVE-2022-49320: dmaengine: zynqmp_dma: In struct zynqmp_dma_chan fix desc_size data type

Description
===========

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.

The Linux kernel CVE team has assigned CVE-2022-49320 to this issue.


Affected and fixed versions
===========================

	Fixed in 5.4.198 with commit 83960276ffc9bf5570d4106490346b61e61be5f3
	Fixed in 5.10.122 with commit 95a0ba85c1b51b36e909841c02d205cd223ab753
	Fixed in 5.15.47 with commit 7b5488f4721fed6e121e661e165bab06ae2f8675
	Fixed in 5.17.15 with commit 4838969e4d95d2bd2995d1605b20d3144fcb3e74
	Fixed in 5.18.4 with commit 90aefae2e3a770a6909d339f5d8a988c0b0ceaf0
	Fixed in 5.19 with commit f9a9f43a62a04ec3183fb0da9226c7706eed0115

Please see https://www.kernel.org for a full list of currently supported
kernel versions by the kernel community.

Unaffected versions might change over time as fixes are backported to
older supported kernel versions.  The official CVE entry at
	https://cve.org/CVERecord/?id=CVE-2022-49320
will be updated if fixes are backported, please check that for the most
up to date information about this issue.


Affected files
==============

The file(s) affected by this issue are:
	drivers/dma/xilinx/zynqmp_dma.c


Mitigation
==========

The Linux kernel CVE team recommends that you update to the latest
stable kernel version for this, and many other bugfixes.  Individual
changes are never tested alone, but rather are part of a larger kernel
release.  Cherry-picking individual commits is not recommended or
supported by the Linux kernel community at all.  If however, updating to
the latest release is impossible, the individual changes to resolve this
issue can be found at these commits:
	https://git.kernel.org/stable/c/83960276ffc9bf5570d4106490346b61e61be5f3
	https://git.kernel.org/stable/c/95a0ba85c1b51b36e909841c02d205cd223ab753
	https://git.kernel.org/stable/c/7b5488f4721fed6e121e661e165bab06ae2f8675
	https://git.kernel.org/stable/c/4838969e4d95d2bd2995d1605b20d3144fcb3e74
	https://git.kernel.org/stable/c/90aefae2e3a770a6909d339f5d8a988c0b0ceaf0
	https://git.kernel.org/stable/c/f9a9f43a62a04ec3183fb0da9226c7706eed0115

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ