| Submitter | Eric Dumazet |
|---|---|
| Date | Nov. 22, 2008, 7:06 a.m. |
| Message ID | <4927AF61.40002@cosmosbay.com> |
| Download | mbox | patch |
| Permalink | /patch/10199/ |
| State | Accepted |
| Delegated to: | David Miller |
| Headers | show |
Comments
From: Eric Dumazet <dada1@cosmosbay.com> Date: Sat, 22 Nov 2008 08:06:09 +0100 > 1) Use eq_net() in inet_netns_ok() to speedup socket creation if !CONFIG_NET_NS > > 2) Reorder the tests about inet_ehash_secret generation (once only) > Use the unlikely() macro when testing if inet_ehash_secret already generated. > > Signed-off-by: Eric Dumazet <dada1@cosmosbay.com> Applied, thanks Eric. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Patch
diff --git a/net/ipv4/af_inet.c b/net/ipv4/af_inet.c index b1462e8..fe03048 100644 --- a/net/ipv4/af_inet.c +++ b/net/ipv4/af_inet.c @@ -245,7 +245,7 @@ static inline int inet_netns_ok(struct net *net, int protocol) int hash; struct net_protocol *ipprot; - if (net == &init_net) + if (net_eq(net, &init_net)) return 1; hash = protocol & (MAX_INET_PROTOS - 1); @@ -272,10 +272,9 @@ static int inet_create(struct net *net, struct socket *sock, int protocol) int try_loading_module = 0; int err; - if (sock->type != SOCK_RAW && - sock->type != SOCK_DGRAM && - !inet_ehash_secret) - build_ehash_secret(); + if (unlikely(!inet_ehash_secret)) + if (sock->type != SOCK_RAW && sock->type != SOCK_DGRAM) + build_ehash_secret(); sock->state = SS_UNCONNECTED;
1) Use eq_net() in inet_netns_ok() to speedup socket creation if !CONFIG_NET_NS 2) Reorder the tests about inet_ehash_secret generation (once only) Use the unlikely() macro when testing if inet_ehash_secret already generated. Signed-off-by: Eric Dumazet <dada1@cosmosbay.com>