summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Dumazet <edumazet@google.com>2015-10-09 02:33:24 (GMT)
committerDavid S. Miller <davem@davemloft.net>2015-10-13 02:28:24 (GMT)
commitd475f090bf1c0dc2999e98bbf2e7cb2243358849 (patch)
treebe81e7d131616b46257c3d2006a4cfd45b94e490
parented53d0ab761f5c71d77c8dc05fd19c0a851200db (diff)
downloadlinux-d475f090bf1c0dc2999e98bbf2e7cb2243358849.tar.xz
tcp: shrink tcp_timewait_sock by 8 bytes
Reducing tcp_timewait_sock from 280 bytes to 272 bytes allows SLAB to pack 15 objects per page instead of 14 (on x86) Signed-off-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--include/linux/tcp.h4
-rw-r--r--include/net/sock.h2
2 files changed, 4 insertions, 2 deletions
diff --git a/include/linux/tcp.h b/include/linux/tcp.h
index e442e6e..86a7eda 100644
--- a/include/linux/tcp.h
+++ b/include/linux/tcp.h
@@ -356,8 +356,8 @@ static inline struct tcp_sock *tcp_sk(const struct sock *sk)
struct tcp_timewait_sock {
struct inet_timewait_sock tw_sk;
- u32 tw_rcv_nxt;
- u32 tw_snd_nxt;
+#define tw_rcv_nxt tw_sk.__tw_common.skc_tw_rcv_nxt
+#define tw_snd_nxt tw_sk.__tw_common.skc_tw_snd_nxt
u32 tw_rcv_wnd;
u32 tw_ts_offset;
u32 tw_ts_recent;
diff --git a/include/net/sock.h b/include/net/sock.h
index 19cfe1f..64a7545 100644
--- a/include/net/sock.h
+++ b/include/net/sock.h
@@ -229,6 +229,7 @@ struct sock_common {
union {
int skc_incoming_cpu;
u32 skc_rcv_wnd;
+ u32 skc_tw_rcv_nxt; /* struct tcp_timewait_sock */
};
atomic_t skc_refcnt;
@@ -237,6 +238,7 @@ struct sock_common {
union {
u32 skc_rxhash;
u32 skc_window_clamp;
+ u32 skc_tw_snd_nxt; /* struct tcp_timewait_sock */
};
/* public: */
};