Date: Thu, 23 Oct 2003 16:45:25 -0700 (PDT) From: Sam Leffler <sam@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 40350 for review Message-ID: <200310232345.h9NNjPka096458@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=40350 Change 40350 by sam@sam_ebb on 2003/10/23 16:44:27 socket_send may be entered from a callout and so not have Giant; must grab Giant to protect sbappendaddr until sockets are locked Affected files ... .. //depot/projects/netperf/sys/netinet/ip_mroute.c#15 edit Differences ... ==== //depot/projects/netperf/sys/netinet/ip_mroute.c#15 (text+ko) ==== @@ -1287,10 +1287,13 @@ socket_send(struct socket *s, struct mbuf *mm, struct sockaddr_in *src) { if (s) { + mtx_lock(&Giant); /* XXX no socket locking */ if (sbappendaddr(&s->so_rcv, (struct sockaddr *)src, mm, NULL) != 0) { sorwakeup(s); + mtx_unlock(&Giant); /* XXX */ return 0; } + mtx_unlock(&Giant); /* XXX */ } m_freem(mm); return -1;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200310232345.h9NNjPka096458>