lkml.org 
[lkml]   [2019]   [Mar]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] ata: dwc_460ex: Avoid potential NULL pointer dereference
From
Date
On 3/4/19 4:08 PM, Aditya Pakki wrote:
> dma_async_tx_descriptor can contain a NULL variable and using
> it in dmaengine_submit without checking can crash the process.
> This patch avoids such a scenario.
>
> Signed-off-by: Aditya Pakki <pakki001@umn.edu>
> ---
> drivers/ata/sata_dwc_460ex.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/ata/sata_dwc_460ex.c b/drivers/ata/sata_dwc_460ex.c
> index 6f142aa54f5f..44a0d7a1ef54 100644
> --- a/drivers/ata/sata_dwc_460ex.c
> +++ b/drivers/ata/sata_dwc_460ex.c
> @@ -1052,8 +1052,10 @@ static void sata_dwc_bmdma_start_by_tag(struct ata_queued_cmd *qc, u8 tag)
> SATA_DWC_DMACR_RXCHEN);
>
> /* Enable AHB DMA transfer on the specified channel */
> - dmaengine_submit(desc);
> - dma_async_issue_pending(hsdevp->chan);
> + if (desc) {
> + dmaengine_submit(desc);
> + dma_async_issue_pending(hsdevp->chan);
> + }
> }
> }

Hmm, if desc == NULL, is that an error condition?

--
Jens Axboe

\
 
 \ /
  Last update: 2019-03-24 17:29    [W:0.047 / U:65.860 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site