Bug 1247089

Summary: Can't define NLM grace-time by setting the RPCNFSDARGS or NLM_GRACE_PERIOD in /etc/sysconfig/nfs
Product: Red Hat Enterprise Linux 7 Reporter: Yongcheng Yang <yoyang>
Component: nfs-utilsAssignee: Steve Dickson <steved>
Status: CLOSED DUPLICATE QA Contact: Yongcheng Yang <yoyang>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.1CC: eguan, steved
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-06-07 18:01:05 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 Yongcheng Yang 2015-07-27 10:12:30 UTC
Description of problem:
Original we use "NLM_GRACE_PERIOD" to define the NLM Grace-time in RHEL6.
And in RHEL7, this can be done by setting the RPCNFSDARGS in /etc/sysconfig/nfs file.
But I have tried using both of the above methods, it always shows up as "0" when check with "sysctl fs.nfs.nlm_grace_period".

Version-Release number of selected component (if applicable):
RHEL-7.1 with nfs-utils-1.3.0-0.8.el7.x86_64

How reproducible:
100%

Steps to Reproduce:
1. set NLM time in /etc/sysconfig/nfs, maybe using:
 a. echo "NLM_GRACE_PERIOD=30" >>/etc/sysconfig/nfs
 b. echo "RPCNFSDARGS='-G 30'" >>/etc/sysconfig/nfs
2. service nfs-config restart
3. service nfs restart
4. sysctl fs.nfs.nlm_grace_period

Actual results:
[root@hp-dl580g7-04 ~]# sysctl fs.nfs.nlm_grace_period
fs.nfs.nlm_grace_period = 0

Expected results:
[root@hp-dl580g7-04 ~]# sysctl fs.nfs.nlm_grace_period
fs.nfs.nlm_grace_period = 30

Additional info:
The NFSv4 grace-time can be set successfully:
[root@hp-dl580g7-04 ~]# cat /proc/fs/nfsd/nfsv4gracetime 
30

Comment 1 Yongcheng Yang 2016-05-12 09:00:20 UTC
Still reproduced with latest RHEL-7.2

[root@hp-dl585g7-04 ~]# rpm -q kernel
kernel-3.10.0-327.13.1.el7.x86_64
[root@hp-dl585g7-04 ~]# rpm -q nfs-utils
nfs-utils-1.3.0-0.21.el7_2.x86_64
[root@hp-dl585g7-04 ~]# echo "NLM_GRACE_PERIOD=30" >/etc/sysconfig/nfs
[root@hp-dl585g7-04 ~]# echo "RPCNFSDARGS='-G 30'" >>/etc/sysconfig/nfs
[root@hp-dl585g7-04 ~]# cat /etc/sysconfig/nfs
NLM_GRACE_PERIOD=30
RPCNFSDARGS='-G 30'
[root@hp-dl585g7-04 ~]# systemctl restart nfs-config
[root@hp-dl585g7-04 ~]# systemctl restart nfs
[root@hp-dl585g7-04 ~]# sysctl fs.nfs.nlm_grace_period
fs.nfs.nlm_grace_period = 0
[root@hp-dl585g7-04 ~]#

Comment 2 Yongcheng Yang 2016-05-12 09:01:12 UTC
*** Bug 1100456 has been marked as a duplicate of this bug. ***

Comment 3 Yongcheng Yang 2016-05-31 08:02:48 UTC
Note there is a modification adding lockd.conf to set module parameters (bug 1264387) in nfs-utils-1.3.0-0.26.el7

Maybe we should set this parameter in /etc/modprob.d/lockd.conf. If so, need update the testcase/manpage. Will do some more investigation later.

[root@hp-dl385pg8-08 ~]# head /etc/modprobe.d/lockd.conf 
#
# Set the NFS lock manager grace period. n is measured in seconds. 
#options lockd nlm_grace_period=90
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#
# Set the TCP port that the NFS lock manager should use. 
# port must be a valid TCP port value (1-65535).
#options lockd nlm_tcpport
#
# Set the UDP port that the NFS lock manager should use.
# port must be a valid UDP port value (1-65535).
[root@hp-dl385pg8-08 ~]# rpm -q nfs-utils
nfs-utils-1.3.0-0.26.el7.x86_64
[root@hp-dl385pg8-08 ~]#

Comment 4 Steve Dickson 2016-06-07 18:01:05 UTC

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