Bug 533724 - mount.nfs4: an incorrect mount option was specified
Summary: mount.nfs4: an incorrect mount option was specified
Status: RESOLVED DUPLICATE of bug 531633
Alias: None
Product: openSUSE 11.1
Classification: openSUSE
Component: Network (show other bugs)
Version: Final
Hardware: i586 openSUSE 11.1
: P5 - None : Normal (vote)
Target Milestone: ---
Assignee: E-mail List
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-08-24 12:11 UTC by Sebastian Reitenbach
Modified: 2009-08-25 14:23 UTC (History)
0 users

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sebastian Reitenbach 2009-08-24 12:11:52 UTC
User-Agent:       Mozilla/5.0 (compatible; Konqueror/4.1; Linux) KHTML/4.1.3 (like Gecko) SUSE

I found this bug, maybe related to my problem: 471315


here is my problem:

when I run the following command:

mount -t nfs4 nfsserver:/public /mnt

then I get the following error message:
mount.nfs4: an incorrect mount option was specified

running the command with strace reveals the following:

pid 10553] mmap2(NULL, 217016, PROT_READ, MAP_SHARED, 4, 0) = 0xb7ee6000
[pid 10553] close(4)                    = 0
[pid 10553] close(3)                    = 0
[pid 10553] socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP) = 3
[pid 10553] bind(3, {sa_family=AF_INET, sin_port=htons(0), sin_addr=inet_addr("0.0.0.0")}, 16) = 0
[pid 10553] connect(3, {sa_family=AF_INET, sin_port=htons(0), sin_addr=inet_addr("192.168.1.19")}, 16) = 0
[pid 10553] getsockname(3, {sa_family=AF_INET, sin_port=htons(33230), sin_addr=inet_addr("192.168.0.8")}, [16]) = 0
[pid 10553] time(NULL)                  = 1251113107
[pid 10553] mount("nfsserver:/public", "/mnt", "nfs4", 0, "clientaddr=192.168.0.8,addr=192.168.1.19") = -1 EINVAL (Invalid argument)
[pid 10553] write(2, "mount.nfs4: an incorrect mount option was specified\n", 52mount.nfs4: an incorrect mount option was specified
) = 52
[pid 10553] exit_group(32)              = ?
Process 10552 resumed
Process 10553 detached
<... wait4 resumed> [{WIFEXITED(s) && WEXITSTATUS(s) == 32}], 0, NULL) = 10553

Installed client software:
kernel-pae-extra-2.6.27.29-0.1.1
kernel-source-2.6.27.29-0.1.1
kernel-pae-base-2.6.27.29-0.1.1
linux-kernel-headers-2.6.27-2.28
kernel-pae-2.6.27.29-0.1.1
limal-nfs-server-1.5.1-1.12
nfsidmap-0.20-1.110
limal-nfs-server-perl-1.5.1-1.12
yast2-nfs-common-2.17.4-1.19
yast2-nfs-client-2.17.9-1.15
nfs-client-1.1.3-18.2.1
rpcbind-0.1.6+git20080930-5.2

here is what the server (SLES 11) says to the rpcinfo and showmout commands:

# rpcinfo -p nfsserver
   program vers proto   port  service
    100000    4   tcp    111  portmapper
    100000    3   tcp    111  portmapper
    100000    2   tcp    111  portmapper
    100000    4   udp    111  portmapper
    100000    3   udp    111  portmapper
    100000    2   udp    111  portmapper
    100005    1   udp   2050  mountd
    100005    1   tcp   2050  mountd
    100005    2   udp   2050  mountd
    100005    2   tcp   2050  mountd
    100005    3   udp   2050  mountd
    100005    3   tcp   2050  mountd
    100003    2   udp   2049  nfs
    100003    3   udp   2049  nfs
    100003    4   udp   2049  nfs
    100021    1   udp  57434  nlockmgr
    100021    3   udp  57434  nlockmgr
    100021    4   udp  57434  nlockmgr
    100024    1   udp  33062  status
    100003    2   tcp   2049  nfs
    100003    3   tcp   2049  nfs
    100003    4   tcp   2049  nfs
    100021    1   tcp  33440  nlockmgr
    100021    3   tcp  33440  nlockmgr
    100021    4   tcp  33440  nlockmgr
    100024    1   tcp  57136  status

showmount -e nfsserver
Export list for nfspublic:
/export                 *
/export/public          *

