freebsd-nq/sys/net
Alexander V. Chernikov 8a0d57baec [fib algo] Delay algo init at fib growth to to allow to reliably use rib KPI.
Currently, most of the rib(9) KPI does not use rnh pointers, using
 fibnum and family parameters to determine the rib pointer instead.
This works well except for the case when we initialize new rib pointers
 during fib growth.
In that case, there is no mapping between fib/family and the new rib,
 as an entirely new rib pointer array is populated.

Address this by delaying fib algo initialization till after switching
 to the new pointer array and updating the number of fibs.
Set datapath pointer to the dummy function, so the potential callers
 won't crash the kernel in the brief moment when the rib exists, but
 no fib algo is attached.

This change allows to avoid creating duplicates of existing rib functions,
 with altered signature.

Differential Revision: https://reviews.freebsd.org/D29969
MFC after:	1 week
2021-04-27 22:10:08 +00:00
..
altq altq: Increase maximum number of CBQ and HFSC classes 2021-03-04 20:58:22 +01:00
route [fib algo] Delay algo init at fib growth to to allow to reliably use rib KPI. 2021-04-27 22:10:08 +00:00
bpf_buffer.c
bpf_buffer.h
bpf_filter.c
bpf_jitter.c
bpf_jitter.h
bpf_zerocopy.c
bpf_zerocopy.h
bpf.c
bpf.h
bpfdesc.h
bridgestp.c bridgestp: validate timer values in config BPDU 2021-04-19 12:09:18 +02:00
bridgestp.h
debugnet_inet.c
debugnet_int.h
debugnet.c Allow to specify debugnet fib in sysctl/tunable. 2021-04-10 13:47:49 +00:00
debugnet.h
dlt.h
ethernet.h bridge: Remove members when assigned to a new vnet 2021-02-23 13:54:07 +01:00
firewire.h
ieee8023ad_lacp.c
ieee8023ad_lacp.h
ieee_oui.h
if_arp.h
if_bridge.c bridge: Remove members when assigned to a new vnet 2021-02-23 13:54:07 +01:00
if_bridgevar.h bridge: fix STP roles and protos strings 2021-02-01 15:27:06 +01:00
if_clone.c Fix subinterface vlan creation. 2021-01-29 21:43:20 +00:00
if_clone.h
if_dead.c
if_debug.c
if_disc.c
if_dl.h
if_edsc.c
if_enc.c
if_enc.h
if_epair.c
if_ethersubr.c bridge: Remove members when assigned to a new vnet 2021-02-23 13:54:07 +01:00
if_fwsubr.c if_firewire: fixing panic upon packet reception for VNET build 2021-04-13 22:59:58 +00:00
if_gif.c mbuf: add a way to mark flowid as calculated from the internal headers 2021-03-31 14:38:26 +03:00
if_gif.h
if_gre.c
if_gre.h
if_infiniband.c
if_ipsec.c
if_ipsec.h
if_lagg.c This pulls over all the changes that are in the netflix 2021-01-28 11:53:05 -05:00
if_lagg.h
if_llatbl.c Fix setting static entries for arp/ndp. 2021-02-20 18:26:35 +00:00
if_llatbl.h
if_llc.h
if_loop.c
if_me.c
if_media.c
if_media.h
if_mib.c
if_mib.h
if_pflog.h
if_pfsync.h pfsync: Expose PFSYNCF_OK flag to userspace 2021-04-26 14:31:17 +02:00
if_sppp.h
if_spppfr.c
if_spppsubr.c
if_stf.c net: Introduce IPV6_DSCP(), IPV6_ECN() and IPV6_TRAFFIC_CLASS() macros 2021-03-04 20:56:48 +01:00
if_tap.h
if_tun.h
if_tuntap.c
if_types.h base: remove if_wg(4) and associated utilities, manpage 2021-03-17 09:14:48 -05:00
if_var.h Enforce check for using the return result for ifa?_try_ref(). 2021-04-05 03:35:19 +01:00
if_vlan_var.h
if_vlan.c Fix vlan creation for the older ifconfig(8) binaries. 2021-04-11 18:13:09 +01:00
if_vxlan.c vxlan: correct interface MTU when using hw offloads 2021-03-31 14:38:26 +03:00
if_vxlan.h
if.c Re-enable network ioctls in capability mode 2021-04-23 09:22:49 -04:00
if.h Widen ifnet_detach_sxlock coverage 2021-02-11 16:12:29 +01:00
ifdi_if.m iflib: add support for admin completion queues 2021-03-03 00:40:47 +01:00
iflib_clone.c iflib: allow clone detach if not yet init 2021-03-09 13:49:13 -06:00
iflib_private.h
iflib.c iflib: Improve mapping of TX/RX queues to CPUs 2021-04-26 01:06:34 -04:00
iflib.h iflib: Make if_shared_ctx_t a pointer to const 2021-03-08 12:39:06 -05:00
ifq.h
infiniband.h
mp_ring.c
mp_ring.h
mppc.h
mppcc.c
mppcd.c
netisr_internal.h
netisr.c
netisr.h
netmap_legacy.h netmap: add kernel support for the "offsets" feature 2021-03-29 16:29:01 +00:00
netmap_user.h netmap: restore commit a56e6334d1 2021-04-02 10:45:47 +00:00
netmap_virt.h netmap: add kernel support for the "offsets" feature 2021-03-29 16:29:01 +00:00
netmap.h netmap: several typo fixes 2021-04-02 07:01:20 +00:00
paravirt.h
pfil.c
pfil.h
pfkeyv2.h
pfvar.h pf: Allow multiple labels to be set on a rule 2021-04-26 14:14:21 +02:00
ppp_defs.h
radix.c Appease -Wsign-compare in radix.c 2021-04-10 13:48:25 +00:00
radix.h
raw_cb.c
raw_cb.h
raw_usrreq.c Revert "SO_RERROR indicates that receive buffer overflows should be handled as errors." 2021-02-08 22:32:32 +00:00
rndis.h Hyper-V: hn: Enable vSwitch RSC support in hn netvsc driver 2021-03-12 04:35:16 +00:00
route.c Re-enable network ioctls in capability mode 2021-04-23 09:22:49 -04:00
route.h Re-enable network ioctls in capability mode 2021-04-23 09:22:49 -04:00
rss_config.c
rss_config.h
rtsock.c Fix rtsock sockaddr alignment. 2021-04-27 08:04:19 +00:00
sff8436.h
sff8472.h
slcompress.c
slcompress.h
toeplitz.c
toeplitz.h
vnet.c Widen ifnet_detach_sxlock coverage 2021-02-11 16:12:29 +01:00
vnet.h