SCTP: Convert custom hash lists to use hlist.
Convert the custom hash list traversals to use hlist functions. Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
This commit is contained in:
@@ -665,6 +665,9 @@ static inline int sctp_vtag_hashfn(__u16 lport, __u16 rport, __u32 vtag)
|
||||
return (h & (sctp_assoc_hashsize-1));
|
||||
}
|
||||
|
||||
#define sctp_for_each_hentry(epb, node, head) \
|
||||
hlist_for_each_entry(epb, node, head, node)
|
||||
|
||||
/* Is a socket of this style? */
|
||||
#define sctp_style(sk, style) __sctp_style((sk), (SCTP_SOCKET_##style))
|
||||
static inline int __sctp_style(const struct sock *sk, sctp_socket_type_t style)
|
||||
|
||||
@@ -100,20 +100,19 @@ struct crypto_hash;
|
||||
struct sctp_bind_bucket {
|
||||
unsigned short port;
|
||||
unsigned short fastreuse;
|
||||
struct sctp_bind_bucket *next;
|
||||
struct sctp_bind_bucket **pprev;
|
||||
struct hlist_node node;
|
||||
struct hlist_head owner;
|
||||
};
|
||||
|
||||
struct sctp_bind_hashbucket {
|
||||
spinlock_t lock;
|
||||
struct sctp_bind_bucket *chain;
|
||||
struct hlist_head chain;
|
||||
};
|
||||
|
||||
/* Used for hashing all associations. */
|
||||
struct sctp_hashbucket {
|
||||
rwlock_t lock;
|
||||
struct sctp_ep_common *chain;
|
||||
struct hlist_head chain;
|
||||
} __attribute__((__aligned__(8)));
|
||||
|
||||
|
||||
@@ -1230,8 +1229,7 @@ typedef enum {
|
||||
|
||||
struct sctp_ep_common {
|
||||
/* Fields to help us manage our entries in the hash tables. */
|
||||
struct sctp_ep_common *next;
|
||||
struct sctp_ep_common **pprev;
|
||||
struct hlist_node node;
|
||||
int hashent;
|
||||
|
||||
/* Runtime type information. What kind of endpoint is this? */
|
||||
|
||||
Reference in New Issue
Block a user