Re: Strange problem with knfsd and clients dieing after server reboot

H.J. Lu (hjl@lucon.org)
Fri, 9 Oct 1998 11:57:21 -0700 (PDT)


>
> I have a small network of a diverse number of platforms all utilizing NFS
> mounts off of a linux knfsd server (2.1.125 w knfsd-980930). The problem
> I am seeing (at least I think it is a problem) is that none of the clients
> maintain the mount after the NFS server reboots. This is reproducable
> under all platforms that I have tested (IRIX, Solaris, SunOS 4, Linux,
> HPUX, and AIX). Basically, what happens, is this. I reboot our linux nfs
> server for one reason or another (kernel upgrade). After it is back up
> and running, I log into any one of our servers to check the nfs mounted
> filesystem. I can cd into the fs and see all of the directories. I can
> even cd into each directory under the nfs fs. I get an error if I type
> pwd. It gives me a different error on each platform, but the gist is that
> it can't determine the cwd because it lacks permission for .. If I try to
> cd .. all of the way up and out of the nfs fs, it will not allow me to
> "leave" the fs. I can repair this by unmounting and remounting on all
> clients. Then, after this, all works as it should (beautifully).
>
> My question is this. Is this the correct behavior? I would venture a
> guess and say no it is not. From my past experience with running nfsd
> under Solaris, this does not happen. I can reboot the server, and the
> connections will "heal" after the reboot completes.
>

I did a test with a Linux/x86 server running glibc 2.1 and a
Linux/alpha client running linux 2.1.122 and glibc 2.0. On client, I
did

# mount server:/usr/src /net/server/src

My server was running linux 2.1.124 with knfsd-980930. Then I
built linux 2.1.125 with knfsd-980930 on my server. After rebooting
my server to linux 2.1.125. I did the following on my client

# cd /net/server/src/kernel/linux
# df
Filesystem 1024-blocks Used Available Capacity Mounted on
server:/usr/src 2049907 1582855 462956 77% /net/server/src
# ls
OPYING README fs makefile scripts
CREDITS Rules.make include mm vmlinux
CVS System.map init modules
x86.string.diff
Documentation arch ipc net
MAINTAINERS config.sea kernel nohup.old
Makefile drivers lib nohup.out
# more Makefile
VERSION = 2
PATCHLEVEL = 1
SUBLEVEL = 125

ARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ -e
s/arm.*/arm/ -e s/
sa110/arm/)
....

Everything works fine for me. You have to make sure you are not
running Slackware, which tends to break things left and right.
Also you need to install the nfs rc script in knfsd-980930.

H.J.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/