freebsd-skq/tests/sys
melifaro b17accbc49 Bring back redirect route expiration.
Redirect (and temporal) route expiration was broken a while ago.
This change brings route expiration back, with unified IPv4/IPv6 handling code.

It introduces net.inet.icmp.redirtimeout sysctl, allowing to set
 an expiration time for redirected routes. It defaults to 10 minutes,
 analogues with net.inet6.icmp6.redirtimeout.

Implementation uses separate file, route_temporal.c, as route.c is already
 bloated with tons of different functions.
Internally, expiration is implemented as an per-rnh callout scheduled when
 route with non-zero rt_expire time is added or rt_expire is changed.
 It does not add any overhead when no temporal routes are present.

Callout traverses entire routing tree under wlock, scheduling expired routes
 for deletion and calculating the next time it needs to be run. The rationale
 for such implemention is the following: typically workloads requiring large
 amount of routes have redirects turned off already, while the systems with
 small amount of routes will not inhibit large overhead during tree traversal.

This changes also fixes netstat -rn display of route expiration time, which
 has been broken since the conversion from kread() to sysctl.

Reviewed by:	bz
MFC after:	3 weeks
Differential Revision:	https://reviews.freebsd.org/D23075
2020-01-22 13:53:18 +00:00
..
acl Set required program for all acl tests 2019-09-05 18:54:46 +00:00
aio lio_listio_empty_nowait_thread sometimes does *not* hang. 2020-01-04 18:59:46 +00:00
audit Fix and simplify code by using ATF_REQUIRE_FEATURE macro 2019-04-01 14:21:32 +00:00
auditpipe Introduce test program for auditpipe(4) 2018-07-26 00:16:41 +00:00
capsicum Integrate capsicum-test into the FreeBSD test suite 2019-04-01 21:24:50 +00:00
cddl zfs: multiple improvements to the zpool_add tests 2019-10-10 02:17:45 +00:00
common pkgbase: Put the sys/common test into the tests package 2019-09-05 14:14:07 +00:00
devrandom random(4): Fortuna: allow increased concurrency 2019-06-17 20:29:13 +00:00
fifo other: Fix several typos and minor errors 2017-12-27 03:23:58 +00:00
file Revert r337929 2018-08-16 22:04:00 +00:00
fs tests: fusefs: silence remaining unsigned/signed comparison warnings 2020-01-10 21:51:27 +00:00
geom Revert r355861 because the issue has been fixed in r356443 2020-01-07 17:49:49 +00:00
kern procdesc: allow to collect status through wait(1) if process is traced 2019-11-25 18:33:21 +00:00
kqueue Temporarily skip flakey test cases 2018-12-06 09:22:35 +00:00
mac DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
mqueue DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
net Bring back redirect route expiration. 2020-01-22 13:53:18 +00:00
netinet Bring back redirect route expiration. 2020-01-22 13:53:18 +00:00
netinet6 Bring back redirect route expiration. 2020-01-22 13:53:18 +00:00
netipsec ipsec tests: Skip if ipsec.ko is not loaded 2019-05-16 02:18:57 +00:00
netmap netmap: add test cases for multiple host rings 2019-04-13 12:50:47 +00:00
netpfil Reenable netinet6 and netpfil tests on i386, net/scapy 2.4.3_2 contains the fix 2019-11-08 18:56:02 +00:00
opencrypto tests/sys/opencrypto: enable armv8crypto on aarch64 2019-08-10 15:53:42 +00:00
pjdfstest DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
posixshm posixshm: implement posix_fallocate(2) 2020-01-08 19:08:44 +00:00
sys Fix gcc build 2019-11-24 15:03:35 +00:00
vfs vfs_lookup: Allow PATH_MAX-1 symlinks 2017-11-17 19:25:39 +00:00
vm Adjust tests after page fault changes in r352807 2019-09-29 15:17:58 +00:00
Makefile frag6: import a set of test cases 2019-10-21 09:33:45 +00:00
Makefile.depend
Makefile.inc Use MK_CHECK_USE_SANDBOX in tests/..., to deal with the fact that 2017-08-02 22:24:08 +00:00