Re: [PATCH 1/3] firmware: vpd: Destroy vpd sections in remove function

From: Dmitry Torokhov
Date: Wed Nov 15 2017 - 17:28:07 EST


On Wed, Nov 15, 2017 at 01:00:43PM -0800, Guenter Roeck wrote:
> vpd sections are initialized during probe and thus should be destroyed
> in the remove function.
>
> Fixes: 049a59db34eb ("firmware: Google VPD sysfs driver")
> Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

Reviewed-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

> ---
> drivers/firmware/google/vpd.c | 11 +++++++++--
> 1 file changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/firmware/google/vpd.c b/drivers/firmware/google/vpd.c
> index 35e553b3b190..84217172297b 100644
> --- a/drivers/firmware/google/vpd.c
> +++ b/drivers/firmware/google/vpd.c
> @@ -298,8 +298,17 @@ static int vpd_probe(struct platform_device *pdev)
> return vpd_sections_init(entry.cbmem_addr);
> }
>
> +static int vpd_remove(struct platform_device *pdev)
> +{
> + vpd_section_destroy(&ro_vpd);
> + vpd_section_destroy(&rw_vpd);
> +
> + return 0;
> +}
> +
> static struct platform_driver vpd_driver = {
> .probe = vpd_probe,
> + .remove = vpd_remove,
> .driver = {
> .name = "vpd",
> },
> @@ -324,8 +333,6 @@ static int __init vpd_platform_init(void)
>
> static void __exit vpd_platform_exit(void)
> {
> - vpd_section_destroy(&ro_vpd);
> - vpd_section_destroy(&rw_vpd);
> kobject_put(vpd_kobj);
> }
>
> --
> 2.7.4
>

--
Dmitry