diff options
Diffstat (limited to 'include/net/inet_hashtables.h')
| -rw-r--r-- | include/net/inet_hashtables.h | 21 | 
1 files changed, 8 insertions, 13 deletions
diff --git a/include/net/inet_hashtables.h b/include/net/inet_hashtables.h index 3ecfeadbfa06..7f1b38458743 100644 --- a/include/net/inet_hashtables.h +++ b/include/net/inet_hashtables.h @@ -88,7 +88,7 @@ struct inet_bind_bucket {  	unsigned short		fast_sk_family;  	bool			fast_ipv6_only;  	struct hlist_node	node; -	struct hlist_head	owners; +	struct hlist_head	bhash2;  };  struct inet_bind2_bucket { @@ -96,22 +96,17 @@ struct inet_bind2_bucket {  	int			l3mdev;  	unsigned short		port;  #if IS_ENABLED(CONFIG_IPV6) -	unsigned short		family; -#endif -	union { -#if IS_ENABLED(CONFIG_IPV6) -		struct in6_addr		v6_rcv_saddr; +	unsigned short		addr_type; +	struct in6_addr		v6_rcv_saddr; +#define rcv_saddr		v6_rcv_saddr.s6_addr32[3] +#else +	__be32			rcv_saddr;  #endif -		__be32			rcv_saddr; -	};  	/* Node in the bhash2 inet_bind_hashbucket chain */  	struct hlist_node	node; +	struct hlist_node	bhash_node;  	/* List of sockets hashed to this bucket */  	struct hlist_head	owners; -	/* bhash has twsk in owners, but bhash2 has twsk in -	 * deathrow not to add a member in struct sock_common. -	 */ -	struct hlist_head	deathrow;  };  static inline struct net *ib_net(const struct inet_bind_bucket *ib) @@ -241,7 +236,7 @@ bool inet_bind_bucket_match(const struct inet_bind_bucket *tb,  struct inet_bind2_bucket *  inet_bind2_bucket_create(struct kmem_cache *cachep, struct net *net,  			 struct inet_bind_hashbucket *head, -			 unsigned short port, int l3mdev, +			 struct inet_bind_bucket *tb,  			 const struct sock *sk);  void inet_bind2_bucket_destroy(struct kmem_cache *cachep,  |