nfs bug introduced in 2.2.14pre8

Petr Soucek (petr@ryston.cz)
Fri, 10 Dec 1999 19:45:06 +0100


Dear Alan,

I have to confirm nfs bug reported by Leos Bitto and introduced in
2.2.14pre8 kernel.

I did many experimets and here is complete description.

nfs server - RHL 6.0
Linux ns2.ryston.cz 2.2.14pre6 #1 Fri Nov 19 18:39:48 CET 1999 i586 unknown
knfsd-1.2.2-4
knfsd-clients-1.2.2-4
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/sda1 795254 578689 175480 77% /
/dev/hda1 16247612 14669192 1578420 90% /ftproot
/dev/hdc1 36053416 20710984 15342432 57%
/ftproot/public/Mirror

GOOD nfs client - RHL 6.0
Linux ns3.ryston.cz 2.2.14pre7 #2 Sun Nov 21 15:28:50 CET 1999 i586 unknown
knfsd-clients-1.2.2-4
knfsd-1.2.2-4
both mount-2.9u and mount-2.10d

[root@ns2 /]# /etc/rc.d/init.d/nfs stop

[root@ns3 /]# df
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda1 1763113 1294732 377260 77% /

[root@ns2 /]# /etc/rc.d/init.d/nfs start

[root@ns3 /]# df
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda1 1763113 1294732 377260 77% /
ns2:/ftproot 16247612 14669192 1578420 90% /mnt/tmp
ns2:/ftproot/public/Mirror
36053416 20710984 15342432 57% /mnt/tmp/public/Mirror
[root@ns3 /]# umount /mnt/tmp/public/Mirror
[root@ns3 /]# df
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda1 1763113 1294732 377260 77% /
ns2:/ftproot 16247612 14669192 1578420 90% /mnt/tmp
[root@ns3 /]# umount /mnt/tmp/
[root@ns3 /]# df
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda1 1763113 1294732 377260 77% /
[root@ns3 /]#
[root@ns3 /]# mc

So far, with 2.2.14pre7 everything seems to be correct. But:

BAD nfs client:
Linux ns3.ryston.cz 2.2.14pre12 #2 Fri Dec 10 18:17:56 CET 1999 i586 unknown

[root@ns3 /root]# mount ns2:/ftproot /mnt/tmp
[root@ns3 /root]# mount ns2:/ftproot/public/Mirror /mnt/tmp/public/Mirror
[root@ns3 /root]# df
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda1 1763113 1303761 368231 78% /
ns2:/ftproot 16247612 14669192 1578420 90% /mnt/tmp
ns2:/ftproot/public/Mirror
36053416 20710984 15342432 57% /mnt/tmp/public/Mirror

[root@ns2 /]# /etc/rc.d/init.d/nfs stop

[root@ns3 /root]# df
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda1 1763113 1303762 368230 78% /
df: /mnt/tmp/public/Mirror: Connection refused

// the first differece..

[root@ns2 /]# /etc/rc.d/init.d/nfs start

[root@ns3 /root]# df
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda1 1763113 1303763 368229 78% /
ns2:/ftproot 16247612 14669192 1578420 90% /mnt/tmp
ns2:/ftproot/public/Mirror
16247612 14669192 1578420 90% /mnt/tmp/public/Mirror

// now you can se that /mnt/tmp/public/Mirror has wrong size

[root@ns3 /root]# umount /mnt/tmp/public/Mirror
umount: /mnt/tmp/public/Mirror: not mounted

// and cannot be unmountd

[root@ns3 /root]# mount
/dev/hda1 on / type ext2 (rw)
none on /proc type proc (rw)
none on /dev/pts type devpts (rw,mode=0622)
ns2:/ftproot on /mnt/tmp type nfs (rw,addr=194.24.231.12)

// it doesn't seem to be mounted, but

[root@ns3 /]# cat /proc/mounts
/dev/root / ext2 rw 0 0
/proc /proc proc rw 0 0
none /dev/pts devpts rw 0 0
ns2:/ftproot /mnt/tmp nfs rw,addr=ns2 0 0
ns2:/ftproot/public/Mirror /mnt/tmp/public/Mirror nfs rw,addr=ns2 0 0

// is seems it remained here? And again

[root@ns3 /root]# df
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda1 1763113 1303763 368229 78% /
ns2:/ftproot 16247612 14669192 1578420 90% /mnt/tmp
[root@ns3 /root]# umount /mnt/tmp
umount: /mnt/tmp: device is busy
[root@ns3 /root]# cat /proc/mounts
/dev/root / ext2 rw 0 0
/proc /proc proc rw 0 0
none /dev/pts devpts rw 0 0
ns2:/ftproot /mnt/tmp nfs rw,addr=ns2 0 0
ns2:/ftproot/public/Mirror /mnt/tmp/public/Mirror nfs rw,addr=ns2 0 0

If you need more detail description please let me know.

Best Regards,

Petr Soucek
Ryston Electronics s.r.o.
tel +420-2-61302222 fax +420-2-61302211
Email: petr@ryston.cz http://www.ryston.cz

-
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/