On Tue, Oct 27, 2015 at 04:52:18AM -0600, Martin Pieuchot wrote: > CVSROOT: /cvs > Module name: src > Changes by: m...@cvs.openbsd.org 2015/10/27 04:52:18 > > Modified files: > sys/net : if.c pf.c > sys/netinet6 : nd6.c > > Log message: > Use rt_ifidx rather than rt_ifp. > > ok bluhm@ >
The return path introduced needs a splx. Index: nd6.c =================================================================== RCS file: /cvs/src/sys/netinet6/nd6.c,v retrieving revision 1.163 diff -u -p -r1.163 nd6.c --- nd6.c 27 Oct 2015 10:52:18 -0000 1.163 +++ nd6.c 28 Oct 2015 10:15:00 -0000 @@ -392,8 +392,10 @@ nd6_llinfo_timer(void *arg) if ((rt = ln->ln_rt) == NULL) panic("ln->ln_rt == NULL"); - if ((ifp = if_get(rt->rt_ifidx)) == NULL) + if ((ifp = if_get(rt->rt_ifidx)) == NULL) { + splx(s); return; + } ndi = ND_IFINFO(ifp); dst = satosin6(rt_key(rt));