Re: [PATCH] Input: synaptics-rmi4: Fix NULL pointer dereference in rmi_driver_probe

From: Dmitry Torokhov
Date: Tue Jan 16 2024 - 14:12:34 EST


On Tue, Jan 16, 2024 at 04:38:47PM +0800, Kunwu Chan wrote:
> devm_kasprintf() returns a pointer to dynamically allocated memory
> which can be NULL upon failure. Ensure the allocation was successful
> by checking the pointer validity.

It is perfectly valid to not set "input->phys" and leave it at NULL. So
while I agree that having error handling is good I do not believe
there's chance for NULL pointer dereference, so please adjust your patch
title.

>
> Fixes: 2b6a321da9a2 ("Input: synaptics-rmi4 - add support for Synaptics RMI4 devices")
> Signed-off-by: Kunwu Chan <chentao@xxxxxxxxxx>
> ---
> drivers/input/rmi4/rmi_driver.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/drivers/input/rmi4/rmi_driver.c b/drivers/input/rmi4/rmi_driver.c
> index 258d5fe3d395..d3a601ff51e6 100644
> --- a/drivers/input/rmi4/rmi_driver.c
> +++ b/drivers/input/rmi4/rmi_driver.c
> @@ -1197,6 +1197,12 @@ static int rmi_driver_probe(struct device *dev)
> rmi_driver_set_input_params(rmi_dev, data->input);
> data->input->phys = devm_kasprintf(dev, GFP_KERNEL,
> "%s/input0", dev_name(dev));
> + if (!data->input->phys) {
> + dev_err(dev, "%s: Failed to allocate memory.\n",

No need to log the error here, memory allocation will already log the
failure.

Thanks.

--
Dmitry