freebsd-dev/sys
Mark Johnston 98d788c867 opencrypto: Fix assignment of crypto completions to worker threads
Since r336439 we simply take the session pointer value mod the number of
worker threads (ncpu by default).  On small systems this ends up
funneling all completion work through a single thread, which becomes a
bottleneck when processing IPSec traffic using hardware crypto drivers.
(Software drivers such as aesni(4) are unaffected since they invoke
completion handlers synchonously.)

Instead, maintain an incrementing counter with a unique value per
session, and use that to distribute work to completion threads.

Reviewed by:	cem, jhb
MFC after:	2 weeks
Sponsored by:	Rubicon Communications, LLC ("Netgate")
Differential Revision:	https://reviews.freebsd.org/D28159
2021-01-19 20:34:35 -05:00
..
amd64 linux: map EBUSY returned by ptrace into ESRCH 2021-01-19 11:21:55 +00:00
arm make maximum interrupt number tunable on ARM, ARM64, MIPS, and RISC-V 2021-01-18 16:36:39 -08:00
arm64 Add a new FreeBSD/arm64 kernel configuration, GENERIC-MMCCAM-NODEBUG, 2021-01-19 22:26:20 +00:00
bsm Add aio_writev and aio_readv 2021-01-02 19:57:58 -07:00
cam cam: Remove Giant handling from cam_sim_alloc() 2021-01-03 11:50:31 -05:00
cddl riscv: fix kernel build 2021-01-15 11:57:04 -04:00
compat linux: remove spurious newline. 2021-01-19 09:56:45 +00:00
conf htu21: driver for HTU21D I2C temperature and humidity sensor 2021-01-19 15:08:51 +02:00
contrib Re-apply f81b2b9a8a to the new device-tree import 2021-01-15 20:07:13 +01:00
crypto aesni: Ensure that key schedules are aligned 2021-01-18 17:07:56 -05:00
ddb ddb: add ability to print user registers 2021-01-08 14:53:06 -04:00
dev ixl: Permit 802.1ad frames to pass though the chip 2021-01-19 16:01:09 +01:00
dts Switch to the new device-tree vendor tree 2021-01-15 20:08:39 +01:00
fs tmpfs_reclaim: detach unlinked node on dereferencing. 2021-01-14 14:51:37 +02:00
gdb gdb(4): allow bulk write of registers 2020-12-23 14:37:05 -04:00
geom geom(4): make g_newprovider_event() return if G_P_WITHER is set 2020-12-29 14:29:59 +00:00
gnu Remove the old dts imported tree. 2021-01-15 20:09:55 +01:00
i386 wl(4): remove obsolete header 2021-01-17 00:03:17 +01:00
isa
kern lockmgr: fix upgrade 2021-01-19 12:21:38 +00:00
kgssapi
libkern libkern/strcasestr.c: Drop xlocale support and connect to build. 2021-01-08 02:18:42 +03:00
mips make maximum interrupt number tunable on ARM, ARM64, MIPS, and RISC-V 2021-01-18 16:36:39 -08:00
modules htu21: driver for HTU21D I2C temperature and humidity sensor 2021-01-19 15:08:51 +02:00
net Fix panic on vnet creation if fib algo has been set to fixed value. 2021-01-17 20:32:25 +00:00
net80211 net80211: fix a typo 2020-11-04 12:07:33 +00:00
netgraph netgraph/ng_one2main: Clarification in comments about copy mode 2021-01-18 14:10:34 +01:00
netinet Require uint32_t alignment for ipfw_insn 2021-01-19 21:23:25 +00:00
netinet6 Create new in6_purgeifaddr() which purges bound ifa prefix if 2021-01-17 20:32:25 +00:00
netipsec Convert unmapped mbufs before computing checksums in IPsec. 2021-01-19 11:52:00 -08:00
netpfil pf: Don't hold PF_RULES_WLOCK during copyin() on DIOCRCLRTSTATS 2021-01-13 19:49:42 +01:00
netsmb
nfs
nfsclient
nfsserver nfs: Mark unused statistics variable as reserved 2020-11-18 04:35:49 +00:00
nlm
ofed Update user access region, UAR, APIs in the core in mlx5core. 2021-01-08 13:33:46 +01:00
opencrypto opencrypto: Fix assignment of crypto completions to worker threads 2021-01-19 20:34:35 -05:00
powerpc Split out the NODEBUG options to a common file 2021-01-14 16:57:53 +00:00
riscv riscv: Fix build by using the correct device-tree include path 2021-01-16 11:31:39 +01:00
rpc nfs-over-tls: handle res.gid.gid_val correctly for memory allocation 2021-01-12 13:59:52 -08:00
security Convert remaining cap_rights_init users to cap_rights_init_one 2021-01-12 13:16:10 +00:00
sys make maximum interrupt number tunable on ARM, ARM64, MIPS, and RISC-V 2021-01-18 16:36:39 -08:00
teken loader: implement framebuffer console 2021-01-02 21:41:36 +02:00
tests Enable running fib tests inside vnet jail. 2021-01-17 20:32:26 +00:00
tools Switch to the new device-tree vendor tree 2021-01-15 20:08:39 +01:00
ufs Eliminate a locking panic when cleaning up UFS snapshots after a 2021-01-15 16:36:42 -08:00
vm vm_map_protect(): remove not needed recalculations of new_prot, new_maxprot 2021-01-14 10:02:43 +02:00
x86 x86 busdma_bounce: use malloc_domainset_aligned(9). 2021-01-17 19:29:05 +02:00
xdr
xen xen: remove .swp file from public headers 2021-01-11 18:14:11 +01:00
Makefile