aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/tcp.h
diff options
context:
space:
mode:
authorFlorian Westphal <fw@strlen.de>2017-07-29 21:57:18 -0400
committerDavid S. Miller <davem@davemloft.net>2017-07-31 17:37:49 -0400
commite7942d0633c47c791ece6afa038be9cf977226de (patch)
tree27dddb46a5358137f6cb6e63bddab14a77a840ec /include/linux/tcp.h
parent764646b08d09d29adced740c26447ecdaabc9088 (diff)
tcp: remove prequeue support
prequeue is a tcp receive optimization that moves part of rx processing from bh to process context. This only works if the socket being processed belongs to a process that is blocked in recv on that socket. In practice, this doesn't happen anymore that often because nowadays servers tend to use an event driven (epoll) model. Even normal client applications (web browsers) commonly use many tcp connections in parallel. This has measureable impact only in netperf (which uses plain recv and thus allows prequeue use) from host to locally running vm (~4%), however, there were no changes when using netperf between two physical hosts with ixgbe interfaces. Signed-off-by: Florian Westphal <fw@strlen.de> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/tcp.h')
-rw-r--r--include/linux/tcp.h9
1 files changed, 0 insertions, 9 deletions
diff --git a/include/linux/tcp.h b/include/linux/tcp.h
index 542ca1ae02c4..32fb37cfb0d1 100644
--- a/include/linux/tcp.h
+++ b/include/linux/tcp.h
@@ -192,15 +192,6 @@ struct tcp_sock {
192 192
193 struct list_head tsq_node; /* anchor in tsq_tasklet.head list */ 193 struct list_head tsq_node; /* anchor in tsq_tasklet.head list */
194 194
195 /* Data for direct copy to user */
196 struct {
197 struct sk_buff_head prequeue;
198 struct task_struct *task;
199 struct msghdr *msg;
200 int memory;
201 int len;
202 } ucopy;
203
204 u32 snd_wl1; /* Sequence for window update */ 195 u32 snd_wl1; /* Sequence for window update */
205 u32 snd_wnd; /* The window we expect to receive */ 196 u32 snd_wnd; /* The window we expect to receive */
206 u32 max_window; /* Maximal window ever seen from peer */ 197 u32 max_window; /* Maximal window ever seen from peer */