freebsd-dev/sys
Andrey V. Elsukov 2c87fdf059 Rework if_ipsec(4) to use epoch(9) instead of rmlock.
* use CK_LIST and FNV hash to keep chains of softc;
* read access to softc is protected by epoch();
* write access is protected by ipsec_ioctl_sx. Changing of softc fields
  is allowed only when softc is unlinked from CK_LIST chains.
* linking/unlinking of softc is allowed only when ipsec_ioctl_sx is
  exclusive locked.
* the plain LIST of all softc is replaced by hash table that uses ingress
  address of tunnels as a key.
* added support for appearing/disappearing of ingress address handling.
  Now it is allowed configure non-local ingress IP address, and thus the
  problem with if_ipsec(4) configuration that happens on boot, when
  ingress address is not yet configured, is solved.

MFC after:	1 month
Sponsored by:	Yandex LLC
Differential Revision:	https://reviews.freebsd.org/D17190
2018-10-21 18:24:20 +00:00
..
amd64 amd64: tidy up memset to have rax set earlier for small sizes 2018-10-21 10:46:00 +00:00
arm arm generic_timer: fix armv8 timer desc 2018-10-21 02:12:26 +00:00
arm64 Address the warning regarding duplicate option 'GEOM_PART_GPT' when 2018-10-07 15:54:13 +00:00
bsm
cam Move 32-bit compat support for CDIOREADTOCENTRYS to the right place. 2018-10-02 23:23:56 +00:00
cddl powerpc/dtrace: Use explicit bit numbers to mask out PSL_EE 2018-10-21 02:08:57 +00:00
compat Correct COMPAT* macro names in syscalls.master 2018-10-15 21:35:57 +00:00
conf Remove stray fatm reference. 2018-10-21 16:29:32 +00:00
contrib Import CK as of commit 5221ae2f3722a78c7fc41e47069ad94983d3bccb. 2018-10-16 02:30:13 +00:00
crypto Embedded chacha: Remove some harmless dead stores in keystream mode 2018-10-20 22:17:16 +00:00
ddb ddb: Enable 'thread <address>' 2018-10-20 20:45:49 +00:00
dev Split out the virtio mmio FDT attachment and add an ACPI attachment. 2018-10-21 15:43:20 +00:00
dts Revert r339421 due to unintended files included to commit. 2018-10-18 15:17:58 +00:00
fs MFH r338661 through r339253. 2018-10-09 14:27:55 +00:00
gdb
geom MFH r338661 through r339200. 2018-10-05 17:53:47 +00:00
gnu dts: Import DTS for arm64 2018-08-23 13:21:01 +00:00
i386 Add an assertion to pmap_enter(). 2018-10-20 20:53:35 +00:00
isa Reapply, with minor tweaks, r338025, from the original commit: 2018-09-26 17:12:14 +00:00
kern Remove stray refernce to pdq. Like the infamous twenty first of Johan 2018-10-21 16:49:49 +00:00
kgssapi OpenCrypto: Convert sessions to opaque handles instead of integers 2018-07-18 00:56:25 +00:00
libkern mcount: tidy up ANSIfication 2018-10-20 22:39:35 +00:00
mips Remove all the really old junk that never would be used with an OCTEON 2018-10-21 07:56:58 +00:00
modules Retire IPFIREWALL_NAT64_DIRECT_OUTPUT kernel option. And add ability 2018-10-21 16:29:12 +00:00
net Rework if_ipsec(4) to use epoch(9) instead of rmlock. 2018-10-21 18:24:20 +00:00
net80211 Fix misspellings of transmitter/transmitted 2018-08-10 20:37:32 +00:00
netgraph Remove the Yarrow PRNG algorithm option in accordance with due notice 2018-08-26 12:51:46 +00:00
netinet Add handling for appearing/disappearing of ingress addresses to if_gre(4). 2018-10-21 18:13:45 +00:00
netinet6 Add handling for appearing/disappearing of ingress addresses to if_gre(4). 2018-10-21 18:13:45 +00:00
netipsec Add sadb_x_sa2 extension to SADB_ACQUIRE requests. 2018-10-21 14:19:16 +00:00
netpfil Do not decrement RST life time if keep_alive is not turned on. 2018-10-21 16:44:57 +00:00
netsmb Make timespecadd(3) and friends public 2018-07-30 15:46:40 +00:00
nfs Switch RIB and RADIX_NODE_HEAD lock from rwlock(9) to rmlock(9). 2018-06-16 08:26:23 +00:00
nfsclient
nfsserver
nlm
ofed Introduce and use sgid_index in CM requests in ibcore. 2018-09-09 07:20:15 +00:00
opencrypto Add per-session locking to cryptosoft (swcr). 2018-09-26 20:23:12 +00:00
powerpc powerpc/mpc85xx: Make Freescale PCI bridge driver a subclass of ofw_pcib_pci 2018-10-21 02:39:13 +00:00
riscv Support RISC-V implementations that do not manage the A and D bits 2018-10-18 15:25:07 +00:00
rpc Set SO_SNDTIMEO in the client side krpc when CLSET_TIMEOUT is done. 2018-07-20 12:03:16 +00:00
security Rework the logic around quick checks for auditing that take place at 2018-10-02 15:58:17 +00:00
sparc64 Prepare the kernel linker to handle PC-relative ifunc relocations. 2018-08-22 20:44:30 +00:00
sys random(4): Translate a comment requirement into a compile-time invariant 2018-10-20 20:49:37 +00:00
teken Implement ECMA-48 "REP", some Linuxen have started emitting them recently. 2018-10-21 08:29:36 +00:00
tests epoch_test: fix compile 2018-07-15 00:31:17 +00:00
tools make_dtb: Always add root directory in the include path 2018-08-23 13:23:21 +00:00
ufs Correct panic messages. 2018-09-22 17:05:49 +00:00
vm Unindent vm_map_simplify_entry() after r339506. 2018-10-21 00:11:56 +00:00
x86 Create some global domainsets and refactor NUMA registration. 2018-10-20 17:36:00 +00:00
xdr
xen xen: legacy PVH fixes for the new interrupt count 2018-09-13 07:14:11 +00:00
Makefile