freebsd-dev/sys
Matt Macy 4f6c66cc9c UDP: further performance improvements on tx
Cumulative throughput while running 64
  netperf -H $DUT -t UDP_STREAM -- -m 1
on a 2x8x2 SKL went from 1.1Mpps to 2.5Mpps

Single stream throughput increases from 910kpps to 1.18Mpps

Baseline:
https://people.freebsd.org/~mmacy/2018.05.11/udpsender2.svg

- Protect read access to global ifnet list with epoch
https://people.freebsd.org/~mmacy/2018.05.11/udpsender3.svg

- Protect short lived ifaddr references with epoch
https://people.freebsd.org/~mmacy/2018.05.11/udpsender4.svg

- Convert if_afdata read lock path to epoch
https://people.freebsd.org/~mmacy/2018.05.11/udpsender5.svg

A fix for the inpcbhash contention is pending sufficient time
on a canary at LLNW.

Reviewed by:	gallatin
Sponsored by:	Limelight Networks
Differential Revision:	https://reviews.freebsd.org/D15409
2018-05-23 21:02:14 +00:00
..
amd64 Enable IBRS when entering an interrupt handler from usermode. 2018-05-22 13:25:15 +00:00
arm Pass the array length into regions_to_avail. 2018-05-22 14:26:58 +00:00
arm64 arm64: rockchip: Add proper armclock support 2018-05-23 19:07:03 +00:00
bsm
cam Implement initial MMC partitions support for MMCCAM. 2018-05-22 22:16:49 +00:00
cddl Fix 'zpool create -t <tempname>' 2018-05-15 13:27:29 +00:00
compat UDP: further performance improvements on tx 2018-05-23 21:02:14 +00:00
conf arm64: rockchip: Add proper armclock support 2018-05-23 19:07:03 +00:00
contrib ifnet: Replace if_addr_lock rwlock with epoch + mutex 2018-05-18 20:13:34 +00:00
crypto disable printing value of SKEIN_LOOP during standard out, 2018-05-19 18:27:14 +00:00
ddb Fix PPC symbol resolution 2018-05-10 03:59:48 +00:00
dev UDP: further performance improvements on tx 2018-05-23 21:02:14 +00:00
dts arm: overlays: Update to new path-based sugar format 2018-05-04 14:38:48 +00:00
fs nfsclient: warnings cleanups 2018-05-20 06:14:12 +00:00
gdb amd64: Protect the kernel text, data, and BSS by setting the RW/NX bits 2018-03-06 14:28:37 +00:00
geom Introduce the 'n' flag for the geli attach command. 2018-05-09 20:53:38 +00:00
gnu gnu/dts: Update our copy of arm dts from Linux 4.16 2018-04-20 19:37:08 +00:00
i386 Support IBRS for i386. 2018-05-23 16:31:46 +00:00
isa Revert r330780, it was improperly tested and results in taking a spin 2018-03-11 20:13:15 +00:00
kern Remove incorrect owepreempt assertion added in r334062 2018-05-23 10:13:17 +00:00
kgssapi kgssapi: Remove trivial deadcode 2018-02-14 00:12:03 +00:00
libkern Remove "All rights reserved" from my files. 2018-05-10 06:41:08 +00:00
mips Include kernel modules for MALTA kernels. 2018-05-16 17:54:40 +00:00
modules disable set but not used on code that can't be changed 2018-05-19 04:46:34 +00:00
net UDP: further performance improvements on tx 2018-05-23 21:02:14 +00:00
net80211 Use an accessor function to access ifr_data. 2018-03-30 18:50:13 +00:00
netgraph ifnet: Replace if_addr_lock rwlock with epoch + mutex 2018-05-18 20:13:34 +00:00
netinet UDP: further performance improvements on tx 2018-05-23 21:02:14 +00:00
netinet6 UDP: further performance improvements on tx 2018-05-23 21:02:14 +00:00
netipsec Add a SPD cache to speed up lookups. 2018-05-22 15:54:25 +00:00
netpfil UDP: further performance improvements on tx 2018-05-23 21:02:14 +00:00
netsmb Eliminate the overhead of gratuitous repeated reinitialization of cap_rights 2018-05-09 18:47:24 +00:00
nfs UDP: further performance improvements on tx 2018-05-23 21:02:14 +00:00
nfsclient style: Remove remaining deprecated MALLOC/FREE macros 2018-01-25 22:25:13 +00:00
nfsserver
nlm Use syscall_helper_register() to register syscalls and initialize though 2018-02-10 01:09:22 +00:00
ofed UDP: further performance improvements on tx 2018-05-23 21:02:14 +00:00
opencrypto cryptosoft: Do not exceed crd_len around *crypt_multi 2018-04-19 15:24:21 +00:00
powerpc Add an IPMI attachment for PowerNV systems 2018-05-22 03:57:32 +00:00
riscv Export a breakpoint() function to userland for riscv. 2018-05-16 16:56:35 +00:00
rpc Do pass removing some write-only variables from the kernel. 2017-12-25 04:48:39 +00:00
security Use an accessor function to access ifr_data. 2018-03-30 18:50:13 +00:00
sparc64 Enable kernel dump features in GENERIC for most platforms. 2018-05-19 19:53:23 +00:00
sys pmc: bump PMC major version to reflect ABI breakage and make warning not require verbose 2018-05-23 19:55:47 +00:00
teken teken: Rename the "Set Cursor Style" sequence to match vt100.net docs 2018-05-21 20:35:16 +00:00
tests epoch(9): Make epochs non-preemptible by default 2018-05-18 17:29:43 +00:00
tools Add dtb overlays support 2018-03-24 21:30:24 +00:00
ufs ufs: remove cgbno variable where unused 2018-05-19 19:30:42 +00:00
vm Ensure that "m" is initialized in vm_page_alloc_freelist_domain(). 2018-05-22 16:19:48 +00:00
x86 Fix UP build. 2018-05-22 20:50:19 +00:00
xdr
xen xen: fix gntdev 2018-05-02 10:19:17 +00:00
Makefile