Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watnot!watmath!clyde!rutgers!lll-lcc!ames!oliveb!sun!gorodish!guy From: guy@gorodish.UUCP Newsgroups: comp.unix.wizards Subject: Re: Bug in SUN Kernel RPC Message-ID: <14116@sun.uucp> Date: Thu, 26-Feb-87 05:27:13 EST Article-I.D.: sun.14116 Posted: Thu Feb 26 05:27:13 1987 Date-Received: Sat, 28-Feb-87 05:18:12 EST References: <1601@brl-adm.ARPA> <5487@mimsy.UUCP> Sender: news@sun.uucp Reply-To: guy@sun.UUCP (Guy Harris) Organization: Sun Microsystems, Mountain View Lines: 12 >Yet sbwakeup() takes a `struct sockbuf *', not an `int *', and does >a wakeup on &sb->sb_cc. How can the above be right? It can't. I believe the original bug report spoke of problems with soft mounts hanging forever; there is a bug here, but it's unrelated to the RPC code. The problem is that when you do a mount, you do some NFS calls to do things such as getting the attributes of the directory you're mounting. However, the problem is that "nfsrootvp" doesn't set (or, more precisely, clear) the "mi_hard" entry for the file system based on the mount options until *after* all those NFS calls have been made. Thus, if the mount server for a host is responding but the NFS server isn't, the "mount" will hang.