Commit 95937825 authored by Chris Leech's avatar Chris Leech Committed by David S. Miller

[I/OAT]: Add a sysctl for tuning the I/OAT offloaded I/O threshold

Any socket recv of less than this ammount will not be offloaded
Signed-off-by: default avatarChris Leech <christopher.leech@intel.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 624d1164
...@@ -403,6 +403,7 @@ enum ...@@ -403,6 +403,7 @@ enum
NET_TCP_MTU_PROBING=113, NET_TCP_MTU_PROBING=113,
NET_TCP_BASE_MSS=114, NET_TCP_BASE_MSS=114,
NET_IPV4_TCP_WORKAROUND_SIGNED_WINDOWS=115, NET_IPV4_TCP_WORKAROUND_SIGNED_WINDOWS=115,
NET_TCP_DMA_COPYBREAK=116,
}; };
enum { enum {
......
...@@ -219,6 +219,7 @@ extern int sysctl_tcp_adv_win_scale; ...@@ -219,6 +219,7 @@ extern int sysctl_tcp_adv_win_scale;
extern int sysctl_tcp_tw_reuse; extern int sysctl_tcp_tw_reuse;
extern int sysctl_tcp_frto; extern int sysctl_tcp_frto;
extern int sysctl_tcp_low_latency; extern int sysctl_tcp_low_latency;
extern int sysctl_tcp_dma_copybreak;
extern int sysctl_tcp_nometrics_save; extern int sysctl_tcp_nometrics_save;
extern int sysctl_tcp_moderate_rcvbuf; extern int sysctl_tcp_moderate_rcvbuf;
extern int sysctl_tcp_tso_win_divisor; extern int sysctl_tcp_tso_win_divisor;
......
...@@ -30,6 +30,10 @@ ...@@ -30,6 +30,10 @@
#include <linux/rtnetlink.h> /* for BUG_TRAP */ #include <linux/rtnetlink.h> /* for BUG_TRAP */
#include <net/tcp.h> #include <net/tcp.h>
#define NET_DMA_DEFAULT_COPYBREAK 4096
int sysctl_tcp_dma_copybreak = NET_DMA_DEFAULT_COPYBREAK;
/** /**
* dma_skb_copy_datagram_iovec - Copy a datagram to an iovec. * dma_skb_copy_datagram_iovec - Copy a datagram to an iovec.
* @skb - buffer to copy * @skb - buffer to copy
......
...@@ -688,6 +688,16 @@ ctl_table ipv4_table[] = { ...@@ -688,6 +688,16 @@ ctl_table ipv4_table[] = {
.mode = 0644, .mode = 0644,
.proc_handler = &proc_dointvec .proc_handler = &proc_dointvec
}, },
#ifdef CONFIG_NET_DMA
{
.ctl_name = NET_TCP_DMA_COPYBREAK,
.procname = "tcp_dma_copybreak",
.data = &sysctl_tcp_dma_copybreak,
.maxlen = sizeof(int),
.mode = 0644,
.proc_handler = &proc_dointvec
},
#endif
{ .ctl_name = 0 } { .ctl_name = 0 }
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment