Re: [PATCH 3/4] extcon: palmas: Fix NULL pointer error

From: Krzysztof Kozlowski
Date: Sun Jun 21 2015 - 20:45:42 EST


2015-06-19 15:48 GMT+09:00 Chanwoo Choi <cwchoi00@xxxxxxxxx>:
> This patch fixes NULL pointer error by removing the unneeded kfree() call
> of edev->name because extcon-palmas no longer allocate the memory for edev->name.

So the kfree() was executed on pointer returned by "dev_name(edev->dev.parent)"?



> Fixes: d71aadda19f8 ("extcon: Remove the optional name of extcon device")
> Signed-off-by: Chanwoo Choi <cw00.choi@xxxxxxxxxxx>
> ---
> drivers/extcon/extcon-palmas.c | 7 -------
> 1 file changed, 7 deletions(-)
>
> diff --git a/drivers/extcon/extcon-palmas.c b/drivers/extcon/extcon-palmas.c
> index 080d5cc..4e7335f 100644
> --- a/drivers/extcon/extcon-palmas.c
> +++ b/drivers/extcon/extcon-palmas.c
> @@ -200,7 +200,6 @@ static int palmas_usb_probe(struct platform_device *pdev)
> status = devm_extcon_dev_register(&pdev->dev, palmas_usb->edev);
> if (status) {
> dev_err(&pdev->dev, "failed to register extcon device\n");
> - kfree(palmas_usb->edev->name);
> return status;
> }
>
> @@ -214,7 +213,6 @@ static int palmas_usb_probe(struct platform_device *pdev)
> if (status < 0) {
> dev_err(&pdev->dev, "can't get IRQ %d, err %d\n",
> palmas_usb->id_irq, status);
> - kfree(palmas_usb->edev->name);
> return status;
> }
> }
> @@ -229,7 +227,6 @@ static int palmas_usb_probe(struct platform_device *pdev)
> if (status < 0) {
> dev_err(&pdev->dev, "can't get IRQ %d, err %d\n",
> palmas_usb->vbus_irq, status);
> - kfree(palmas_usb->edev->name);
> return status;
> }
> }
> @@ -241,10 +238,6 @@ static int palmas_usb_probe(struct platform_device *pdev)
>
> static int palmas_usb_remove(struct platform_device *pdev)
> {
> - struct palmas_usb *palmas_usb = platform_get_drvdata(pdev);
> -
> - kfree(palmas_usb->edev->name);
> -
> return 0;
> }

The remove function is now no-op so I think you can remove it. The
platform driver code executes it only if it is non-NULL.

Best regards,
Krzysztof
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
Please read the FAQ at http://www.tux.org/lkml/