freebsd-nq/sys/net
Alexander V. Chernikov 7f948f12f6 Finish r274175: do control plane MTU tracking.
Update route MTU in case of ifnet MTU change.
Add new RTF_FIXEDMTU to track explicitly specified MTU.

Old behavior:
ifconfig em0 mtu 1500->9000 -> all routes traversing em0 do not change MTU.
User has to manually update all routes.
ifconfig em0 mtu 9000->1500 -> all routes traversing em0 do not change MTU.
However, if ip[6]_output finds route with rt_mtu > interface mtu, rt_mtu
gets updated.

New behavior:
ifconfig em0 mtu 1500->9000 -> all interface routes in all fibs gets updated
with new MTU unless RTF_FIXEDMTU flag set on them.
ifconfig em0 mtu 9000->1500 -> all routes in all fibs gets updated with new
MTU unless RTF_FIXEDMTU flag set on them AND rt_mtu is less than ifp mtu.

route add ... -mtu XXX automatically sets RTF_FIXEDMTU flag.
route change .. -mtu 0 automatically removes RTF_FIXEDMTU flag.

PR:		194238
MFC after:	1 month
CR:		D1125
2014-11-17 01:05:29 +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 Remove SYSCTL_VNET_* macros, and simply put CTLFLAG_VNET where needed. 2014-11-07 09:39:05 +00:00
bpf.h
bpfdesc.h
bridgestp.c
bridgestp.h
ethernet.h Move struct ether_vlan_header to ethernet.h, out of if_vlan_var.h, 2014-11-11 10:22:33 +00:00
fddi.h
firewire.h
flowtable.c Remove SYSCTL_VNET_* macros, and simply put CTLFLAG_VNET where needed. 2014-11-07 09:39:05 +00:00
flowtable.h
ieee8023ad_lacp.c - Move L2 addr configuration for the primary port to a taskqueue. This fixes 2014-10-05 02:34:21 +00:00
ieee8023ad_lacp.h Use printb() for boolean flags in ro_opts and actor_state for LACP. 2014-10-05 02:37:01 +00:00
ieee_oui.h
if_arc.h
if_arcsubr.c
if_arp.h Remove struct arpcom. It is unused by most interface types, that allocate 2014-11-07 15:14:10 +00:00
if_atm.h
if_atmsubr.c
if_bridge.c Remove struct arpcom. It is unused by most interface types, that allocate 2014-11-07 15:14:10 +00:00
if_bridgevar.h
if_clone.c Use standard mtx(9), rwlock(9), sx(9) system initialization macros 2014-11-09 11:11:08 +00:00
if_clone.h Use standard mtx(9), rwlock(9), sx(9) system initialization macros 2014-11-09 11:11:08 +00:00
if_dead.c
if_debug.c
if_disc.c Make checks for rt_mtu generic: 2014-11-06 13:13:09 +00:00
if_dl.h
if_edsc.c Virtualize if_edsc(4). 2014-10-05 21:27:26 +00:00
if_enc.c Our packet filters use mbuf's rcvif pointer to determine incoming interface. 2014-10-07 13:31:04 +00:00
if_enc.h
if_epair.c Virtualize if_epair(4). An if_xname check for both "a" and "b" interfaces 2014-10-10 06:45:13 +00:00
if_ethersubr.c Remove remnants of if_ef(4). 2014-11-09 11:13:15 +00:00
if_fddisubr.c Remove struct arpcom. It is unused by most interface types, that allocate 2014-11-07 15:14:10 +00:00
if_fwsubr.c
if_gif.c Remove SYSCTL_VNET_* macros, and simply put CTLFLAG_VNET where needed. 2014-11-07 09:39:05 +00:00
if_gif.h Overhaul if_gif(4): 2014-10-14 13:31:47 +00:00
if_gre.c After r274246 make the tree compile again. 2014-11-08 14:41:32 +00:00
if_gre.h Overhaul if_gre(4). 2014-11-07 19:13:19 +00:00
if_iso88025subr.c Remove struct arpcom. It is unused by most interface types, that allocate 2014-11-07 15:14:10 +00:00
if_lagg.c - Fix lladdr configuration which could prevent LACP mode from working. 2014-10-17 09:08:44 +00:00
if_lagg.h - Move L2 addr configuration for the primary port to a taskqueue. This fixes 2014-10-05 02:34:21 +00:00
if_llatbl.c
if_llatbl.h
if_llc.h
if_loop.c Make checks for rt_mtu generic: 2014-11-06 13:13:09 +00:00
if_me.c Overhaul if_gre(4). 2014-11-07 19:13:19 +00:00
if_media.c
if_media.h
if_mib.c Remove SYSCTL_VNET_* macros, and simply put CTLFLAG_VNET where needed. 2014-11-07 09:39:05 +00:00
if_mib.h
if_pflog.h
if_pfsync.h
if_sppp.h
if_spppfr.c
if_spppsubr.c Replace some calls to fuword() by fueword() with proper error checking. 2014-10-28 15:28:20 +00:00
if_stf.c Make checks for rt_mtu generic: 2014-11-06 13:13:09 +00:00
if_stf.h
if_tap.c
if_tap.h
if_tapvar.h
if_tun.c This is the much-discussed major upgrade to the random(4) device, known to you all as /dev/random. 2014-10-30 21:21:53 +00:00
if_tun.h
if_types.h Renove faith(4) and faithd(8) from base. It looks like industry 2014-11-09 21:33:01 +00:00
if_var.h Fix some minor TSO issues: 2014-11-11 12:05:59 +00:00
if_vlan_var.h Move struct ether_vlan_header to ethernet.h, out of if_vlan_var.h, 2014-11-11 10:22:33 +00:00
if_vlan.c Virtualize net.link.vlan.soft_pad. 2014-10-02 05:56:17 +00:00
if_vxlan.c Use the size of the Ethernet address, not the entire header, when 2014-10-21 05:45:57 +00:00
if_vxlan.h Add vxlan interface 2014-10-20 14:42:42 +00:00
if.c Finish r274175: do control plane MTU tracking. 2014-11-17 01:05:29 +00:00
if.h
ifq.h Remove duplicate declaraton of the if_inc_counter() function after r272244. 2014-09-28 15:38:21 +00:00
iso88025.h
netisr_internal.h
netisr.c
netisr.h
netmap_user.h return kernel-supplied error if available. 2014-11-10 08:31:56 +00:00
netmap.h
paravirt.h
pfil.c
pfil.h
pfkeyv2.h
pfvar.h
ppp_defs.h
radix_mpath.c
radix_mpath.h
radix.c since we cast a pointer, use the correct signedness 2014-10-22 18:55:36 +00:00
radix.h
raw_cb.c
raw_cb.h
raw_usrreq.c
route.c Finish r274175: do control plane MTU tracking. 2014-11-17 01:05:29 +00:00
route.h Finish r274175: do control plane MTU tracking. 2014-11-17 01:05:29 +00:00
rtsock.c
sff8436.h
sff8472.h
slcompress.c
slcompress.h
vnet.c
vnet.h Remove SYSCTL_VNET_* macros, and simply put CTLFLAG_VNET where needed. 2014-11-07 09:39:05 +00:00
zlib.c
zlib.h
zutil.h