The /etc/exports file on the server:
/export                  *(rw,no_root_squash,acl,async,no_subtree_check,async,fsid=0)
/export/public           *(nohide,rw,no_root_squash,acl,async,no_subtree_check,async)


Tcpdump -vvv on the server, when the nfs request is made:
14:03:06.771926 IP (tos 0x0, ttl 63, id 65520, offset 0, flags [DF], proto TCP (6), length 60) 192.168.0.8.0 > 192.168.1.19.2049: 0 null
14:03:06.771970 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 60) 192.168.1.19.2049 > 192.168.0.8.0: reply ok 0 null
14:03:06.775357 IP (tos 0x0, ttl 63, id 65521, offset 0, flags [DF], proto TCP (6), length 52) 192.168.0.8.981 > 192.168.1.19.2049: ., cksum 0xc240 (correct), 1164974681:1164974681(0) ack 3181150153 win 92 <nop,nop,timestamp 189865 1199521708>
14:03:06.775393 IP (tos 0x0, ttl 63, id 65522, offset 0, flags [DF], proto TCP (6), length 96) 192.168.0.8.94921537 > 192.168.1.19.2049: 44 null                                                                                                   
14:03:06.775400 IP (tos 0x0, ttl 64, id 16485, offset 0, flags [DF], proto TCP (6), length 52) 192.168.1.19.2049 > 192.168.0.8.981: ., cksum 0xc241 (correct), 1:1(0) ack 44 win 46 <nop,nop,timestamp 1199521709 189865>
14:03:06.775960 IP (tos 0x0, ttl 64, id 16486, offset 0, flags [DF], proto TCP (6), length 80) 192.168.1.19.2049 > 192.168.0.8.94921537: reply ok 28 null
14:03:06.778945 IP (tos 0x0, ttl 63, id 65523, offset 0, flags [DF], proto TCP (6), length 52) 192.168.0.8.981 > 192.168.1.19.2049: ., cksum 0xc1f6 (correct), 44:44(0) ack 29 win 92 <nop,nop,timestamp 189866 1199521709>
14:03:06.779040 IP (tos 0x0, ttl 63, id 65524, offset 0, flags [DF], proto TCP (6), length 168) 192.168.0.8.111698753 > 192.168.1.19.2049: 116 getattr [|nfs]
14:03:06.779295 IP (tos 0x0, ttl 64, id 16487, offset 0, flags [DF], proto TCP (6), length 308) 192.168.1.19.2049 > 192.168.0.8.111698753: reply ok 256 getattr [|nfs]
14:03:06.784370 IP (tos 0x0, ttl 63, id 65525, offset 0, flags [DF], proto TCP (6), length 192) 192.168.0.8.128475969 > 192.168.1.19.2049: 140 getattr [|nfs]
14:03:06.784433 IP (tos 0x0, ttl 64, id 16488, offset 0, flags [DF], proto TCP (6), length 148) 192.168.1.19.2049 > 192.168.0.8.128475969: reply ok 96 getattr [|nfs]
14:03:06.787203 IP (tos 0x0, ttl 63, id 65526, offset 0, flags [DF], proto TCP (6), length 196) 192.168.0.8.145253185 > 192.168.1.19.2049: 144 getattr [|nfs]
14:03:06.787327 IP (tos 0x0, ttl 64, id 16489, offset 0, flags [DF], proto TCP (6), length 152) 192.168.1.19.2049 > 192.168.0.8.145253185: reply ok 100 getattr [|nfs]
14:03:06.790732 IP (tos 0x0, ttl 63, id 65527, offset 0, flags [DF], proto TCP (6), length 192) 192.168.0.8.162030401 > 192.168.1.19.2049: 140 getattr [|nfs]
14:03:06.791053 IP (tos 0x0, ttl 64, id 16490, offset 0, flags [DF], proto TCP (6), length 148) 192.168.1.19.2049 > 192.168.0.8.162030401: reply ok 96 getattr [|nfs]
14:03:06.795807 IP (tos 0x0, ttl 63, id 65528, offset 0, flags [DF], proto TCP (6), length 196) 192.168.0.8.178807617 > 192.168.1.19.2049: 144 getattr [|nfs]
14:03:06.795879 IP (tos 0x0, ttl 64, id 16491, offset 0, flags [DF], proto TCP (6), length 152) 192.168.1.19.2049 > 192.168.0.8.178807617: reply ok 100 getattr [|nfs]
14:03:06.798670 IP (tos 0x0, ttl 63, id 65529, offset 0, flags [DF], proto TCP (6), length 192) 192.168.0.8.195584833 > 192.168.1.19.2049: 140 getattr [|nfs]
14:03:06.798982 IP (tos 0x0, ttl 64, id 16492, offset 0, flags [DF], proto TCP (6), length 132) 192.168.1.19.2049 > 192.168.0.8.195584833: reply ok 80 getattr [|nfs]
14:03:06.802099 IP (tos 0x0, ttl 63, id 65530, offset 0, flags [DF], proto TCP (6), length 192) 192.168.0.8.212362049 > 192.168.1.19.2049: 140 getattr [|nfs]
14:03:06.802358 IP (tos 0x0, ttl 64, id 16493, offset 0, flags [DF], proto TCP (6), length 148) 192.168.1.19.2049 > 192.168.0.8.212362049: reply ok 96 getattr [|nfs]
14:03:06.805872 IP (tos 0x0, ttl 63, id 65531, offset 0, flags [DF], proto TCP (6), length 196) 192.168.0.8.229139265 > 192.168.1.19.2049: 144 getattr [|nfs]
14:03:06.806081 IP (tos 0x0, ttl 64, id 16494, offset 0, flags [DF], proto TCP (6), length 268) 192.168.1.19.2049 > 192.168.0.8.229139265: reply ok 216 getattr [|nfs]
14:03:06.809434 IP (tos 0x0, ttl 63, id 65532, offset 0, flags [DF], proto TCP (6), length 204) 192.168.0.8.245916481 > 192.168.1.19.2049: 152 getattr [|nfs]
14:03:06.809644 IP (tos 0x0, ttl 64, id 16495, offset 0, flags [DF], proto TCP (6), length 284) 192.168.1.19.2049 > 192.168.0.8.245916481: reply ok 232 getattr [|nfs]
14:03:06.813125 IP (tos 0x0, ttl 63, id 65533, offset 0, flags [DF], proto TCP (6), length 216) 192.168.0.8.262693697 > 192.168.1.19.2049: 164 getattr [|nfs]
14:03:06.813241 IP (tos 0x0, ttl 64, id 16496, offset 0, flags [DF], proto TCP (6), length 308) 192.168.1.19.2049 > 192.168.0.8.262693697: reply ok 256 getattr [|nfs]
14:03:06.817514 IP (tos 0x0, ttl 63, id 65534, offset 0, flags [DF], proto TCP (6), length 216) 192.168.0.8.279470913 > 192.168.1.19.2049: 164 getattr [|nfs]
14:03:06.817630 IP (tos 0x0, ttl 64, id 16497, offset 0, flags [DF], proto TCP (6), length 308) 192.168.1.19.2049 > 192.168.0.8.279470913: reply ok 256 getattr [|nfs]
14:03:06.821115 IP (tos 0x0, ttl 63, id 65535, offset 0, flags [DF], proto TCP (6), length 184) 192.168.0.8.296248129 > 192.168.1.19.2049: 132 getattr [|nfs]
14:03:06.821197 IP (tos 0x0, ttl 64, id 16498, offset 0, flags [DF], proto TCP (6), length 148) 192.168.1.19.2049 > 192.168.0.8.296248129: reply ok 96 getattr [|nfs]
14:03:06.823941 IP (tos 0x0, ttl 63, id 0, offset 0, flags [DF], proto TCP (6), length 188) 192.168.0.8.313025345 > 192.168.1.19.2049: 136 getattr [|nfs]
14:03:06.824073 IP (tos 0x0, ttl 64, id 16499, offset 0, flags [DF], proto TCP (6), length 152) 192.168.1.19.2049 > 192.168.0.8.313025345: reply ok 100 getattr [|nfs]
14:03:06.827500 IP (tos 0x0, ttl 63, id 1, offset 0, flags [DF], proto TCP (6), length 184) 192.168.0.8.329802561 > 192.168.1.19.2049: 132 getattr [|nfs]
14:03:06.827666 IP (tos 0x0, ttl 64, id 16500, offset 0, flags [DF], proto TCP (6), length 132) 192.168.1.19.2049 > 192.168.0.8.329802561: reply ok 80 getattr [|nfs]
14:03:06.831058 IP (tos 0x0, ttl 63, id 2, offset 0, flags [DF], proto TCP (6), length 184) 192.168.0.8.346579777 > 192.168.1.19.2049: 132 getattr [|nfs]
14:03:06.831098 IP (tos 0x0, ttl 64, id 16501, offset 0, flags [DF], proto TCP (6), length 148) 192.168.1.19.2049 > 192.168.0.8.346579777: reply ok 96 getattr [|nfs]
14:03:06.833771 IP (tos 0x0, ttl 63, id 3, offset 0, flags [DF], proto TCP (6), length 188) 192.168.0.8.363356993 > 192.168.1.19.2049: 136 getattr [|nfs]
14:03:06.833878 IP (tos 0x0, ttl 64, id 16502, offset 0, flags [DF], proto TCP (6), length 268) 192.168.1.19.2049 > 192.168.0.8.363356993: reply ok 216 getattr [|nfs]
14:03:06.837919 IP (tos 0x0, ttl 63, id 4, offset 0, flags [DF], proto TCP (6), length 52) 192.168.0.8.981 > 192.168.1.19.2049: F, cksum 0xaf60 (correct), 2300:2300(0) ack 2401 win 192 <nop,nop,timestamp 189881 1199521723>
14:03:06.837955 IP (tos 0x0, ttl 64, id 16503, offset 0, flags [DF], proto TCP (6), length 52) 192.168.1.19.2049 > 192.168.0.8.981: F, cksum 0xaf73 (correct), 2401:2401(0) ack 2301 win 171 <nop,nop,timestamp 1199521724 189881>
14:03:06.840568 IP (tos 0x0, ttl 63, id 5, offset 0, flags [DF], proto TCP (6), length 52) 192.168.0.8.981 > 192.168.1.19.2049: ., cksum 0xaf5e (correct), 2301:2301(0) ack 2402 win 192 <nop,nop,timestamp 189881 1199521724>

