Re: [PATCH] ata: pata_pxa: Add missing check for devm_ioremap

From: Sergey Shtylyov
Date: Thu Feb 09 2023 - 04:54:46 EST


On 2/9/23 12:28 PM, Jiasheng Jiang wrote:

> Add the check for the return value of the devm_ioremap in order to avoid
> NULL pointer dereference.
>
> Fixes: 2dc6c6f15da9 ("[ARM] pata_pxa: DMA-capable PATA driver")
> Signed-off-by: Jiasheng Jiang <jiasheng@xxxxxxxxxxx>
> ---
> drivers/ata/pata_pxa.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/ata/pata_pxa.c b/drivers/ata/pata_pxa.c
> index 985f42c4fd70..a20bb0824573 100644
> --- a/drivers/ata/pata_pxa.c
> +++ b/drivers/ata/pata_pxa.c
> @@ -227,6 +227,8 @@ static int pxa_ata_probe(struct platform_device *pdev)
> resource_size(ctl_res));
> ap->ioaddr.bmdma_addr = devm_ioremap(&pdev->dev, dma_res->start,
> resource_size(dma_res));
> + if (!ap->ioaddr.cmd_addr || !ap->ioaddr.ctl_addr || !ap->ioaddr.bmdma_addr)
> + return -ENOMEM;

Such patch has been postyed already but the driver is more broken than just
ths check missing, see:

https://lore.kernel.org/all/20220612073222.18974-1-liqiong@xxxxxxxxxxxx/

MBR, Sergey