Bug 962043

Summary: After service nfs start finish, mountd is not ready. cause local mount fail.
Product: Red Hat Enterprise Linux 7 Reporter: JianHong Yin <jiyin>
Component: nfs-utilsAssignee: Steve Dickson <steved>
Status: CLOSED DUPLICATE QA Contact: Red Hat Kernel QE team <kernel-qe>
Severity: high Docs Contact:
Priority: medium    
Version: 7.0CC: jburke, jiyin, jstancek, qcai, steved
Target Milestone: betaKeywords: TestBlocker
Target Release: 7.0   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-10-17 12:07:21 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description JianHong Yin 2013-05-11 07:29:07 UTC
Description of problem:
After service nfs start finish, mountd is not ready. cause local mount fail.

Version-Release number of selected component (if applicable):
nfs-utils-1.2.6

How reproducible:
occasionally

Steps to Reproduce:
1.exportfs -ua
2.echo "/export   *(rw)" > /etc/exports
3.service nfs restart
  rpcinfo -s $host|egrep -w 'nfs|mountd'
  mount -vvv -t nfs4 $host:/export /mnt/testarea
  
Actual results:
Redirecting to /bin/systemctl restart  nfs.service
    100003  4,3,2     udp6,tcp6,udp,tcp                nfs         superuser
mount.nfs4: timeout set for Sat May 11 14:16:37 2013
mount.nfs4: trying text-based options 'addr=10.66.12.241,clientaddr=10.66.12.241'
mount.nfs4: mount(2): Permission denied
mount.nfs4: access denied by server while mounting jackrolin:/export

Expected results:
Redirecting to /bin/systemctl restart  nfs.service
    100003  4,3,2     udp6,tcp6,udp,tcp                nfs         superuser
    100005  3,2,1     tcp6,udp6,tcp,udp                mountd      superuser
mount.nfs4: timeout set for Sat May 11 15:29:39 2013
mount.nfs4: trying text-based options 'addr=10.66.12.241,clientaddr=10.66.12.241'

Additional info:
reproduce in RHEL7 & Fedora 17

Comment 2 JianHong Yin 2013-08-07 08:41:01 UTC
Hi steved ...
    service nfs start issue  please check.

