summaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
authorChris Leech <christopher.leech@intel.com>2006-05-23 18:02:55 -0700
committerDavid S. Miller <davem@sunset.davemloft.net>2006-06-17 21:25:54 -0700
commit9593782585e0cf70babe787a8463d492a68b1744 (patch)
tree149401a3973036452a07bed899e70d3b92abe1bf /net
parent624d1164730d58a494cc5aa4afa37d02c41e83a7 (diff)
downloadlinux-3.10-9593782585e0cf70babe787a8463d492a68b1744.tar.gz
linux-3.10-9593782585e0cf70babe787a8463d492a68b1744.tar.bz2
linux-3.10-9593782585e0cf70babe787a8463d492a68b1744.zip
[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: Chris Leech <christopher.leech@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r--net/core/user_dma.c4
-rw-r--r--net/ipv4/sysctl_net_ipv4.c10
2 files changed, 14 insertions, 0 deletions
diff --git a/net/core/user_dma.c b/net/core/user_dma.c
index 9eee91bcbf3..b7c98dbcdb8 100644
--- a/net/core/user_dma.c
+++ b/net/core/user_dma.c
@@ -30,6 +30,10 @@
#include <linux/rtnetlink.h> /* for BUG_TRAP */
#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.
* @skb - buffer to copy
diff --git a/net/ipv4/sysctl_net_ipv4.c b/net/ipv4/sysctl_net_ipv4.c
index 6b6c3adfcf0..6a6aa537b7a 100644
--- a/net/ipv4/sysctl_net_ipv4.c
+++ b/net/ipv4/sysctl_net_ipv4.c
@@ -688,6 +688,16 @@ ctl_table ipv4_table[] = {
.mode = 0644,
.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 }
};