retry= is additive with the text-based mount interface
Subsystems (2)
Hi,
(Via a user bug report)
It seems retry= is now additive with the text-based mount interface. In particular, "mount -o retry=0" still gives a two-minute timeout. Is this intentional?
/* Steinar */
Signature · 1 line
Homepage: http://www.sesse.net/
A message that is not in the archive (sent off-list or not yet received): 20080425080535.GA4999-6Z/[email protected]
Quoted 5 lines · Steinar H. Gunderson
(Via a user bug report)
It seems retry= is now additive with the text-based mount interface. In particular, "mount -o retry=0" still gives a two-minute timeout. Is this intentional?
No, it's broken. Can you test the attached patch?
--
Chuck Lever
chuck[dot]lever[at]oracle[dot]com
Quoted 4 lines · Chuck Lever
Quoted 3 lines
It seems retry= is now additive with the text-based mount interface. In particular, "mount -o retry=0" still gives a two-minute timeout. Is this intentional?
No, it's broken. Can you test the attached patch?
It seems it creates rather odd behavior:
fugl:~# mount -t nfs -v -o retry=0 10.0.0.11:/foo /mnt mount.nfs: timeout set for Thu Jan 1 14:40:25 1970 mount.nfs: text-based options: 'retry=0,addr=10.0.0.11'
fugl:~# mount -t nfs -v -o retry=0 10.0.0.11:/foo /mnt mount.nfs: timeout set for Sat Jan 10 17:07:36 1970 mount.nfs: text-based options: 'retry=0,addr=10.0.0.11'
/* Steinar */
Signature · 1 line
Homepage: http://www.sesse.net/
A message that is not in the archive (sent off-list or not yet received): 20080425163457.GA6952-6Z/[email protected]
Quoted 4 lines · Steinar H. Gunderson
Quoted 3 lines · Chuck Lever
Quoted 3 lines
It seems retry= is now additive with the text-based mount interface. In particular, "mount -o retry=0" still gives a two-minute timeout. Is this intentional?
Quoted 8 lines
Quoted 1 line
No, it's broken. Can you test the attached patch?
It seems it creates rather odd behavior:
fugl:~# mount -t nfs -v -o retry=0 10.0.0.11:/foo /mnt mount.nfs: timeout set for Thu Jan 1 14:40:25 1970 mount.nfs: text-based options: 'retry=0,addr=10.0.0.11'
On my test system (Fedora 7) I get correct behavior with both /bin/mount and when using /sbin/mount.nfs directly.
--
Chuck Lever
chuck[dot]lever[at]oracle[dot]com
Quoted 5 lines · Chuck Lever
Quoted 3 lines
fugl:~# mount -t nfs -v -o retry=0 10.0.0.11:/foo /mnt mount.nfs: timeout set for Thu Jan 1 14:40:25 1970 mount.nfs: text-based options: 'retry=0,addr=10.0.0.11'On my test system (Fedora 7) I get correct behavior with both
/bin/mountand when using/sbin/mount.nfsdirectly.
It seems the patch has an issue:
+ if (!parse_retry_option(&timeout, options, NFS_DEF_FG_TIMEOUT_MINUTES))
where parse_retry_option() _adds_ to timeout. But timeout is not initialized :-)
/* Steinar */
Signature · 1 line
Homepage: http://www.sesse.net/
A message that is not in the archive (sent off-list or not yet received): 20080425165921.GA7108-6Z/[email protected]
Quoted 4 lines · Steinar H. Gunderson
Quoted 3 lines · Chuck Lever
Quoted 3 lines
fugl:~# mount -t nfs -v -o retry=0 10.0.0.11:/foo /mnt mount.nfs: timeout set for Thu Jan 1 14:40:25 1970 mount.nfs: text-based options: 'retry=0,addr=10.0.0.11'
Quoted 8 lines
Quoted 2 lines
On my test system (Fedora 7) I get correct behavior with both
/bin/mountand when using/sbin/mount.nfsdirectly.It seems the patch has an issue:
+ if (!parse_retry_option(&timeout, options,
NFS_DEF_FG_TIMEOUT_MINUTES))where
parse_retry_option()_adds_ to timeout. But timeout is not initialized :-)
Why would we ever want to do anything other than just set the timeout here, Chuck?
Trond
Quoted 7 lines · Steinar H. Gunderson
Quoted 5 lines · Chuck Lever
Quoted 3 lines
fugl:~# mount -t nfs -v -o retry=0 10.0.0.11:/foo /mnt mount.nfs: timeout set for Thu Jan 1 14:40:25 1970 mount.nfs: text-based options: 'retry=0,addr=10.0.0.11'On my test system (Fedora 7) I get correct behavior with both
/bin/mountand when using/sbin/mount.nfsdirectly.
Quoted 6 lines
It seems the patch has an issue:
+ if (!parse_retry_option(&timeout, options,
NFS_DEF_FG_TIMEOUT_MINUTES))where
parse_retry_option()_adds_ to timeout. But timeout is not initialized :-)
Just change "*timeout +=" to "*timeout =" in parse_retry_option().
That was the bug I was trying to fix in the first place. Sigh.
--
Chuck Lever
chuck[dot]lever[at]oracle[dot]com
Quoted 3 lines · Chuck Lever
Just change "*timeout +=" to "*timeout =" in
parse_retry_option().That was the bug I was trying to fix in the first place. Sigh.
That fixes it -- thanks!
/* Steinar */
Signature · 1 line
Homepage: http://www.sesse.net/
A message that is not in the archive (sent off-list or not yet received): 20080425173833.GA7306-6Z/[email protected]
Quoted 6 lines · Steinar H. Gunderson
Quoted 3 lines · Chuck Lever
Just change "*timeout +=" to "*timeout =" in
parse_retry_option().That was the bug I was trying to fix in the first place. Sigh.
That fixes it -- thanks!
Thanks for testing. I'll post a corrected patch to Mr. Dickson in a bit.
--
Chuck Lever
chuck[dot]lever[at]oracle[dot]com