Invalidate inpcb LLE cache if cached route is invalidated

When the inpcb route cache is invalidated after a change to the
routing tables, we need to invalidate the LLE cache as well.
Previous to this change packets for the connection would continue
to use the old L2 information from the old L3 gateway, and the
packets for the connection would likely be blackholed.

MFC after:	1 week
Sponsored by:	Dell EMC Isilon
Differential Revision:	https://reviews.freebsd.org/D13988
Reviewed by:	karels
This commit is contained in:
Ryan Stone 2018-01-23 03:15:35 +00:00
parent 1a55e1d038
commit dbeab32f94

View File

@ -428,6 +428,10 @@ struct rt_addrinfo {
RTFREE((ro)->ro_rt); \
(ro)->ro_rt = NULL; \
} \
if ((ro)->ro_lle != NULL) { \
LLE_FREE((ro)->ro_lle); \
(ro)->ro_lle = NULL; \
} \
*(cookiep) = cookie; \
} \
} while (0)