Page MenuHomeFreeBSD

D13990.diff
No OneTemporary

D13990.diff

Index: head/sys/net/route.c
===================================================================
--- head/sys/net/route.c
+++ head/sys/net/route.c
@@ -1733,6 +1733,8 @@
int family, mtu;
struct if_mtuinfo ifmtu;
+ RIB_WLOCK_ASSERT(rnh);
+
rt = (struct rtentry *)rnh->rnh_lookup(info->rti_info[RTAX_DST],
info->rti_info[RTAX_NETMASK], &rnh->head);
@@ -1822,6 +1824,13 @@
if_updatemtu_cb(rt->rt_nodes, &ifmtu);
}
}
+
+ /*
+ * This route change may have modified the route's gateway. In that
+ * case, any inpcbs that have cached this route need to invalidate their
+ * llentry cache.
+ */
+ rnh->rnh_gen++;
if (ret_nrt) {
*ret_nrt = rt;

File Metadata

Mime Type
text/plain
Expires
Sun, Apr 19, 7:18 PM (4 h, 18 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
31792033
Default Alt Text
D13990.diff (670 B)

Event Timeline