Re: [PATCH v2] pci: pcie-rcar: fix a potential NULL pointer dereference

From: Lorenzo Pieralisi
Date: Fri Mar 29 2019 - 12:22:28 EST


On Fri, Mar 15, 2019 at 02:29:43AM -0500, Kangjie Lu wrote:
> In case __get_free_pages fails and returns NULL, the fix returns
> -ENOMEM and releases resources to avoid NULL pointer dereference.
>
> Signed-off-by: Kangjie Lu <kjlu@xxxxxxx>
> Reviewed-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
>
> ---
> V2 removes the error message.
> ---
> drivers/pci/controller/pcie-rcar.c | 4 ++++
> 1 file changed, 4 insertions(+)

Applied to pci/rcar for v5.2, thanks.

Lorenzo

> diff --git a/drivers/pci/controller/pcie-rcar.c b/drivers/pci/controller/pcie-rcar.c
> index c8febb009454..71e55995c058 100644
> --- a/drivers/pci/controller/pcie-rcar.c
> +++ b/drivers/pci/controller/pcie-rcar.c
> @@ -929,6 +929,10 @@ static int rcar_pcie_enable_msi(struct rcar_pcie *pcie)
>
> /* setup MSI data target */
> msi->pages = __get_free_pages(GFP_KERNEL, 0);
> + if (!msi->pages) {
> + err = -ENOMEM;
> + goto err;
> + }
> base = virt_to_phys((void *)msi->pages);
>
> rcar_pci_write_reg(pcie, base | MSIFE, PCIEMSIALR);
> --
> 2.17.1
>