Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 04f258ce authored by Eric Dumazet's avatar Eric Dumazet Committed by David S. Miller
Browse files

net: some optimizations in af_inet



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: default avatarEric Dumazet <dada1@cosmosbay.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent c46920da
Loading
Loading
Loading
Loading
+4 −5
Original line number Diff line number Diff line
@@ -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,9 +272,8 @@ 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)
	if (unlikely(!inet_ehash_secret))
		if (sock->type != SOCK_RAW && sock->type != SOCK_DGRAM)
			build_ehash_secret();

	sock->state = SS_UNCONNECTED;