Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 5 Nov 2003 21:11:32 -0800 (PST)
From:      Sam Leffler <sam@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 41564 for review
Message-ID:  <200311060511.hA65BWlN091451@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=41564

Change 41564 by sam@sam_ebb on 2003/11/05 21:10:48

	must _always_ grab Giant to protect sbappendaddr

Affected files ...

.. //depot/projects/netperf/sys/netinet/ip_mroute.c#20 edit

Differences ...

==== //depot/projects/netperf/sys/netinet/ip_mroute.c#20 (text+ko) ====

@@ -1289,13 +1289,13 @@
 socket_send(struct socket *s, struct mbuf *mm, struct sockaddr_in *src)
 {
     if (s) {
-	NET_PICKUP_GIANT();
+	mtx_lock(&Giant);		/* XXX until sockets are locked */
 	if (sbappendaddr(&s->so_rcv, (struct sockaddr *)src, mm, NULL) != 0) {
 	    sorwakeup(s);
-	    NET_DROP_GIANT();
+	    mtx_unlock(&Giant);
 	    return 0;
 	}
-	NET_DROP_GIANT();
+	mtx_unlock(&Giant);
     }
     m_freem(mm);
     return -1;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200311060511.hA65BWlN091451>