[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e5b126df-a311-49e5-bf6f-fe59dd083bb2@roeck-us.net>
Date: Thu, 24 Apr 2025 05:10:05 -0700
From: Guenter Roeck <linux@...ck-us.net>
To: Henry Martin <bsdhenrymartin@...il.com>, wim@...ux-watchdog.org
Cc: linux-watchdog@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v1] watchdog: lenovo_se30_wdt: Fix null-ptr-deref in
lenovo_se30_wdt_probe()
On 4/24/25 00:16, Henry Martin wrote:
> devm_ioremap() returns NULL on error. Currently, lenovo_se30_wdt_probe()
> does not check for this case, which results in a NULL pointer
> dereference.
>
> Add NULL check after devm_ioremap() to prevent this issue.
>
> Fixes: c284153a2c55 ("watchdog: lenovo_se30_wdt: Watchdog driver for Lenovo SE30 platform")
> Signed-off-by: Henry Martin <bsdhenrymartin@...il.com>
Reviewed-by: Guenter Roeck <linux@...ck-us.net>
> ---
> drivers/watchdog/lenovo_se30_wdt.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/watchdog/lenovo_se30_wdt.c b/drivers/watchdog/lenovo_se30_wdt.c
> index 024b842499b3..1c73bb7eeeee 100644
> --- a/drivers/watchdog/lenovo_se30_wdt.c
> +++ b/drivers/watchdog/lenovo_se30_wdt.c
> @@ -271,6 +271,8 @@ static int lenovo_se30_wdt_probe(struct platform_device *pdev)
> return -EBUSY;
>
> priv->shm_base_addr = devm_ioremap(dev, base_phys, SHM_WIN_SIZE);
> + if (!priv->shm_base_addr)
> + return -ENOMEM;
>
> priv->wdt_cfg.mod = WDT_MODULE;
> priv->wdt_cfg.idx = WDT_CFG_INDEX;
Powered by blists - more mailing lists