no log entry shows up in /var/log/messages on the server regarding the mount 


There is nothing in the fstab regarding that nfs4 share.

It also doesn't matter when I specify the mount command and provide some options like this:

mount -t nfs4 nfsserver:/public /mnt -o async,rw
The client is able to mount the above mentioned share via nfs3, and also another nfs4 share from a different server without problem

Also when I add a line like for the other share to the other server in the fstab then the problem persists.

Other openSUSE 11.1 clients do not have the problem of mounting this share via nfs4 from the nfsserver

Reproducible: Always

Steps to Reproduce:
1.
2.
3.
Actual Results:  
I get the error message when I mount the share

Expected Results:  
The client should mount the share
Comment 1 Sebastian Reitenbach 2009-08-25 08:23:59 UTC
Just experienced the same problem with two other hosts too.

They also had those kernels installed:
2.6.27.29-0.1-xen
2.6.27.29-0.1-pae

where the mount did not worked, downgrading to kernel version:
2.6.27.25-0.1-xen
2.6.27.25-0.1-pae
fixed the problem, the nfs4 mount worked again.

the exports file on the second nfsserver that worked with the newer kernel looks like this:
cat /etc/exports
/home   *(rw,no_root_squash,acl,async,no_subtree_check,fsid=0)

the exports file on the server where it doesn't work looks like this:
/export                  *(rw,no_root_squash,acl,async,no_subtree_check,async,fsid=0)
/export/public           *(nohide,rw,no_root_squash,acl,async,no_subtree_check,async)
/export/public/images    *(nohide,rw,root_squash,acl,async,no_subtree_check,async)

However, I recognized, on the server where the mount of /public fails, it is possible to mount /opt, e.g.
mount -t nfs4 nfssserver:/opt /mnt
there is no explicit entry in the exports file regarding the /export/opt directory
Comment 2 Katarina Machalkova 2009-08-25 14:08:50 UTC
Same here :( after applying kernel security update now I have those:

kernel-pae-base-2.6.27.29-0.1.1
kernel-pae-extra-2.6.27.29-0.1.1
linux-kernel-headers-2.6.27-2.28
nfs-kernel-server-1.1.3-18.2.1
kernel-pae-2.6.27.29-0.1.1

and I can't mount my nfs4 /home anymore (can however mount it as plain nfs). 

Can anyone from kernel-maintainers please look into this? If needed, I can make my machine (opice.suse.cz) accessible for those inside Novell/SUSE
Comment 3 Katarina Machalkova 2009-08-25 14:23:50 UTC
Ah, duplicate ..

*** This bug has been marked as a duplicate of bug 531633 ***