Re: [PATCH Resend] mfd: asic3: Fix potential null pointer dereference

From: Lee Jones
Date: Mon Jun 16 2014 - 13:24:01 EST


On Tue, 10 Jun 2014, Sachin Kamat wrote:

> We previously assumed 'mem_sdio' could be null but it is
> dereferenced in ioremap(). Add a check to avoid a potential
> null pointer dereference error.
>
> Signed-off-by: Sachin Kamat <sachin.kamat@xxxxxxxxxx>
> ---
> drivers/mfd/asic3.c | 12 +++++++-----
> 1 file changed, 7 insertions(+), 5 deletions(-)

Applied, thanks.

> diff --git a/drivers/mfd/asic3.c b/drivers/mfd/asic3.c
> index 9f6294f2a070..9fc4186d4132 100644
> --- a/drivers/mfd/asic3.c
> +++ b/drivers/mfd/asic3.c
> @@ -899,13 +899,15 @@ static int __init asic3_mfd_probe(struct platform_device *pdev,
> ds1wm_resources[0].end >>= asic->bus_shift;
>
> /* MMC */
> - asic->tmio_cnf = ioremap((ASIC3_SD_CONFIG_BASE >> asic->bus_shift) +
> + if (mem_sdio) {
> + asic->tmio_cnf = ioremap((ASIC3_SD_CONFIG_BASE >> asic->bus_shift) +
> mem_sdio->start,
> ASIC3_SD_CONFIG_SIZE >> asic->bus_shift);
> - if (!asic->tmio_cnf) {
> - ret = -ENOMEM;
> - dev_dbg(asic->dev, "Couldn't ioremap SD_CONFIG\n");
> - goto out;
> + if (!asic->tmio_cnf) {
> + ret = -ENOMEM;
> + dev_dbg(asic->dev, "Couldn't ioremap SD_CONFIG\n");
> + goto out;
> + }
> }
> asic3_mmc_resources[0].start >>= asic->bus_shift;
> asic3_mmc_resources[0].end >>= asic->bus_shift;

--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org â Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/