Bug 97718 - NFS_QS NFSD_QS /etc/init.d/nfs typo
Summary: NFS_QS NFSD_QS /etc/init.d/nfs typo
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: nfs-server
Version: 8.0
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Steve Dickson
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2003-06-19 18:22 UTC by Matt Schillinger
Modified: 2007-04-18 16:54 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2004-08-11 11:32:01 UTC
Embargoed:


Attachments (Terms of Use)

Description Matt Schillinger 2003-06-19 18:22:21 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003

Description of problem:
the file /etc/init.d/nfs has a typo found in RedHat 8 AND RedHat 9.

NFS_QS is set if the variable $NFS_QS has no length to the variable.

However, when the action is called to reference the variable, it is called with
$NFSD_QS. 

The function is to tune NFS input Queues. as it is set now, there is no problem
when using the defaults, but If someone wants to tune nfs input queues to help
NFSD performance, the typo could cause poorer than usual NFS performance.

This typo has been verified on multiple RH8 and RH9 machines.



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

How reproducible:
Always

Steps to Reproduce:
1. look at /etc/init.d/nfs
2.
3.
    

Actual Results:  i found the typo

Expected Results:  typo causes incorrect NFS input queue tuning

Additional info:

# Get the initial values for the input sock queues
# at the time of running the script.
if [ "$TUNE_QUEUE" = "yes" ]; then
    RMEM_DEFAULT=`/sbin/sysctl -n net.core.rmem_default`
    RMEM_MAX=`/sbin/sysctl -n net.core.rmem_max`
    # 256kb recommended minimum size based on SPECsfs NFS benchmarks
    [ -z "$NFS_QS" ] && NFS_QS=262144 ## !!!! THIS IS THE BUG!
fi

# See how we were called.
case "$1" in
  start)
        # Start daemons.
        # Apply input queue increase for nfs server
        if [ "$TUNE_QUEUE" = "yes" ]; then    ###!!! MISMATCH ON
#                                             #  THE NEXT TWO LINES
            /sbin/sysctl -w net.core.rmem_default=$NFSD_QS >/dev/null 2>&1
            /sbin/sysctl -w net.core.rmem_max=$NFSD_QS >/dev/null 2>&1
        fi

Comment 1 Matt Schillinger 2003-06-20 20:50:12 UTC
Discussing with the nfs mailing list has informed me that in RH9, this typo, 
while still a typo, does not affect nfsd performance, as the variable change no 
longer affects nfsd as of the 2.4.20 kernel. setting a new value will not 
affect nfsd as it now intelligently allocates the input queue that is needed.

Comment 2 Steve Dickson 2004-08-11 11:32:01 UTC
This was fixed in later release of nfs-utils


Note You need to log in before you can comment on or make changes to this bug.