linux/include
Trond Myklebust edc1b01cd3 SUNRPC: Move TCP receive data path into a workqueue context
Stream protocols such as TCP can often build up a backlog of data to be
read due to ordering. Combine this with the fact that some workloads such
as NFS read()-intensive workloads need to receive a lot of data per RPC
call, and it turns out that receiving the data from inside a softirq
context can cause starvation.

The following patch moves the TCP data receive into a workqueue context.
We still end up calling tcp_read_sock(), but we do so from a process
context, meaning that softirqs are enabled for most of the time.

With this patch, I see a doubling of read bandwidth when running a
multi-threaded iozone workload between a virtual client and server setup.

Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
2015-10-08 08:27:04 -04:00
..
acpi
asm-generic Merge branch 'strscpy' of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile 2015-10-04 16:31:13 +01:00
clocksource
crypto
drm drm/dp/mst: add some defines for logical/physical ports 2015-10-02 15:34:42 +10:00
dt-bindings
keys
kvm
linux SUNRPC: Move TCP receive data path into a workqueue context 2015-10-08 08:27:04 -04:00
math-emu
media
memory
misc
net af_unix: Convert the unix_sk macro to an inline function for type safety 2015-09-29 13:47:07 -07:00
pcmcia
ras
rdma
rxrpc
scsi
soc
sound
target target: Propigate backend read-only to core_tpg_add_lun 2015-09-24 23:17:21 -07:00
trace
uapi userfaultfd: remove kernel header include from uapi header 2015-10-01 21:42:35 -04:00
video
xen x86/xen: Support kexec/kdump in HVM guests by doing a soft reset 2015-09-28 14:48:52 +01:00
Kbuild