-
Story
-
Resolution: Unresolved
-
Normal
-
rhel-8.9.0.z
-
Regression, TestCaseProvided
-
rhel-sst-filesystems
-
ssg_filesystems_storage_and_HA
-
1
-
False
-
-
None
-
None
-
None
-
None
-
None
What were you trying to do that didn't work?
Bugzilla 1709963 corrects the reported error during autonegotiation if nfs v4 fails as unsupported and nfs v3 also fails.
However, the change also eliminated the 2-minute timeout period when nfs v3 also fails with ETIMEDOUT, since the nfs v4 result is now returned, and is a permanent error, rather than a temporary one.
Please provide the package NVR for which bug is seen:
nfs-utils beginning with 2.3.3-24.el8
How reproducible:
easy
Steps to reproduce
- disable nfs v4 on server (edit /etc/nfs.conf and set the 'nfsd' vers4* options to 'n')
- restart nfs server: # systemctl restart nfs-server.service
- stop rpc.mountd: # kill -s STOP $(pidof rpc.mountd)
- attempt mount with autonegotiation
Expected results
After the nfs v4 mounts fail with EPROTONOSUPPORT, the timing-out nfs v3 mount is re-attempted for up to the 2-minute timeout period:
# time mount.nfs -vvvv server:/exports /mnt/tmp mount.nfs: timeout set for Mon Feb 26 15:04:30 2024 mount.nfs: trying text-based options 'vers=4.1,addr=127.0.0.1,clientaddr=127.0.0.1' mount.nfs: mount(2): Protocol not supported mount.nfs: trying text-based options 'vers=4.0,addr=127.0.0.1,clientaddr=127.0.0.1' mount.nfs: mount(2): Protocol not supported mount.nfs: trying text-based options 'addr=127.0.0.1' mount.nfs: prog 100003, trying vers=3, prot=6 mount.nfs: trying 127.0.0.1 prog 100003 vers 3 prot TCP port 2049 mount.nfs: prog 100005, trying vers=3, prot=17 mount.nfs: trying 127.0.0.1 prog 100005 vers 3 prot UDP port 20048 mount.nfs: portmap query retrying: RPC: Timed out mount.nfs: prog 100005, trying vers=3, prot=6 mount.nfs: trying 127.0.0.1 prog 100005 vers 3 prot TCP port 20048 mount.nfs: portmap query failed: RPC: Timed out mount.nfs: Protocol not supported real 0m13.131s
Actual results
The timing-out nfs v3 mount is only attempted once, after which the EPROTONOSUPPORT result is used.
# time mount.nfs -vvvv server:/exports /mnt/tmp mount.nfs: timeout set for Mon Feb 26 16:04:38 2024 mount.nfs: trying text-based options 'vers=4.1,addr=192.168.122.60,clientaddr=192.168.122.71' mount.nfs: mount(2): Protocol not supported mount.nfs: trying text-based options 'vers=4.0,addr=192.168.122.60,clientaddr=192.168.122.71' mount.nfs: mount(2): Protocol not supported mount.nfs: trying text-based options 'addr=192.168.122.60' mount.nfs: prog 100003, trying vers=3, prot=6 mount.nfs: trying 192.168.122.60 prog 100003 vers 3 prot TCP port 2049 mount.nfs: prog 100005, trying vers=3, prot=17 mount.nfs: trying 192.168.122.60 prog 100005 vers 3 prot UDP port 20048 mount.nfs: portmap query retrying: RPC: Timed out mount.nfs: prog 100005, trying vers=3, prot=6 mount.nfs: trying 192.168.122.60 prog 100005 vers 3 prot TCP port 20048 mount.nfs: portmap query failed: RPC: Timed out mount.nfs: trying text-based options 'addr=192.168.122.60' mount.nfs: prog 100003, trying vers=3, prot=6 mount.nfs: trying 192.168.122.60 prog 100003 vers 3 prot TCP port 2049 mount.nfs: prog 100005, trying vers=3, prot=17 mount.nfs: trying 192.168.122.60 prog 100005 vers 3 prot UDP port 20048 mount.nfs: portmap query retrying: RPC: Timed out ... mount.nfs: portmap query retrying: RPC: Timed out mount.nfs: prog 100005, trying vers=3, prot=6 mount.nfs: trying 192.168.122.60 prog 100005 vers 3 prot TCP port 20048 mount.nfs: portmap query failed: RPC: Timed out mount.nfs: Connection timed out real 2m10.411s