Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 11 Nov 2008 20:37:42 +0000
From:      Doug Rabson <dfr@rabson.org>
To:        Robert Watson <rwatson@FreeBSD.org>
Cc:        Doug Rabson <dfr@FreeBSD.org>, src-committers@freebsd.org, svn-src-user@freebsd.org
Subject:   Re: svn commit: r184851 - user/dfr/gssapi/6/sys/nfsserver
Message-ID:  <1D315E02-5BE7-4C34-9A51-668920C10D91@rabson.org>
In-Reply-To: <alpine.BSF.1.10.0811111940020.63650@fledge.watson.org>
References:  <200811111551.mABFpjNd005723@svn.freebsd.org> <alpine.BSF.1.10.0811111940020.63650@fledge.watson.org>

next in thread | previous in thread | raw e-mail | index | archive | help

On 11 Nov 2008, at 19:41, Robert Watson wrote:

> On Tue, 11 Nov 2008, Doug Rabson wrote:
>
>> Modified: user/dfr/gssapi/6/sys/nfsserver/nfs_srvkrpc.c
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =====================================================================
>> --- user/dfr/gssapi/6/sys/nfsserver/nfs_srvkrpc.c	Tue Nov 11  
>> 14:58:07 2008	(r184850)
>> +++ user/dfr/gssapi/6/sys/nfsserver/nfs_srvkrpc.c	Tue Nov 11  
>> 15:51:45 2008	(r184851)
>> @@ -227,10 +227,14 @@ nfs_rephead(int siz, struct nfsrv_descri
>> 	if (err == EBADRPC)
>> 		return (NULL);
>>
>> +	/* XXXRW: not 100% clear the lock is needed here. */
>> +	NFSD_LOCK_ASSERT();
>> +
>
> Perhaps this should now be an XXXDFR? :-)  Or alternatively, if you  
> think the locking really is needed, we should convert my old and  
> questionable comment to a more firm one.

The locking model in 6.x is somewhat over-complex - it holds the  
NFSD_LOCK while executing service procs but doesn't really need to.  
This causes lots of unlock/relock code where it calls things that  
might sleep. Its all much simpler in 7.x and current where the service  
procs run without holding any locks.




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1D315E02-5BE7-4C34-9A51-668920C10D91>