diff options
| author | Eric Dumazet <[email protected]> | 2015-10-14 18:16:27 +0000 |
|---|---|---|
| committer | David S. Miller <[email protected]> | 2015-10-16 07:52:18 +0000 |
| commit | f03f2e154f52fdaa982de7e2c386737679963dc9 (patch) | |
| tree | f88db80f207233d0b5eef878687bc032f89f9269 /net/ipv6/tcp_ipv6.c | |
| parent | Revert "inet: fix double request socket freeing" (diff) | |
| download | kernel-f03f2e154f52fdaa982de7e2c386737679963dc9.tar.gz kernel-f03f2e154f52fdaa982de7e2c386737679963dc9.zip | |
tcp/dccp: add inet_csk_reqsk_queue_drop_and_put() helper
Let's reduce the confusion about inet_csk_reqsk_queue_drop() :
In many cases we also need to release reference on request socket,
so add a helper to do this, reducing code size and complexity.
Fixes: 4bdc3d66147b ("tcp/dccp: fix behavior of stale SYN_RECV request sockets")
Signed-off-by: Eric Dumazet <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Diffstat (limited to 'net/ipv6/tcp_ipv6.c')
| -rw-r--r-- | net/ipv6/tcp_ipv6.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv6/tcp_ipv6.c b/net/ipv6/tcp_ipv6.c index 7ce1c57199d1..acb06f86f372 100644 --- a/net/ipv6/tcp_ipv6.c +++ b/net/ipv6/tcp_ipv6.c @@ -1386,7 +1386,7 @@ process: if (likely(sk->sk_state == TCP_LISTEN)) { nsk = tcp_check_req(sk, skb, req, false); } else { - inet_csk_reqsk_queue_drop(sk, req); + inet_csk_reqsk_queue_drop_and_put(sk, req); goto lookup; } if (!nsk) { |
