aboutsummaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorYing Xue <ying.xue@windriver.com>2014-04-29 11:12:18 +0800
committerDavid S. Miller <davem@davemloft.net>2014-04-30 13:31:26 -0400
commit1621b94d2a655c8548ddbdfc8ccf907a5bbdc860 (patch)
tree84659a30a430a7bfe1bc19bf954b220ceb4f84a6 /net
parentnet: ipv6: Introduce ip6_sk_dst_hoplimit. (diff)
downloadlinux-dev-1621b94d2a655c8548ddbdfc8ccf907a5bbdc860.tar.xz
linux-dev-1621b94d2a655c8548ddbdfc8ccf907a5bbdc860.zip
tipc: fix memory leak of publications
Commit 1bb8dce57f4d15233688c68990852a10eb1cd79f ("tipc: fix memory leak during module removal") introduced a memory leak issue: when name table is stopped, it's forgotten that publication instances are freed properly. Additionally the useless "continue" statement in tipc_nametbl_stop() is removed as well. Reported-by: Jason <huzhijiang@gmail.com> Signed-off-by: Ying Xue <ying.xue@windriver.com> Acked-by: Erik Hugne <erik.hugne@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r--net/tipc/name_table.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/tipc/name_table.c b/net/tipc/name_table.c
index 9bcf4b58853f..9d7d37d95187 100644
--- a/net/tipc/name_table.c
+++ b/net/tipc/name_table.c
@@ -969,6 +969,7 @@ static void tipc_purge_publications(struct name_seq *seq)
list_for_each_entry_safe(publ, safe, &info->zone_list, zone_list) {
tipc_nametbl_remove_publ(publ->type, publ->lower, publ->node,
publ->ref, publ->key);
+ kfree(publ);
}
}
@@ -990,7 +991,6 @@ void tipc_nametbl_stop(void)
hlist_for_each_entry_safe(seq, safe, seq_head, ns_list) {
tipc_purge_publications(seq);
}
- continue;
}
kfree(table.types);
table.types = NULL;