Date: Wed, 7 Jul 1999 10:46:12 -0500 (EST) From: Alfred Perlstein <bright@rush.net> To: Peter Wemm <peter@netplex.com.au> Cc: current@FreeBSD.ORG Subject: Re: nfs ick in -current Message-ID: <Pine.BSF.3.96.990707102624.14320c-100000@cygnus.rush.net> In-Reply-To: <19990707145022.6829E78@overcee.netplex.com.au>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 7 Jul 1999, Peter Wemm wrote: > Alfred Perlstein wrote: > > > > I just cvsup'd today hoping that all the NFS fixes that went in > > recently would have alleviated (sp?) the hangs I've been getting > > while building things in ports for the last couple of months. > > > > It used to be that just NFS would hang, now it seems to crash the > > entire box. > > > > server:/vol/extra/ports /usr/ports nfs rw,noauto,bg,intr,nfsv3,tcp,- > r=3 > > 2768,-w=32768 0 0 > > server:/vol/extra/ncvs /home/ncvs nfs rw,noauto,bg,intr,nfsv3,tcp,- > r=3 > > 2768,-w=32768 0 0 > > server:/vol/wd0 /vol/wd0 nfs rw,noauto,bg,intr,nfsv3,tcp,- > r=3 > > 2768,-w=32768 0 0 > > > > are the mount points. > > > > attempting to compile xscreensaver has triggered it twice in a row > > /usr/ports is mounted off "server" (a freebsd -current box) and > > doing the make will kill the machine. > > > > Once I figure out where the heck I have the console redirected > > I'll have something more substantial. > > You have a block size of 32K, I'll bet it's 'Bad nfs svc reply' in > nfs_syscalls.c. This is triggered when the READDIRPLUS op generates > an oversized reply and it triggers the sanity check. odd, shouldn't it know not to violate its own sanity checks? Just throttle down the requests, or spit out an error? > Change it to 16K and I think it'll work. Otherwise change the panic to a > printf(), but that is sweeping the problem under the carpet and might just > give the client indigestion. It does stop the server crashing though. I'll try that, thanks, set my -r and -w to 16k. Um something odd though, from the code: if (siz <= 0 || siz > NFS_MAXPACKET) { printf("mbuf siz=%d\n",siz); panic("Bad nfs svc reply"); } then earlier: nfsproto.h:#define NFS_MAXPKTHDR 404 nfsproto.h:#define NFS_MAXPACKET (NFS_MAXPKTHDR + NFS_MAXDATA) nfsproto.h:#define NFS_MAXDATA 32768 isn't 32k within the safe limits, or sometimes when building the RPC reply it can just get too big? Oh, one more thing, I'm getting "device busy" even when using -f during my unmount of wedged nfs mounts, all I needed to do was kill -9 a shell sitting in that dir, but shouldn't that be unnessesary? thanks for your patience, -Alfred To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.3.96.990707102624.14320c-100000>