Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 29 Jun 2003 20:56:06 -0400 (EDT)
From:      Robert Watson <rwatson@freebsd.org>
To:        "George V. Neville-Neil" <gnn@neville-neil.com>
Cc:        freebsd-net@freebsd.org
Subject:   Re: Another question on locking...
Message-ID:  <Pine.NEB.3.96L.1030629205430.94924I-100000@fledge.watson.org>
In-Reply-To: <87y8zkwj6k.wl@jchurch.neville-neil.com.neville-neil.com>

next in thread | previous in thread | raw e-mail | index | archive | help
The locking in the -CURRENT tree for the socket stack is currently
incomplete; something we hope greatly to remedy on the way to 5.2-RELEASE. 
So currently all this code runs under the Giant lock, which is why it's
safe. 

Robert N M Watson             FreeBSD Core Team, TrustedBSD Projects
robert@fledge.watson.org      Network Associates Laboratories

On Sun, 29 Jun 2003, George V. Neville-Neil wrote:

> Hi,
> 
> 	Looking at the code in uipc_socket.c and udp_usrreq.c I am a
> 	bit confused as to how the locking mechanism works between the
> 	sockets and the protocols.  The socket calls all occur under
> 	Giant, which the protocols do not deal with, and the protocols
> 	all lock on the inp mutex, which the socket calls do not deal
> 	with.  Furthermore the sblock/sbunlock calls are only use by
> 	the socket layer.  I'm reading udp_input() as it's simpler to
> 	follow.  Have I missed something?  What prevents a protocol
> 	from writing to a socket buffer at the wrong time or the
> 	socket code from tweaking it at the wrong time?  Is this
> 	handled simply because of the priority of the threads doing
> 	the work?
> 
> Thanks,
> George
> _______________________________________________
> freebsd-net@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"
> 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.NEB.3.96L.1030629205430.94924I-100000>