Skip to contentSkip to conversation

NFSv2 directory cannot longer be exported in 3.14, 3.13 works fine

DISCUSSION Toralf Förster 2 participants 4 messages Apr 4, 2014 – Apr 5, 2014

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

At a user mode linux image (32 bit Gentoo Linux) the recent kernel gives this error while trying to mount a NFSv2 directory:
mount.nfs: mount point /mnt/nfsv2 is not a directory

The hostname is n22stab4, contents of the files follows.

/etc/fstab:

tmpfs                   /mnt/ramdisk    tmpfs   auto,size=300M
n22stab4:/mnt/ramdisk   /mnt/nfsv2      nfs     auto,bg,intr,soft,nfsvers=2

/etc/exports:
/mnt/ramdisk 192.168.0.0/16(rw,fsid=0,insecure,no_subtree_check,async,no_root_squash)

/var/log/messages:

Apr  4 23:55:45 n22stab4 kernel: init_special_inode: bogus i_mode (1777) for inode 0:24:818

- --
MfG/Sincerely
Toralf Förster
pgp finger print:1A37 6F99 4A9D 026F 13E2 4DCF C4EA CDDE 0076 E94E -----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iF4EAREIAAYFAlM/Kr8ACgkQxOrN3gB26U4PSgD9EhS86BoFwdVOpBU3dkw9CDwL HeIby5M2zFkzVHCuv6MA/iYKV/PkjrS6lxvIDLDpIuAEWRyx097ueE0ugaQ0J/ls =vQ3c
-----END PGP SIGNATURE-----

#1 lore raw

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Quoted 3 lines · Toralf Förster

At a user mode linux image (32 bit Gentoo Linux) the recent kernel gives this error while trying to mount a NFSv2 directory:
mount.nfs: mount point /mnt/nfsv2 is not a directory

A bisect points to :

6e14b46b91fee8a049b0940333ce13a820beaaa5 is the first bad commit commit 6e14b46b91fee8a049b0940333ce13a820beaaa5

Author: Albert Fluegel <[email protected]>
Date:   Mon Nov 18 12:18:01 2013 -0500

nfsd: don't return high mode bits

The Linux NFS server replies among other things to a "Check access permission" the following:

NFS: File type = 2 (Directory)
NFS: Mode = 040755

A netapp server replies here:
NFS: File type = 2 (Directory)
NFS: Mode = 0755

The RFC 1813 i read:
fattr3

struct fattr3 {
ftype3 type;
mode3 mode;
uint32 nlink;
...
For the mode bits only the lowest 9 are defined in the RFC

As far as I can tell, knfsd has always done this, so apparently it's harmless. Nevertheless, it appears to be wrong.

Note this is already correct in the NFSv4 case, only v2 and v3 need fixing.

:040000 040000 a60e55f5a9749db3977e12e8baa08d45fadba225 b982c02ec1069c5d969ccb71197e5569fe93b075 M fs

- --
MfG/Sincerely
Toralf Förster
pgp finger print:1A37 6F99 4A9D 026F 13E2 4DCF C4EA CDDE 0076 E94E -----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iF4EAREIAAYFAlM/9FcACgkQxOrN3gB26U5F1AD+JAP4cDM+rT9nk9Q8q681RywT Ejxq7d0tnVUfWyDFDTgA/1sIUtpv9GSK8SeAJFu7oAhMt4e6eeIdbpMT2qUEQv6q =Sles
-----END PGP SIGNATURE-----

#2 lore raw
Quoted 55 lines · On Sat, 05 Apr 2014 14:17:27 +0200 Toralf Förster <[email protected]>…

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Quoted 3 lines · Toralf Förster

At a user mode linux image (32 bit Gentoo Linux) the recent kernel gives this error while trying to mount a NFSv2 directory:
mount.nfs: mount point /mnt/nfsv2 is not a directory

A bisect points to :

6e14b46b91fee8a049b0940333ce13a820beaaa5 is the first bad commit commit 6e14b46b91fee8a049b0940333ce13a820beaaa5

Author: Albert Fluegel <[email protected]>
Date:   Mon Nov 18 12:18:01 2013 -0500

nfsd: don't return high mode bits

The Linux NFS server replies among other things to a "Check access permission" the following:

NFS: File type = 2 (Directory)
NFS: Mode = 040755

A netapp server replies here:
NFS: File type = 2 (Directory)
NFS: Mode = 0755

The RFC 1813 i read:
fattr3

struct fattr3 {
ftype3 type;
mode3 mode;
uint32 nlink;
...
For the mode bits only the lowest 9 are defined in the RFC

As far as I can tell, knfsd has always done this, so apparently it's harmless. Nevertheless, it appears to be wrong.

Note this is already correct in the NFSv4 case, only v2 and v3 need fixing.

:040000 040000 a60e55f5a9749db3977e12e8baa08d45fadba225 b982c02ec1069c5d969ccb71197e5569fe93b075 M fs

- --
MfG/Sincerely
Toralf Förster
pgp finger print:1A37 6F99 4A9D 026F 13E2 4DCF C4EA CDDE 0076 E94E -----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

Quoted 8 lines

iF4EAREIAAYFAlM/9FcACgkQxOrN3gB26U5F1AD+JAP4cDM+rT9nk9Q8q681RywT Ejxq7d0tnVUfWyDFDTgA/1sIUtpv9GSK8SeAJFu7oAhMt4e6eeIdbpMT2qUEQv6q =Sles
-----END PGP SIGNATURE-----
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html

This was already tracked down earlier this week. Bruce has a patch queued to fix it in his nfsd-next branch. See this thread from earlier this week:

Subject: Re: linux-3.14 nfsd regression

Signature · 1 line
Jeff Layton <[email protected]>
#3 lore raw

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Quoted 5 lines · Jeff Layton

This was already tracked down earlier this week. Bruce has a patch queued to fix it in his nfsd-next branch. See this thread from earlier this week:

Subject: Re: linux-3.14 nfsd regression

yep - fixed the issue here

- --
MfG/Sincerely
Toralf Förster
pgp finger print:1A37 6F99 4A9D 026F 13E2 4DCF C4EA CDDE 0076 E94E -----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iF4EAREIAAYFAlNAA7kACgkQxOrN3gB26U5UiwD/X/ONRaFIMGyxHLZd7cwrN4zh QADbpEhyT+N6KwH6m2wA/j++6yigdEtV7k9pjEWMwlCZUyT8reUbNzZOhxMl10+i =WGBv
-----END PGP SIGNATURE-----