Date: Thu, 03 Oct 2002 09:43:02 +0100 From: Ian Dowse <iedowse@maths.tcd.ie> To: Robert Watson <rwatson@FreeBSD.ORG> Cc: Don Lewis <dl-freebsd@catspoiler.org>, current@FreeBSD.ORG Subject: Re: NFS hang on rmdir(2) with 5.0-current client, server Message-ID: <200210030943.aa86349@salmon.maths.tcd.ie> In-Reply-To: Your message of "Thu, 03 Oct 2002 02:03:22 EDT." <Pine.NEB.3.96L.1021003020248.53997J-100000@fledge.watson.org>
index | next in thread | previous in thread | raw e-mail
In message <Pine.NEB.3.96L.1021003020248.53997J-100000@fledge.watson.org>, Robe
rt Watson writes:
>> > It looks like the client is basically hung waiting for an RPC response.
>> > I'd be glad to provide more debugging information if someone can point me
>> > in the right direction.
>>
>> I haven't seen this seen this problem with a 5.0-CURRENT client and a
>> 4.7-PRERELEASE server, so as near as I can tell the client side isn't
>> totally hosed.
>
>Interesting observation: rm on files, and rmdir on empty directories
>doesn't trigger it, but attempt to rmdir on a non-empty directory does.
This an NFSv2 mount, and I think the problem is specific to NFSv2.
Something like the following patch should fix it. I probably missed
this in revision 1.112 when fixing some similar issues in other
server op functions. See the commit message for that revision for
further details.
Ian
Index: nfs_serv.c
===================================================================
RCS file: /dump/FreeBSD-CVS/src/sys/nfsserver/nfs_serv.c,v
retrieving revision 1.123
diff -u -r1.123 nfs_serv.c
--- nfs_serv.c 25 Sep 2002 02:39:39 -0000 1.123
+++ nfs_serv.c 3 Oct 2002 08:30:49 -0000
@@ -2905,10 +2905,9 @@
if (dirp)
diraft_ret = VOP_GETATTR(dirp, &diraft, cred, td);
nfsm_reply(NFSX_WCCDATA(v3));
- if (v3) {
+ error = 0;
+ if (v3)
nfsm_srvwcc_data(dirfor_ret, &dirfor, diraft_ret, &diraft);
- error = 0;
- }
/* fall through */
nfsmout:
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200210030943.aa86349>
