lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20231207161037.GA111411@google.com>
Date:   Thu, 7 Dec 2023 16:10:37 +0000
From:   Lee Jones <lee@...nel.org>
To:     Kunwu Chan <chentao@...inos.cn>
Cc:     jpanis@...libre.com, kunwu.chan@...mail.com,
        linux-kernel@...r.kernel.org
Subject: Re: [PATCH] mfd: tps6594: Add null pointer check to
 tps6594_device_init

On Tue, 05 Dec 2023, Kunwu Chan wrote:

> devm_kasprintf() returns a pointer to dynamically allocated memory
> which can be NULL upon failure.
> 
> Fixes: 325bec7157b3 ("mfd: tps6594: Add driver for TI TPS6594 PMIC")
> Signed-off-by: Kunwu Chan <chentao@...inos.cn>
> ---
>  drivers/mfd/tps6594-core.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/mfd/tps6594-core.c b/drivers/mfd/tps6594-core.c
> index 0fb9c5cf213a..6403c1063de9 100644
> --- a/drivers/mfd/tps6594-core.c
> +++ b/drivers/mfd/tps6594-core.c
> @@ -433,6 +433,9 @@ int tps6594_device_init(struct tps6594 *tps, bool enable_crc)
>  	tps6594_irq_chip.name = devm_kasprintf(dev, GFP_KERNEL, "%s-%ld-0x%02x",
>  					       dev->driver->name, tps->chip_id, tps->reg);
>  
> +	if (!tps6594_irq_chip.name)
> +		return dev_err_probe(dev, -ENOMEM, "Failed to allocate memory\n");
> +

The check is fine, but the use of dev_err_probe() is not.

Simply:

	return -ENOMEM;

>  	ret = devm_regmap_add_irq_chip(dev, tps->regmap, tps->irq, IRQF_SHARED | IRQF_ONESHOT,
>  				       0, &tps6594_irq_chip, &tps->irq_data);
>  	if (ret)
> -- 
> 2.34.1
> 

-- 
Lee Jones [李琼斯]

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