Patch "tipc: fix a memory leak in tipc_nl_node_get_link()" has been added to the 4.9-stable tree
Subsystems (3)
This is a note to let you know that I've just added the patch titled
tipc: fix a memory leak in tipc_nl_node_get_link()
to the 4.9-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
tipc-fix-a-memory-leak-in-tipc_nl_node_get_link.patch
and it can be found in the queue-4.9 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From foo@baz Sun Jan 28 17:37:09 CET 2018
From: Cong Wang <[email protected]>
Date: Wed, 10 Jan 2018 12:50:25 -0800
Subject: tipc: fix a memory leak in tipc_nl_node_get_link()
From: Cong Wang <[email protected]>
[ Upstream commit 59b36613e85fb16ebf9feaf914570879cd5c2a21 ]
When tipc_node_find_by_name() fails, the nlmsg is not freed.
While on it, switch to a goto label to properly
free it.
--- net/tipc/node.c | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-)
net/tipc/node.c +14 -12
@@ -1848,36 +1848,38 @@ int tipc_nl_node_get_link(struct sk_buffif (strcmp (name, tipc_bclink_name) ==0 ) { err =tipc_nl_add_bc_link (net, &msg); -if (err) { -nlmsg_free (msg.skb); -return err; - } +if (err) + goto err_free; }else {int bearer_id;struct tipc_node *node;struct tipc_link *link; node =tipc_node_find_by_name (net, name, &bearer_id); -if (!node) -return -EINVAL ; +if (!node) { + err = -EINVAL ; + goto err_free; + }tipc_node_read_lock (node); link = node->links[bearer_id].link;if (!link) {tipc_node_read_unlock (node); -nlmsg_free (msg.skb); -return -EINVAL ; + err = -EINVAL ; + goto err_free; } err =__tipc_nl_add_link (net, &msg, link,0 );tipc_node_read_unlock (node); -if (err) { -nlmsg_free (msg.skb); -return err; - } +if (err) + goto err_free; }return genlmsg_reply (msg.skb, info); + +err_free: +nlmsg_free (msg.skb); +return err; }int tipc_nl_node_reset_link_stats (struct sk_buff *skb,struct genl_info *info)
Patches currently in stable-queue which might be from [email protected] are
queue-4.9/tipc-fix-a-memory-leak-in-tipc_nl_node_get_link.patch queue-4.9/tun-fix-a-memory-leak-for-tfile-tx_array.patch