mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-22 14:41:27 +00:00
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>
This commit is contained in:
parent
764646b08d
commit
e7942d0633
8 changed files with 2 additions and 262 deletions
|
@ -192,15 +192,6 @@ struct tcp_sock {
|
|||
|
||||
struct list_head tsq_node; /* anchor in tsq_tasklet.head list */
|
||||
|
||||
/* Data for direct copy to user */
|
||||
struct {
|
||||
struct sk_buff_head prequeue;
|
||||
struct task_struct *task;
|
||||
struct msghdr *msg;
|
||||
int memory;
|
||||
int len;
|
||||
} ucopy;
|
||||
|
||||
u32 snd_wl1; /* Sequence for window update */
|
||||
u32 snd_wnd; /* The window we expect to receive */
|
||||
u32 max_window; /* Maximal window ever seen from peer */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue