Remove unused rnh_close callback from rtable & cleanup depends.
rnh_close callbackes was used by the in[6]_clsroute() handlers, doing cleanup in the route cloning code. Route cloning was eliminated somewhere around r186119. Last callback user was eliminated in r186215, 11 years ago. Differential Revision: https://reviews.freebsd.org/D24793
This commit is contained in:
parent
6851341a33
commit
4a6ee281d9
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=360889
@ -426,11 +426,8 @@ sys_setfib(struct thread *td, struct setfib_args *uap)
|
|||||||
void
|
void
|
||||||
rtfree(struct rtentry *rt)
|
rtfree(struct rtentry *rt)
|
||||||
{
|
{
|
||||||
struct rib_head *rnh;
|
|
||||||
|
|
||||||
KASSERT(rt != NULL,("%s: NULL rt", __func__));
|
KASSERT(rt != NULL,("%s: NULL rt", __func__));
|
||||||
rnh = rt_tables_get_rnh(rt->rt_fibnum, rt_key(rt)->sa_family);
|
|
||||||
KASSERT(rnh != NULL,("%s: NULL rnh", __func__));
|
|
||||||
|
|
||||||
RT_LOCK_ASSERT(rt);
|
RT_LOCK_ASSERT(rt);
|
||||||
|
|
||||||
@ -444,18 +441,6 @@ rtfree(struct rtentry *rt)
|
|||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* On last reference give the "close method" a chance
|
|
||||||
* to cleanup private state. This also permits (for
|
|
||||||
* IPv4 and IPv6) a chance to decide if the routing table
|
|
||||||
* entry should be purged immediately or at a later time.
|
|
||||||
* When an immediate purge is to happen the close routine
|
|
||||||
* typically calls rtexpunge which clears the RTF_UP flag
|
|
||||||
* on the entry so that the code below reclaims the storage.
|
|
||||||
*/
|
|
||||||
if (rt->rt_refcnt == 0 && rnh->rnh_close)
|
|
||||||
rnh->rnh_close((struct radix_node *)rt, &rnh->head);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* If we are no longer "up" (and ref == 0)
|
* If we are no longer "up" (and ref == 0)
|
||||||
* then we can free the resources associated
|
* then we can free the resources associated
|
||||||
@ -1501,7 +1486,6 @@ add_route(struct rib_head *rnh, struct rt_addrinfo *info,
|
|||||||
return (ENOBUFS);
|
return (ENOBUFS);
|
||||||
}
|
}
|
||||||
rt->rt_flags = RTF_UP | flags;
|
rt->rt_flags = RTF_UP | flags;
|
||||||
rt->rt_fibnum = rnh->rib_fibnum;
|
|
||||||
rt->rt_nhop = nh;
|
rt->rt_nhop = nh;
|
||||||
|
|
||||||
/* Fill in dst */
|
/* Fill in dst */
|
||||||
|
@ -50,7 +50,6 @@ struct rib_head {
|
|||||||
rn_lookup_f_t *rnh_lookup; /* exact match for sockaddr */
|
rn_lookup_f_t *rnh_lookup; /* exact match for sockaddr */
|
||||||
rn_walktree_t *rnh_walktree; /* traverse tree */
|
rn_walktree_t *rnh_walktree; /* traverse tree */
|
||||||
rn_walktree_from_t *rnh_walktree_from; /* traverse tree below a */
|
rn_walktree_from_t *rnh_walktree_from; /* traverse tree below a */
|
||||||
rn_close_t *rnh_close; /*do something when the last ref drops*/
|
|
||||||
rnh_preadd_entry_f_t *rnh_preadd; /* hook to alter record prior to insertion */
|
rnh_preadd_entry_f_t *rnh_preadd; /* hook to alter record prior to insertion */
|
||||||
rt_gen_t rnh_gen; /* generation counter */
|
rt_gen_t rnh_gen; /* generation counter */
|
||||||
int rnh_multipath; /* multipath capable ? */
|
int rnh_multipath; /* multipath capable ? */
|
||||||
@ -144,7 +143,6 @@ struct rtentry {
|
|||||||
|
|
||||||
int rt_flags; /* up/down?, host/net */
|
int rt_flags; /* up/down?, host/net */
|
||||||
int rt_refcnt; /* # held references */
|
int rt_refcnt; /* # held references */
|
||||||
u_int rt_fibnum; /* which FIB */
|
|
||||||
u_long rt_weight; /* absolute weight */
|
u_long rt_weight; /* absolute weight */
|
||||||
u_long rt_expire; /* lifetime for route, e.g. redirect */
|
u_long rt_expire; /* lifetime for route, e.g. redirect */
|
||||||
#define rt_endzero rt_mtx
|
#define rt_endzero rt_mtx
|
||||||
|
Loading…
Reference in New Issue
Block a user