[PATCH v1] clk: bcm: Add NULL check in raspberrypi_clk_register()

Dave Stevenson dave.stevenson at raspberrypi.com
Tue Apr 1 11:02:41 PDT 2025


Hi Henry

Thanks for the patch.

On Tue, 1 Apr 2025 at 14:23, Henry Martin <bsdhenrymartin at gmail.com> wrote:
>
> devm_kasprintf() returns NULL when memory allocation fails. Currently,
> raspberrypi_clk_register() does not check for this case, which results
> in a NULL pointer dereference.
>
> Add NULL check after devm_kasprintf() to prevent this issue.
>
> Fixes: 7dad8a613185 ("clk: bcm: rpi: Give firmware clocks a name")

Nit: It was 93d2725affd6 ("clk: bcm: rpi: Discover the firmware
clocks") that introduced the devm_kasprintf. 7dad8a613185 only changed
the thing being printed.

> Signed-off-by: Henry Martin <bsdhenrymartin at gmail.com>

Reviewed-by: Dave Stevenson <dave.stevenson at raspberrypi.com>

> ---
>  drivers/clk/bcm/clk-raspberrypi.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/drivers/clk/bcm/clk-raspberrypi.c b/drivers/clk/bcm/clk-raspberrypi.c
> index 0e1fe3759530..720acc10f8aa 100644
> --- a/drivers/clk/bcm/clk-raspberrypi.c
> +++ b/drivers/clk/bcm/clk-raspberrypi.c
> @@ -286,6 +286,8 @@ static struct clk_hw *raspberrypi_clk_register(struct raspberrypi_clk *rpi,
>         init.name = devm_kasprintf(rpi->dev, GFP_KERNEL,
>                                    "fw-clk-%s",
>                                    rpi_firmware_clk_names[id]);
> +       if (!init.name)
> +               return ERR_PTR(-ENOMEM);
>         init.ops = &raspberrypi_firmware_clk_ops;
>         init.flags = CLK_GET_RATE_NOCACHE;
>
> --
> 2.34.1
>



More information about the linux-arm-kernel mailing list