thermal: core: Adding missing nlmsg_free() in thermal_genl_sampling_temp()

thermal_genl_sampling_temp() misses to call nlmsg_free() in an error path.

Jump to out_free to fix it.

Fixes: 1ce50e7d40 ("thermal: core: genetlink support for events/cmd/sampling")
Signed-off-by: Jing Xiangfeng <jingxiangfeng@huawei.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Link: https://lore.kernel.org/r/20200929082652.59876-1-jingxiangfeng@huawei.com
This commit is contained in:
Jing Xiangfeng
2020-09-29 16:26:52 +08:00
committed by Daniel Lezcano
parent 5093402e5b
commit 48b4585917

View File

@@ -78,7 +78,7 @@ int thermal_genl_sampling_temp(int id, int temp)
hdr = genlmsg_put(skb, 0, 0, &thermal_gnl_family, 0, hdr = genlmsg_put(skb, 0, 0, &thermal_gnl_family, 0,
THERMAL_GENL_SAMPLING_TEMP); THERMAL_GENL_SAMPLING_TEMP);
if (!hdr) if (!hdr)
return -EMSGSIZE; goto out_free;
if (nla_put_u32(skb, THERMAL_GENL_ATTR_TZ_ID, id)) if (nla_put_u32(skb, THERMAL_GENL_ATTR_TZ_ID, id))
goto out_cancel; goto out_cancel;
@@ -93,6 +93,7 @@ int thermal_genl_sampling_temp(int id, int temp)
return 0; return 0;
out_cancel: out_cancel:
genlmsg_cancel(skb, hdr); genlmsg_cancel(skb, hdr);
out_free:
nlmsg_free(skb); nlmsg_free(skb);
return -EMSGSIZE; return -EMSGSIZE;