aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDmitry Torokhov <dtor@google.com>2015-07-09 17:17:57 -0700
committerWolfgang Wiedmeyer <wolfgit@wiedmeyer.de>2016-03-18 01:51:05 +0100
commit1dcfa79b6c76e1f76eddf9f39ddbd1ddf741f8d7 (patch)
tree34a46b4abe6d7eec17d3a9c11ef228d0f65d8cbf
parentd355fcc2aad74a30cb8c8433a6a7ad685fd08def (diff)
downloadkernel_samsung_smdk4412-1dcfa79b6c76e1f76eddf9f39ddbd1ddf741f8d7.zip
kernel_samsung_smdk4412-1dcfa79b6c76e1f76eddf9f39ddbd1ddf741f8d7.tar.gz
kernel_samsung_smdk4412-1dcfa79b6c76e1f76eddf9f39ddbd1ddf741f8d7.tar.bz2
net: fix iterating over hashtable in tcp_nuke_addr()
The actual size of the tcp hashinfo table is tcp_hashinfo.ehash_mask + 1 so we need to adjust the loop accordingly to get the sockets hashed into the last bucket. Change-Id: I796b3c7b4a1a7fa35fba9e5192a4a403eb6e17de Signed-off-by: Dmitry Torokhov <dtor@google.com>
-rw-r--r--net/ipv4/tcp.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c
index 96bb1dc..58117bd 100644
--- a/net/ipv4/tcp.c
+++ b/net/ipv4/tcp.c
@@ -3379,7 +3379,7 @@ int tcp_nuke_addr(struct net *net, struct sockaddr *addr)
return -EAFNOSUPPORT;
}
- for (bucket = 0; bucket < tcp_hashinfo.ehash_mask; bucket++) {
+ for (bucket = 0; bucket <= tcp_hashinfo.ehash_mask; bucket++) {
struct hlist_nulls_node *node;
struct sock *sk;
spinlock_t *lock = inet_ehash_lockp(&tcp_hashinfo, bucket);