summaryrefslogtreecommitdiffstats
path: root/net/ipv4/inet_hashtables.c
diff options
context:
space:
mode:
authorEric Dumazet <edumazet@google.com>2015-07-08 23:28:30 +0200
committerDavid S. Miller <davem@davemloft.net>2015-07-10 00:12:20 +0200
commitdbe7faa4045ea83a37b691b12bb02a8f86c2d2e9 (patch)
tree4c7b8918dbe2c4caacd120deffe2e8a8235d9561 /net/ipv4/inet_hashtables.c
parentinet: simplify timewait refcounting (diff)
downloadlinux-dbe7faa4045ea83a37b691b12bb02a8f86c2d2e9.tar.xz
linux-dbe7faa4045ea83a37b691b12bb02a8f86c2d2e9.zip
inet: inet_twsk_deschedule factorization
inet_twsk_deschedule() calls are followed by inet_twsk_put(). Only particular case is in inet_twsk_purge() but there is no point to defer the inet_twsk_put() after re-enabling BH. Lets rename inet_twsk_deschedule() to inet_twsk_deschedule_put() and move the inet_twsk_put() inside. Signed-off-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/inet_hashtables.c')
-rw-r--r--net/ipv4/inet_hashtables.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/net/ipv4/inet_hashtables.c b/net/ipv4/inet_hashtables.c
index e58840330da7..f8b3701a6c3c 100644
--- a/net/ipv4/inet_hashtables.c
+++ b/net/ipv4/inet_hashtables.c
@@ -380,8 +380,7 @@ static int __inet_check_established(struct inet_timewait_death_row *death_row,
*twp = tw;
} else if (tw) {
/* Silly. Should hash-dance instead... */
- inet_twsk_deschedule(tw);
- inet_twsk_put(tw);
+ inet_twsk_deschedule_put(tw);
}
return 0;
@@ -558,10 +557,8 @@ ok:
inet_twsk_bind_unhash(tw, hinfo);
spin_unlock(&head->lock);
- if (tw) {
- inet_twsk_deschedule(tw);
- inet_twsk_put(tw);
- }
+ if (tw)
+ inet_twsk_deschedule_put(tw);
ret = 0;
goto out;