diff options
author | ume <ume@FreeBSD.org> | 2003-10-18 17:46:23 +0000 |
---|---|---|
committer | ume <ume@FreeBSD.org> | 2003-10-18 17:46:23 +0000 |
commit | 42120d22ead76258f3a3435c06d03782daa9d7ad (patch) | |
tree | 80ecd49ed1e1577eeb4663e2c1a69bd00712cfda /sys/netinet6 | |
parent | 313310b9a62adb46660eb348051e22f68aab5fbe (diff) | |
download | FreeBSD-src-42120d22ead76258f3a3435c06d03782daa9d7ad.zip FreeBSD-src-42120d22ead76258f3a3435c06d03782daa9d7ad.tar.gz |
rtfree() must be called in lock context.
Reported by: jhay
Diffstat (limited to 'sys/netinet6')
-rw-r--r-- | sys/netinet6/nd6.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/netinet6/nd6.c b/sys/netinet6/nd6.c index e091dee..d7a0e6f 100644 --- a/sys/netinet6/nd6.c +++ b/sys/netinet6/nd6.c @@ -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); |