freebsd-skq/sys
Bjoern A. Zeeb 1a117215c7 Reduce the vnet_set module size of ip_mroute to allow loading as a module.
With VIMAGE kernels modules get special treatment as they need
to also keep the original values and make copies for each instance.
For that a few pages of vnet modspace are provided and the
kernel-linker and the VNET framework know how to deal with things.
When the modspace is (almost) full, other modules which would
overflow the modspace cannot be loaded and kldload will fail.

ip_mroute uses a lot of variable space, mostly be four big arrays:
set_vnet 0000000000000510 vnet_entry_multicast_register_if
set_vnet 0000000000000700 vnet_entry_viftable
set_vnet 0000000000002000 vnet_entry_bw_meter_timers
set_vnet 0000000000002800 vnet_entry_bw_upcalls

Dynamically malloc the three big ones for each instance we need
and free them again on vnet teardown (the 4th is an ifnet).
That way they only need module space for a single pointer and
allow a lot more modules using virtualized variables to be loaded
on a VNET kernel.

PR:		206583
Reviewed by:	hselasky, kp
MFC after:	3 weeks
Differential Revision:	https://reviews.freebsd.org/D22443
2019-11-19 15:38:55 +00:00
..
amd64 Convert in-tree sysent targets to use new makesyscalls.lua 2019-11-18 23:28:23 +00:00
arm bcm2835_sdhci: formalize DMA tag/segment scaling requirements 2019-11-19 04:23:57 +00:00
arm64 Return 0 from ptrace_set_pc as it now completes successfully. 2019-11-19 13:28:59 +00:00
bsm Jail and capability mode for shm_rename; add audit support for shm_rename 2019-11-18 13:31:16 +00:00
cam Fix a race between daopen and damediapoll 2019-11-13 01:58:43 +00:00
cddl MFV r354378,r354379,r354386: 10499 Multi-modifier protection (MMP) 2019-11-18 09:38:35 +00:00
compat sysent: regenerate after r354835 2019-11-18 23:31:12 +00:00
conf fix up r354804, add new ZFS file mmp.c to kernel files 2019-11-18 10:46:55 +00:00
contrib Update to Zstandard 1.4.4 2019-11-16 16:39:08 +00:00
crypto Fix the armv8 crypto driver after r354170. 2019-10-30 10:41:10 +00:00
ddb ddb(4): Add some support for lexing IPv6 addresses 2019-09-09 16:32:23 +00:00
dev hyperv/storvsc: stash a pointer to hv_storvsc_request in ccb 2019-11-19 07:20:59 +00:00
dts dtso: allwinner: Add an overlay for H3 thermal node 2019-08-24 13:26:34 +00:00
fs Replace OBJ_MIGHTBEDIRTY with a system using atomics. Remove the TMPFS_DIRTY 2019-10-29 21:06:34 +00:00
gdb gdb(4): Implement support for NoAckMode 2019-10-17 22:37:25 +00:00
geom Add GEOM attribute to report physical device name, and report it 2019-11-09 17:30:19 +00:00
gnu arm: dts: ti: Fix mmc3 instance by setting it to disabled 2019-10-07 08:11:49 +00:00
i386 Convert in-tree sysent targets to use new makesyscalls.lua 2019-11-18 23:28:23 +00:00
isa
kern sysent: regenerate after r354835 2019-11-18 23:31:12 +00:00
kgssapi Stop using des_cblock * for arguments to DES functions. 2019-08-26 17:25:07 +00:00
libkern Rename the macros to extract a single arm64 ID field. 2019-10-30 10:06:57 +00:00
mips Combine ELF sysvecs for MIPS to reduce code duplication. 2019-11-15 19:00:20 +00:00
modules Add the pvscsi driver to the tree. 2019-11-14 23:31:20 +00:00
net if_llatbl: change htable_unlink_entry() to early exist if no work to do 2019-11-15 23:12:19 +00:00
net80211 Don't use if_maddr_rlock() in 802.11, use epoch(9) directly instead. 2019-10-10 23:55:33 +00:00
netgraph Fix regression from r353026. Pointer was increased instead of value 2019-11-02 03:09:17 +00:00
netinet Reduce the vnet_set module size of ip_mroute to allow loading as a module. 2019-11-19 15:38:55 +00:00
netinet6 mld: fix epoch assertion 2019-11-19 14:53:13 +00:00
netipsec netinet*: replace IP6_EXTHDR_GET() 2019-11-15 21:44:17 +00:00
netpfil pf: Must be in NET_EPOCH to call icmp_error 2019-10-18 03:36:26 +00:00
netsmb Stop using des_cblock * for arguments to DES functions. 2019-08-26 17:25:07 +00:00
nfs
nfsclient
nfsserver
nlm
ofed Prevent potential underflow in ibcore. 2019-11-15 11:46:53 +00:00
opencrypto kTLS support for TLS 1.3 2019-09-27 19:17:40 +00:00
powerpc powerpc/pmap: Remove an unused error from moea64_pvo_enter() 2019-11-19 02:00:13 +00:00
riscv RISC-V: busdma_bounce: fix BUS_DMA_ALLOCNOW for non-paged aligned sizes 2019-11-16 01:25:51 +00:00
rpc
security Jail and capability mode for shm_rename; add audit support for shm_rename 2019-11-18 13:31:16 +00:00
sparc64 Set MALLOC_DEBUG_MAXZONES=1 in GENERIC-NODEBUG configurations. 2019-11-18 20:03:28 +00:00
sys Don't sanitize linker_set 2019-11-19 14:46:28 +00:00
teken Adjust teken to allow build as part of loader 2019-09-05 18:07:40 +00:00
tests
tools Add makesyscalls.lua, a rewrite of makesyscalls.sh 2019-11-17 14:08:19 +00:00
ufs In ufs_dir_dd_ino(), always initialize *dd_vp since the caller expects it. 2019-11-12 00:32:33 +00:00
vm Drop the extra argument from swp_pager_meta_ctl and have it do lookup 2019-11-19 08:06:31 +00:00
x86 bus_dma_dmar_set_buswide(9): KPI to indicate that the whole dmar 2019-11-18 20:56:59 +00:00
xdr
xen
Makefile