diff options
author | Ying Xue <ying.xue@windriver.com> | 2014-04-29 11:12:18 +0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-04-30 13:31:26 -0400 |
commit | 1621b94d2a655c8548ddbdfc8ccf907a5bbdc860 (patch) | |
tree | 84659a30a430a7bfe1bc19bf954b220ceb4f84a6 /net/tipc | |
parent | 5c98631cca574ac6255885cf372f6bcf9dcfd483 (diff) | |
download | linux-1621b94d2a655c8548ddbdfc8ccf907a5bbdc860.tar.gz linux-1621b94d2a655c8548ddbdfc8ccf907a5bbdc860.tar.bz2 linux-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/tipc')
-rw-r--r-- | net/tipc/name_table.c | 2 |
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; |