2020-02-26 18:59:52

by Colin King

[permalink] [raw]
Subject: [PATCH][next] dmaengine: ti: edma: fix null dereference because of a typo in pointer name

From: Colin Ian King <[email protected]>

Currently there is a dereference of the null pointer m_ddev. This appears
to be a typo on the pointer, I believe s_ddev should be used instead.
Fix this by using the correct pointer.

Addresses-Coverity: ("Explicit null dereferenced")
Fixes: eb0249d50153 ("dmaengine: ti: edma: Support for interleaved mem to mem transfer")
Signed-off-by: Colin Ian King <[email protected]>
---
drivers/dma/ti/edma.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/dma/ti/edma.c b/drivers/dma/ti/edma.c
index 2b1fdd438e7f..c4a5c170c1f9 100644
--- a/drivers/dma/ti/edma.c
+++ b/drivers/dma/ti/edma.c
@@ -1992,7 +1992,7 @@ static void edma_dma_init(struct edma_cc *ecc, bool legacy_mode)
"Legacy memcpy is enabled, things might not work\n");

dma_cap_set(DMA_MEMCPY, s_ddev->cap_mask);
- dma_cap_set(DMA_INTERLEAVE, m_ddev->cap_mask);
+ dma_cap_set(DMA_INTERLEAVE, s_ddev->cap_mask);
s_ddev->device_prep_dma_memcpy = edma_prep_dma_memcpy;
s_ddev->device_prep_interleaved_dma = edma_prep_dma_interleaved;
s_ddev->directions = BIT(DMA_MEM_TO_MEM);
--
2.25.0


2020-02-27 07:33:53

by Peter Ujfalusi

[permalink] [raw]
Subject: Re: [PATCH][next] dmaengine: ti: edma: fix null dereference because of a typo in pointer name

Colin,

On 26/02/2020 20.59, Colin King wrote:
> From: Colin Ian King <[email protected]>
>
> Currently there is a dereference of the null pointer m_ddev. This appears
> to be a typo on the pointer, I believe s_ddev should be used instead.
> Fix this by using the correct pointer.

Thank you for catching it!
This is a mostly unused case to keep supporting the legacy EDMA binding
which should be gone by now for some time, but there might be boards out
there still booting in that way...

I have copied the dma_cap_set() line from the testable code path.

Acked-by: Peter Ujfalusi <[email protected]>

> Addresses-Coverity: ("Explicit null dereferenced")
> Fixes: eb0249d50153 ("dmaengine: ti: edma: Support for interleaved mem to mem transfer")
> Signed-off-by: Colin Ian King <[email protected]>
> ---
> drivers/dma/ti/edma.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/dma/ti/edma.c b/drivers/dma/ti/edma.c
> index 2b1fdd438e7f..c4a5c170c1f9 100644
> --- a/drivers/dma/ti/edma.c
> +++ b/drivers/dma/ti/edma.c
> @@ -1992,7 +1992,7 @@ static void edma_dma_init(struct edma_cc *ecc, bool legacy_mode)
> "Legacy memcpy is enabled, things might not work\n");
>
> dma_cap_set(DMA_MEMCPY, s_ddev->cap_mask);
> - dma_cap_set(DMA_INTERLEAVE, m_ddev->cap_mask);
> + dma_cap_set(DMA_INTERLEAVE, s_ddev->cap_mask);
> s_ddev->device_prep_dma_memcpy = edma_prep_dma_memcpy;
> s_ddev->device_prep_interleaved_dma = edma_prep_dma_interleaved;
> s_ddev->directions = BIT(DMA_MEM_TO_MEM);
>

- Péter

Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki

2020-03-02 10:11:01

by Vinod Koul

[permalink] [raw]
Subject: Re: [PATCH][next] dmaengine: ti: edma: fix null dereference because of a typo in pointer name

On 26-02-20, 18:59, Colin King wrote:
> From: Colin Ian King <[email protected]>
>
> Currently there is a dereference of the null pointer m_ddev. This appears
> to be a typo on the pointer, I believe s_ddev should be used instead.
> Fix this by using the correct pointer.

Applied, thanks

--
~Vinod