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 <[email protected]>

Reviewed-by: Dmitry Torokhov <[email protected]>

> ---
>  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

Reply via email to