diff options
author | Pavel Emelyanov <xemul@openvz.org> | 2008-01-31 14:04:45 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-02-01 04:28:17 +0100 |
commit | 5ee31fc1ecdcbc234c8c56dcacef87c8e09909d8 (patch) | |
tree | 5fe73acbcf784f9ee326d7d10ae217c7b4eb13ee /include | |
parent | [IPV6]: Introduce the INET6_TW_MATCH macro. (diff) | |
download | linux-5ee31fc1ecdcbc234c8c56dcacef87c8e09909d8.tar.xz linux-5ee31fc1ecdcbc234c8c56dcacef87c8e09909d8.zip |
[INET]: Consolidate inet(6)_hash_connect.
These two functions are the same except for what they call
to "check_established" and "hash" for a socket.
This saves half-a-kilo for ipv4 and ipv6.
add/remove: 1/0 grow/shrink: 1/4 up/down: 582/-1128 (-546)
function old new delta
__inet_hash_connect - 577 +577
arp_ignore 108 113 +5
static.hint 8 4 -4
rt_worker_func 376 372 -4
inet6_hash_connect 584 25 -559
inet_hash_connect 586 25 -561
Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r-- | include/net/inet_hashtables.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/net/inet_hashtables.h b/include/net/inet_hashtables.h index 761bdc01425d..a34a8f25fc57 100644 --- a/include/net/inet_hashtables.h +++ b/include/net/inet_hashtables.h @@ -413,6 +413,11 @@ static inline struct sock *inet_lookup(struct inet_hashinfo *hashinfo, return sk; } +extern int __inet_hash_connect(struct inet_timewait_death_row *death_row, + struct sock *sk, + int (*check_established)(struct inet_timewait_death_row *, + struct sock *, __u16, struct inet_timewait_sock **), + void (*hash)(struct inet_hashinfo *, struct sock *)); extern int inet_hash_connect(struct inet_timewait_death_row *death_row, struct sock *sk); #endif /* _INET_HASHTABLES_H */ |