svn commit: r185964 - head/sys/netinet6

Andrew Thompson thompsa at FreeBSD.org
Thu Dec 11 17:47:00 PST 2008


Author: thompsa
Date: Fri Dec 12 01:46:59 2008
New Revision: 185964
URL: http://svn.freebsd.org/changeset/base/185964

Log:
  Pass RTF_RNH_LOCKED to rtalloc1 sunce the node head is locked, this avoids a
  recursive lock panic on inet6 detach.
  
  Reviewed by:	kmacy

Modified:
  head/sys/netinet6/in6_ifattach.c

Modified: head/sys/netinet6/in6_ifattach.c
==============================================================================
--- head/sys/netinet6/in6_ifattach.c	Fri Dec 12 01:36:50 2008	(r185963)
+++ head/sys/netinet6/in6_ifattach.c	Fri Dec 12 01:46:59 2008	(r185964)
@@ -834,7 +834,7 @@ in6_ifdetach(struct ifnet *ifp)
 	/* XXX grab lock first to avoid LOR */
 	if (V_rt_tables[0][AF_INET6] != NULL) {
 		RADIX_NODE_HEAD_LOCK(V_rt_tables[0][AF_INET6]);
-		rt = rtalloc1((struct sockaddr *)&sin6, 0, 0UL);
+		rt = rtalloc1((struct sockaddr *)&sin6, RTF_RNH_LOCKED, 0UL);
 		if (rt) {
 			if (rt->rt_ifp == ifp)
 				rtexpunge(rt);


More information about the svn-src-all mailing list