diff options
author | Eric Dumazet <edumazet@google.com> | 2015-07-08 23:28:30 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-07-10 00:12:20 +0200 |
commit | dbe7faa4045ea83a37b691b12bb02a8f86c2d2e9 (patch) | |
tree | 4c7b8918dbe2c4caacd120deffe2e8a8235d9561 /net/ipv4/inet_hashtables.c | |
parent | inet: simplify timewait refcounting (diff) | |
download | linux-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.c | 9 |
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; |