svn commit: r355888 - in head/sys: netinet netinet6
Alexander V. Chernikov
melifaro at FreeBSD.org
Wed Dec 18 22:10:57 UTC 2019
Author: melifaro
Date: Wed Dec 18 22:10:56 2019
New Revision: 355888
URL: https://svnweb.freebsd.org/changeset/base/355888
Log:
Remove useless code from in6_rmx.c
The code in questions walks IPv6 tree every 60 seconds and looks into
the routes with non-zero expiration time (typically, redirected routes).
For each such route it sets RTF_PROBEMTU flag at the expiration time.
No other part of the kernel checks for RTF_PROBEMTU flag.
RTF_PROBEMTU was defined 21 years ago, 30 Jun 1999, as RTF_PROTO1.
RTF_PROTO1 is a de-facto standard indication of a route installed
by a routing daemon for a last decade.
Reviewed by: bz, ae
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D22865
Modified:
head/sys/netinet/icmp6.h
head/sys/netinet6/in6_rmx.c
Modified: head/sys/netinet/icmp6.h
==============================================================================
--- head/sys/netinet/icmp6.h Wed Dec 18 21:41:53 2019 (r355887)
+++ head/sys/netinet/icmp6.h Wed Dec 18 22:10:56 2019 (r355888)
@@ -687,8 +687,6 @@ void kmod_icmp6stat_inc(int statnum);
#define ICMPV6CTL_NODEINFO_OLDMCPREFIX 25
#define ICMPV6CTL_MAXID 26
-#define RTF_PROBEMTU RTF_PROTO1
-
#ifdef _KERNEL
# ifdef __STDC__
struct rtentry;
Modified: head/sys/netinet6/in6_rmx.c
==============================================================================
--- head/sys/netinet6/in6_rmx.c Wed Dec 18 21:41:53 2019 (r355887)
+++ head/sys/netinet6/in6_rmx.c Wed Dec 18 22:10:56 2019 (r355888)
@@ -153,64 +153,8 @@ in6_addroute(void *v_arg, void *n_arg, struct radix_he
}
/*
- * Age old PMTUs.
- */
-struct mtuex_arg {
- struct rib_head *rnh;
- time_t nextstop;
-};
-VNET_DEFINE_STATIC(struct callout, rtq_mtutimer);
-#define V_rtq_mtutimer VNET(rtq_mtutimer)
-
-static int
-in6_mtuexpire(struct rtentry *rt, void *rock)
-{
- struct mtuex_arg *ap = rock;
-
- if (rt->rt_expire && !(rt->rt_flags & RTF_PROBEMTU)) {
- if (rt->rt_expire <= time_uptime) {
- rt->rt_flags |= RTF_PROBEMTU;
- } else {
- ap->nextstop = lmin(ap->nextstop, rt->rt_expire);
- }
- }
-
- return (0);
-}
-
-#define MTUTIMO_DEFAULT (60*1)
-
-static void
-in6_mtutimo_setwa(struct rib_head *rnh, uint32_t fibum, int af,
- void *_arg)
-{
- struct mtuex_arg *arg;
-
- arg = (struct mtuex_arg *)_arg;
-
- arg->rnh = rnh;
-}
-
-static void
-in6_mtutimo(void *rock)
-{
- CURVNET_SET_QUIET((struct vnet *) rock);
- struct timeval atv;
- struct mtuex_arg arg;
-
- rt_foreach_fib_walk(AF_INET6, in6_mtutimo_setwa, in6_mtuexpire, &arg);
-
- atv.tv_sec = MTUTIMO_DEFAULT;
- atv.tv_usec = 0;
- callout_reset(&V_rtq_mtutimer, tvtohz(&atv), in6_mtutimo, rock);
- CURVNET_RESTORE();
-}
-
-/*
* Initialize our routing tree.
*/
-VNET_DEFINE_STATIC(int, _in6_rt_was_here);
-#define V__in6_rt_was_here VNET(_in6_rt_was_here)
int
in6_inithead(void **head, int off)
@@ -224,12 +168,6 @@ in6_inithead(void **head, int off)
rh->rnh_addaddr = in6_addroute;
*head = (void *)rh;
- if (V__in6_rt_was_here == 0) {
- callout_init(&V_rtq_mtutimer, 1);
- in6_mtutimo(curvnet); /* kick off timeout first time */
- V__in6_rt_was_here = 1;
- }
-
return (1);
}
@@ -238,7 +176,6 @@ int
in6_detachhead(void **head, int off)
{
- callout_drain(&V_rtq_mtutimer);
rt_table_destroy((struct rib_head *)(*head));
return (1);
More information about the svn-src-all
mailing list