svn commit: r211411 - stable/8/sys/netinet6

Bjoern A. Zeeb bz at FreeBSD.org
Tue Aug 17 07:58:10 UTC 2010


Author: bz
Date: Tue Aug 17 07:58:10 2010
New Revision: 211411
URL: http://svn.freebsd.org/changeset/base/211411

Log:
  MFC r211301:
  
    In rip6_input(), in case of multicast, we might skip the normal processing
    and go to the next iteration early if multicast filtering would decide that
    this socket shall not receive the data.
    Unlock the pcb in that case or we leak the read lock and next time trying
    to get a write lock, would hang forever.
  
  PR:		kern/149608
  Submitted by:	Chris Luke (chrisy flirble.org)

Modified:
  stable/8/sys/netinet6/raw_ip6.c
Directory Properties:
  stable/8/sys/   (props changed)
  stable/8/sys/amd64/include/xen/   (props changed)
  stable/8/sys/cam/   (props changed)
  stable/8/sys/cddl/contrib/opensolaris/   (props changed)
  stable/8/sys/contrib/dev/acpica/   (props changed)
  stable/8/sys/contrib/pf/   (props changed)
  stable/8/sys/dev/xen/xenpci/   (props changed)

Modified: stable/8/sys/netinet6/raw_ip6.c
==============================================================================
--- stable/8/sys/netinet6/raw_ip6.c	Tue Aug 17 06:08:09 2010	(r211410)
+++ stable/8/sys/netinet6/raw_ip6.c	Tue Aug 17 07:58:10 2010	(r211411)
@@ -248,6 +248,7 @@ rip6_input(struct mbuf **mp, int *offp, 
 			}
 			if (blocked != MCAST_PASS) {
 				IP6STAT_INC(ip6s_notmember);
+				INP_RUNLOCK(in6p);
 				continue;
 			}
 		}


More information about the svn-src-stable-8 mailing list