Message ID | 20200625043242.31175-1-misono.tomohiro@jp.fujitsu.com (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | hwmon: (acpi_power_meter) Fix potential memory leak in acpi_power_meter_add() | expand |
On Thu, Jun 25, 2020 at 01:32:42PM +0900, Misono Tomohiro wrote: > Although it rarely happens, we should call free_capabilities() > if error happens after read_capabilities() to free allocated strings. > > Fixes: commit de584afa5e188 ("hwmon driver for ACPI 4.0 power meters") > Signed-off-by: Misono Tomohiro <misono.tomohiro@jp.fujitsu.com> Applied. Thanks, Guenter > --- > drivers/hwmon/acpi_power_meter.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/hwmon/acpi_power_meter.c b/drivers/hwmon/acpi_power_meter.c > index 0db8ef4fd6e1..a270b975e90b 100644 > --- a/drivers/hwmon/acpi_power_meter.c > +++ b/drivers/hwmon/acpi_power_meter.c > @@ -883,7 +883,7 @@ static int acpi_power_meter_add(struct acpi_device *device) > > res = setup_attrs(resource); > if (res) > - goto exit_free; > + goto exit_free_capability; > > resource->hwmon_dev = hwmon_device_register(&device->dev); > if (IS_ERR(resource->hwmon_dev)) { > @@ -896,6 +896,8 @@ static int acpi_power_meter_add(struct acpi_device *device) > > exit_remove: > remove_attrs(resource); > +exit_free_capability: > + free_capabilities(resource); > exit_free: > kfree(resource); > exit:
diff --git a/drivers/hwmon/acpi_power_meter.c b/drivers/hwmon/acpi_power_meter.c index 0db8ef4fd6e1..a270b975e90b 100644 --- a/drivers/hwmon/acpi_power_meter.c +++ b/drivers/hwmon/acpi_power_meter.c @@ -883,7 +883,7 @@ static int acpi_power_meter_add(struct acpi_device *device) res = setup_attrs(resource); if (res) - goto exit_free; + goto exit_free_capability; resource->hwmon_dev = hwmon_device_register(&device->dev); if (IS_ERR(resource->hwmon_dev)) { @@ -896,6 +896,8 @@ static int acpi_power_meter_add(struct acpi_device *device) exit_remove: remove_attrs(resource); +exit_free_capability: + free_capabilities(resource); exit_free: kfree(resource); exit:
Although it rarely happens, we should call free_capabilities() if error happens after read_capabilities() to free allocated strings. Fixes: commit de584afa5e188 ("hwmon driver for ACPI 4.0 power meters") Signed-off-by: Misono Tomohiro <misono.tomohiro@jp.fujitsu.com> --- drivers/hwmon/acpi_power_meter.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)