summaryrefslogtreecommitdiffstats
path: root/net/ipv6
diff options
context:
space:
mode:
authorHerbert Xu2019-03-26 06:50:14 +0100
committerGreg Kroah-Hartman2019-04-03 06:26:18 +0200
commit7254ad094f4a7d624d988d3095e6cb94f3e9afe6 (patch)
treefc357fc5ac999ef4945cccd78e24fd07be38a8af /net/ipv6
parentvxlan: Don't call gro_cells_destroy() before device is unregistered (diff)
downloadkernel-qcow2-linux-7254ad094f4a7d624d988d3095e6cb94f3e9afe6.tar.gz
kernel-qcow2-linux-7254ad094f4a7d624d988d3095e6cb94f3e9afe6.tar.xz
kernel-qcow2-linux-7254ad094f4a7d624d988d3095e6cb94f3e9afe6.zip
ila: Fix rhashtable walker list corruption
[ Upstream commit b5f9bd15b88563b55a99ed588416881367a0ce5f ] ila_xlat_nl_cmd_flush uses rhashtable walkers allocated from the stack but it never frees them. This corrupts the walker list of the hash table. This patch fixes it. Reported-by: syzbot+dae72a112334aa65a159@syzkaller.appspotmail.com Fixes: b6e71bdebb12 ("ila: Flush netlink command to clear xlat...") Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'net/ipv6')
-rw-r--r--net/ipv6/ila/ila_xlat.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/ipv6/ila/ila_xlat.c b/net/ipv6/ila/ila_xlat.c
index 17c455ff69ff..7858fa9ea103 100644
--- a/net/ipv6/ila/ila_xlat.c
+++ b/net/ipv6/ila/ila_xlat.c
@@ -420,6 +420,7 @@ int ila_xlat_nl_cmd_flush(struct sk_buff *skb, struct genl_info *info)
done:
rhashtable_walk_stop(&iter);
+ rhashtable_walk_exit(&iter);
return ret;
}