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: <CAJKOXPeXnjfzNA-B+VGxJVzunByLZOFYH1y2zxBoR3ew1quNTw@mail.gmail.com>
Date:	Mon, 22 Jun 2015 09:45:29 +0900
From:	Krzysztof Kozlowski <k.kozlowski@...sung.com>
To:	Chanwoo Choi <cwchoi00@...il.com>
Cc:	linux-kernel@...r.kernel.org, myungjoo.ham@...sung.com,
	kyungmin.park@...sung.com
Subject: Re: [PATCH 3/4] extcon: palmas: Fix NULL pointer error

2015-06-19 15:48 GMT+09:00 Chanwoo Choi <cwchoi00@...il.com>:
> 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@...sung.com>
> ---
>  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/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