Message ID | 20210322191204.GA2122573@LEGION |
---|---|
State | New |
Headers | show |
Series | thermal/core: avoid memory leak | expand |
diff --git a/drivers/thermal/thermal_core.c b/drivers/thermal/thermal_core.c index c8d4010940ef..3566fd291399 100644 --- a/drivers/thermal/thermal_core.c +++ b/drivers/thermal/thermal_core.c @@ -1017,6 +1017,7 @@ __thermal_cooling_device_register(struct device_node *np, out_ida_remove: ida_simple_remove(&thermal_cdev_ida, cdev->id); out_kfree_cdev: + kfree(cdev); return ERR_PTR(ret); }
When memory allocation for cdev is successful but ida_simple_get fails, branch to out_kfree_cdev label happens and cdev isn't freed. There are other some other branches in which the memory can leaked. Fix it by freeing cdev. Signed-off-by: Muhammad Usama Anjum <musamaanjum@gmail.com> --- drivers/thermal/thermal_core.c | 1 + 1 file changed, 1 insertion(+)