rtfree() must be called in lock context.

Reported by:	jhay
This commit is contained in:
Hajimu UMEMOTO 2003-10-18 17:46:23 +00:00
parent 91a50fa4a5
commit 2d0e1cf17a

View File

@ -1894,6 +1894,7 @@ nd6_output(ifp, origifp, m0, dst, rt0)
if (rt->rt_gwroute == 0)
goto lookup;
if (((rt = rt->rt_gwroute)->rt_flags & RTF_UP) == 0) {
RT_LOCK(rt);
rtfree(rt); rt = rt0;
lookup:
rt->rt_gwroute = rtalloc1(rt->rt_gateway, 1, 0UL);