Comment 8 Steve Dickson 2013-09-19 13:19:13 UTC
(In reply to Yin.JianHong from comment #0)
> Description of problem:
> After service nfs start finish, mountd is not ready. cause local mount fail.
> 
> Version-Release number of selected component (if applicable):
> nfs-utils-1.2.6
> 
> How reproducible:
> occasionally
> 
> Steps to Reproduce:
> 1.exportfs -ua
> 2.echo "/export   *(rw)" > /etc/exports
> 3.service nfs restart
>   rpcinfo -s $host|egrep -w 'nfs|mountd'
>   mount -vvv -t nfs4 $host:/export /mnt/testarea
>   
> Actual results:
> Redirecting to /bin/systemctl restart  nfs.service
>     100003  4,3,2     udp6,tcp6,udp,tcp                nfs         superuser
> mount.nfs4: timeout set for Sat May 11 14:16:37 2013
> mount.nfs4: trying text-based options
> 'addr=10.66.12.241,clientaddr=10.66.12.241'
> mount.nfs4: mount(2): Permission denied
> mount.nfs4: access denied by server while mounting jackrolin:/export
Does this happen client and server are on different machines? 
loopback mounts are inherently racy...

Comment 9 Jan Stancek 2013-09-23 10:16:44 UTC
(In reply to Steve Dickson from comment #8)
> Does this happen client and server are on different machines? 

Yes, here is example between 2 VMs, client is RHEL6, server is RHEL7.
Client starts nfs.service over ssh and tries to mount. Mount immediately following 'service nfs start' fails, the same mount works after 2 second delay:

# cat client.sh
umount /mnt/test &> /dev/null
ssh root.27.145 "service nfs stop"
sleep 2
ssh root.27.145 "service nfs start"
echo "service nfs start on server returned $?"
mount -v -t nfs -o nfsvers=3 10.34.27.145:/export /mnt/test
echo "mount returned $?"
rpcinfo -p 10.34.27.145
sleep 2
mount -v -t nfs -o nfsvers=3 10.34.27.145:/export /mnt/test
echo "mount after sleep returned $?"
rpcinfo -p 10.34.27.145

# . client.sh
root.27.145's password: 
Redirecting to /bin/systemctl stop  nfs.service
root.27.145's password: 
Redirecting to /bin/systemctl start  nfs.service
service nfs start on server returned 0
mount.nfs: timeout set for Mon Sep 23 11:48:12 2013
mount.nfs: trying text-based options 'nfsvers=3,addr=10.34.27.145'
mount.nfs: prog 100003, trying vers=3, prot=6
mount.nfs: trying 10.34.27.145 prog 100003 vers 3 prot TCP port 2049
mount.nfs: prog 100005, trying vers=3, prot=17
mount.nfs: portmap query retrying: RPC: Program not registered
mount.nfs: prog 100005, trying vers=3, prot=6
mount.nfs: portmap query failed: RPC: Program not registered
mount.nfs: requested NFS version or transport protocol is not supported
mount returned 32
   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
    100003    2   tcp   2049  nfs
    100227    2   tcp   2049  nfs_acl
    100003    2   udp   2049  nfs
    100227    2   udp   2049  nfs_acl
    100024    1   udp  40707  status
    100024    1   tcp  42206  status
    100003    3   tcp   2049  nfs
    100003    4   tcp   2049  nfs
    100227    3   tcp   2049  nfs_acl
    100003    3   udp   2049  nfs
    100003    4   udp   2049  nfs
    100227    3   udp   2049  nfs_acl
    100021    1   udp  38835  nlockmgr
    100021    3   udp  38835  nlockmgr
    100021    4   udp  38835  nlockmgr
    100021    1   tcp  41805  nlockmgr
    100021    3   tcp  41805  nlockmgr
    100021    4   tcp  41805  nlockmgr
    100011    1   udp    875  rquotad
    100011    2   udp    875  rquotad
    100011    1   tcp    875  rquotad
    100011    2   tcp    875  rquotad
mount.nfs: timeout set for Mon Sep 23 11:48:14 2013
mount.nfs: trying text-based options 'nfsvers=3,addr=10.34.27.145'
mount.nfs: prog 100003, trying vers=3, prot=6
mount.nfs: trying 10.34.27.145 prog 100003 vers 3 prot TCP port 2049
mount.nfs: prog 100005, trying vers=3, prot=17
mount.nfs: trying 10.34.27.145 prog 100005 vers 3 prot UDP port 20048
10.34.27.145:/export on /mnt/test type nfs (rw,nfsvers=3)
mount after sleep returned 0
   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
    100003    2   tcp   2049  nfs
    100227    2   tcp   2049  nfs_acl
    100003    2   udp   2049  nfs
    100227    2   udp   2049  nfs_acl
    100024    1   udp  40707  status
    100024    1   tcp  42206  status
    100003    3   tcp   2049  nfs
    100003    4   tcp   2049  nfs
    100227    3   tcp   2049  nfs_acl
    100003    3   udp   2049  nfs
    100003    4   udp   2049  nfs
    100227    3   udp   2049  nfs_acl
    100021    1   udp  38835  nlockmgr
    100021    3   udp  38835  nlockmgr
    100021    4   udp  38835  nlockmgr
    100021    1   tcp  41805  nlockmgr
    100021    3   tcp  41805  nlockmgr
    100021    4   tcp  41805  nlockmgr
    100011    1   udp    875  rquotad
    100011    2   udp    875  rquotad
    100011    1   tcp    875  rquotad
    100011    2   tcp    875  rquotad
    100005    1   udp  20048  mountd
    100005    1   tcp  20048  mountd
    100005    2   udp  20048  mountd
    100005    2   tcp  20048  mountd
    100005    3   udp  20048  mountd
    100005    3   tcp  20048  mountd

Comment 10 Steve Dickson 2013-10-17 12:07:21 UTC

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