summaryrefslogtreecommitdiffstats
path: root/include/net/request_sock.h
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2015-09-29 16:53:10 -0700
committerDavid S. Miller <davem@davemloft.net>2015-09-29 16:53:10 -0700
commite6934f3ec00b04234acb24a1a2c28af59763d3b5 (patch)
tree335da15ef581d750ada2ba11e6ca6900ba82ae86 /include/net/request_sock.h
parent4c7e622ddf07388d72e15b97a88d260a5a168e37 (diff)
parent0536fcc039a8926ec12ec587f41a83f7acafeb82 (diff)
downloadlinux-stable-e6934f3ec00b04234acb24a1a2c28af59763d3b5.tar.gz
linux-stable-e6934f3ec00b04234acb24a1a2c28af59763d3b5.tar.bz2
linux-stable-e6934f3ec00b04234acb24a1a2c28af59763d3b5.zip
Merge branch 'listener-refactoring-preparations'
Eric Dumazet says: ==================== tcp: listener refactoring preparations This patch series makes changes to TCP/DCCP stacks so that we can switch listener code to lockless mode. This is done by marking const the listener socket in all appropriate paths. FastOpen code had to be changed to not dynamically allocate a very small structure to make code simpler for following changes. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/request_sock.h')
-rw-r--r--include/net/request_sock.h16
1 files changed, 6 insertions, 10 deletions
diff --git a/include/net/request_sock.h b/include/net/request_sock.h
index 181f97f9fe1c..d2544de329bd 100644
--- a/include/net/request_sock.h
+++ b/include/net/request_sock.h
@@ -34,9 +34,9 @@ struct request_sock_ops {
char *slab_name;
int (*rtx_syn_ack)(const struct sock *sk,
struct request_sock *req);
- void (*send_ack)(struct sock *sk, struct sk_buff *skb,
+ void (*send_ack)(const struct sock *sk, struct sk_buff *skb,
struct request_sock *req);
- void (*send_reset)(struct sock *sk,
+ void (*send_reset)(const struct sock *sk,
struct sk_buff *skb);
void (*destructor)(struct request_sock *req);
void (*syn_ack_timeout)(const struct request_sock *req);
@@ -129,9 +129,8 @@ struct listen_sock {
atomic_t qlen_dec; /* qlen = qlen_inc - qlen_dec */
atomic_t young_dec;
- u8 max_qlen_log ____cacheline_aligned_in_smp;
- u8 synflood_warned;
- /* 2 bytes hole, try to use */
+ u32 max_qlen_log ____cacheline_aligned_in_smp;
+ u32 synflood_warned;
u32 hash_rnd;
u32 nr_table_entries;
struct request_sock *syn_table[0];
@@ -181,11 +180,8 @@ struct request_sock_queue {
struct request_sock *rskq_accept_tail;
u8 rskq_defer_accept;
struct listen_sock *listen_opt;
- struct fastopen_queue *fastopenq; /* This is non-NULL iff TFO has been
- * enabled on this listener. Check
- * max_qlen != 0 in fastopen_queue
- * to determine if TFO is enabled
- * right at this moment.
+ struct fastopen_queue fastopenq; /* Check max_qlen != 0 to determine
+ * if TFO is enabled.
*/
/* temporary alignment, our goal is to get rid of this lock */