[PATCH] dmaengine: at_xdmac: avoid null_prt_deref in at_xdmac_prep_dma_memset
Chen Ridong
chenridong at huaweicloud.com
Wed Nov 13 19:05:04 PST 2024
On 2024/10/29 16:28, Chen Ridong wrote:
> From: Chen Ridong <chenridong at huawei.com>
>
> The at_xdmac_memset_create_desc may return NULL, which will lead to a
> null pointer dereference. For example, the len input is error, or the
> atchan->free_descs_list is empty and memory is exhausted. Therefore, add
> check to avoid this.
>
> Fixes: b206d9a23ac7 ("dmaengine: xdmac: Add memset support")
> Signed-off-by: Chen Ridong <chenridong at huawei.com>
> ---
> drivers/dma/at_xdmac.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/dma/at_xdmac.c b/drivers/dma/at_xdmac.c
> index 299396121e6d..e847ad66dc0b 100644
> --- a/drivers/dma/at_xdmac.c
> +++ b/drivers/dma/at_xdmac.c
> @@ -1363,6 +1363,8 @@ at_xdmac_prep_dma_memset(struct dma_chan *chan, dma_addr_t dest, int value,
> return NULL;
>
> desc = at_xdmac_memset_create_desc(chan, atchan, dest, len, value);
> + if (!desc)
> + return NULL;
> list_add_tail(&desc->desc_node, &desc->descs_list);
>
> desc->tx_dma_desc.cookie = -EBUSY;
Friendly ping.
More information about the linux-arm-kernel
mailing list