opnsense-src/sys
Alexander V. Chernikov 09ee0fc023 if_clone: rework cloning KPI
The current cloning KPI does not provide a way of creating interfaces
 with parameres from within kernel. The reason is that those parameters
 are passed as an opaque pointer and it is not possible to specify whether
 this pointer references kernel-space or user-space.
Instead of just adding a flag, generalise the KPI to simplify the
 extension process. Unify current notion of `SIMPLE` and `ADVANCED` users
 by leveraging newly-added IFC_C_AUTOUNIT flag to automatically pick
 unit number, which is a primary feature of the "SIMPLE" KPI.
Use extendable structures everywhere instead of passing function
 pointers or parameters.
Isolate all parts of the oldKPI under `CLONE_COMPAT_13` so it can be safely
 merged back to 13. Old KPI will be removed after the merge.

Differential Revision: https://reviews.freebsd.org/D36632
MFC after:	2 weeks
2022-09-22 10:18:31 +00:00
..
amd64 tcp: make CUBIC the default congestion control mechanism. 2022-09-13 12:09:21 +02:00
arm Use DEFINE_CLASS_0 in the arm generic timer 2022-09-21 10:59:14 +01:00
arm64 Teach the GICv3 driver about a vgic child 2022-09-21 10:59:13 +01:00
bsm
cam CTL: Validate IOCTL parameters. 2022-09-06 21:58:27 -04:00
cddl Adjust function definition in riscv's dtrace_subr.c to avoid clang 15 warning 2022-08-14 21:27:34 +02:00
compat LinuxKPI: device.h remove duplicate #include 2022-09-21 17:25:34 +00:00
conf zfs: merge openzfs/zfs@c629f0bf6 2022-09-21 14:17:13 +02:00
contrib zfs: fix powerpc build broken in c7046f76c2 2022-09-22 12:04:28 +02:00
crypto Fix the IV length in the armv8 AES GCM code 2022-09-06 13:11:04 +01:00
ddb Adjust db_flush_line() definition to avoid clang 15 warning 2022-07-19 20:37:15 +02:00
dev lio: Remove unneeded include. 2022-09-21 14:53:00 -06:00
dts sys/dts: Remove MIPS files 2022-05-20 17:11:27 +01:00
fs pseudofs: use the vget_prep/vget_finish idiom 2022-09-19 20:08:40 +00:00
gdb ddb: use _FLAGS command macros where appropriate 2022-07-05 11:56:55 -03:00
geom Adjust g_waitidle() visibility and definition 2022-08-02 21:11:10 +03:00
gnu bwn: eliminate dead writes in BWN_GPL_PHY 2022-05-04 09:32:59 -04:00
i386 i386: Make boot loader smaller by reducing size of bootinfo 2022-09-16 09:18:57 -06:00
isa Adjust function definition in isa's pnp.c to avoid clang 15 warning 2022-07-27 21:13:59 +02:00
kern debugnet: Fix parameter order in the calls to m_get() 2022-09-21 06:55:20 -04:00
kgssapi kgssapi krb5: Remove unused variables. 2022-04-06 16:45:29 -07:00
libkern libkern: Fix a typo in a source code comment 2022-06-05 08:57:26 +02:00
modules zfs: merge openzfs/zfs@c629f0bf6 2022-09-21 14:17:13 +02:00
net if_clone: rework cloning KPI 2022-09-22 10:18:31 +00:00
net80211 LinuxKPI: 80211 (+net80211): update and cleanup headers 2022-09-09 18:40:23 +00:00
netgraph netgraph(4): Don't process NGQF_MESG items in NET_EPOCH context. 2022-09-13 17:20:41 +03:00
netinet tcp: send ACKs when requested 2022-09-22 12:12:11 +02:00
netinet6 Correct IPv6 MLD group state string table 2022-09-19 09:01:36 -04:00
netipsec protosw: refactor protosw and domain static declaration and load 2022-08-17 11:50:32 -07:00
netpfil netpfil: Fix some typos in source code comments 2022-09-15 10:24:00 +02:00
netsmb smb_smb_treedisconnect: eliminate write only variable mbp 2022-04-04 22:30:57 -06:00
nfs nfs: skip bootpc when vfs.root.mountfrom is other than nfs 2022-05-31 16:07:27 -03:00
nfsclient
nfsserver
nlm sys/nlm: Use C99 fixed-width integer types. 2021-12-28 09:42:42 -08:00
ofed ibcore: Add support for RDMA/RoCE using VLAN(4) devices. 2022-08-22 10:04:26 +02:00
opencrypto opencrypto: mark INVARIANTS variables as __diagused 2022-08-10 15:35:29 -04:00
powerpc tcp: make CUBIC the default congestion control mechanism. 2022-09-13 12:09:21 +02:00
riscv riscv: Add da9063_pmic and da9063_rtc to GENERIC and NOTES 2022-09-13 17:46:28 +01:00
rpc nfsd: Allow multiple instances of rpc.tlsservd 2022-08-22 13:54:24 -07:00
security vfs: introduce V_PCATCH to stop abusing PCATCH 2022-09-17 15:41:37 +00:00
sys Use 0 and 1, not false and true, in tree.h changes. 2022-09-20 23:36:40 -05:00
teken teken: color #3 is yellow not brown - use TC_YELLOW as the name 2022-03-12 09:17:29 -05:00
tests
tools sound(4): Fix order of parameters for custom equalizer band pass filter. 2022-08-22 10:04:26 +02:00
ufs vfs: always retain path buffer after lookup 2022-09-17 09:10:38 +00:00
vm vm/vm.h: cleanup 2022-09-17 11:58:52 +03:00
x86 i386: check that trap() and syscall() run on the thread kstack 2022-09-14 18:46:32 +03:00
xdr sys/xdr: Use C99 fixed-width integer types. 2021-12-28 09:43:26 -08:00
xen xenbus: improve device tracking 2022-06-07 12:29:53 +02:00
Makefile Fix 'make cscope' with ALL_ARCH defined 2022-01-07 11:53:52 -04:00