Commit 6044bd4a authored by Haishuang Yan's avatar Haishuang Yan Committed by David S. Miller

devlink: fix potential memort leak

We must free allocated skb when genlmsg_put() return fails.

Fixes: 1555d204 ("devlink: Support for pipeline debug (dpipe)")
Signed-off-by: default avatarHaishuang Yan <yanhaishuang@cmss.chinamobile.com>
Acked-by: default avatarJiri Pirko <jiri@mellanox.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 1e0ce2a1
...@@ -1680,8 +1680,10 @@ static int devlink_dpipe_tables_fill(struct genl_info *info, ...@@ -1680,8 +1680,10 @@ static int devlink_dpipe_tables_fill(struct genl_info *info,
hdr = genlmsg_put(skb, info->snd_portid, info->snd_seq, hdr = genlmsg_put(skb, info->snd_portid, info->snd_seq,
&devlink_nl_family, NLM_F_MULTI, cmd); &devlink_nl_family, NLM_F_MULTI, cmd);
if (!hdr) if (!hdr) {
nlmsg_free(skb);
return -EMSGSIZE; return -EMSGSIZE;
}
if (devlink_nl_put_handle(skb, devlink)) if (devlink_nl_put_handle(skb, devlink))
goto nla_put_failure; goto nla_put_failure;
...@@ -2098,8 +2100,10 @@ static int devlink_dpipe_headers_fill(struct genl_info *info, ...@@ -2098,8 +2100,10 @@ static int devlink_dpipe_headers_fill(struct genl_info *info,
hdr = genlmsg_put(skb, info->snd_portid, info->snd_seq, hdr = genlmsg_put(skb, info->snd_portid, info->snd_seq,
&devlink_nl_family, NLM_F_MULTI, cmd); &devlink_nl_family, NLM_F_MULTI, cmd);
if (!hdr) if (!hdr) {
nlmsg_free(skb);
return -EMSGSIZE; return -EMSGSIZE;
}
if (devlink_nl_put_handle(skb, devlink)) if (devlink_nl_put_handle(skb, devlink))
goto nla_put_failure; goto nla_put_failure;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment