Date: Mon, 14 Jun 2004 15:23:12 -0400 (EDT) From: Robert Watson <rwatson@freebsd.org> To: Alfred Perlstein <alfred@freebsd.org> Cc: cvs-all@freebsd.org Subject: Re: cvs commit: src/sys/kern kern_descrip.c uipc_socket.c uipc_syscalls.c uipc_usrreq.c src/sys/net raw_cb.c raw_usrreq.c src/sys/netatm atm_socket.c src/sys/netatalk ddp_pcb.c src/sys/netgraph ng_ksocket.c src/sys/netgraph/bluetooth/socket ... Message-ID: <Pine.NEB.3.96L.1040614152027.34947D-100000@fledge.watson.org> In-Reply-To: <20040614190209.GE61448@elvis.mu.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 14 Jun 2004, Alfred Perlstein wrote: > * Robert Watson <rwatson@FreeBSD.org> [040612 13:47] wrote: > > rwatson 2004-06-12 20:47:32 UTC > > > > FreeBSD src repository > > > > Modified files: > > > > - Note that sofree()/sotryfree() will release the socket lock even if > > they don't free the socket. > > Please use one of the existing conventions when doing refcount based > operations, namely either: sorele, soput, sodrop. > > (from: vrele, vput, fdrop, etc) We chose to maintain the existing naming scheme for sockets present in the code since it's origins in BSD, and consistent with other BSD platforms. Otherwise, I generally agree :-). Given the volume of other changes going in here, I was reluctant to introduce non-functional changes in order to ease merging. Once we have the basic version of locking in place, we will have the opportunity to revisit this (and a great many other things). One thing I should point out, though, is that the reference counting in sockets isn't a simple reference count, since in addition to so_count, there's also a flag indicating whether a file descriptor reference is present, and an un-counted reference from the pcb to the socket, which is also considered "real". The various sofree()/sotryfree()/sorele()/soref()/.. APIs reflect this complexity, and hence some inconsistency with a more simple API. Robert N M Watson FreeBSD Core Team, TrustedBSD Projects robert@fledge.watson.org Senior Research Scientist, McAfee Research
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.NEB.3.96L.1040614152027.34947D-100000>