summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPavel Emelyanov <xemul@openvz.org>2010-05-14 15:33:36 +0400
committerGreg Kroah-Hartman <gregkh@suse.de>2010-07-05 11:10:27 -0700
commitd700d271763f3073230b43bcdf8d24a1a844fd91 (patch)
treeeb55cb3a28739f9e14d7343d178ee0ac8f22592c
parentab871d83d498bd1e0b398bd0dce63b726fff4b7b (diff)
downloadlinux-stable-d700d271763f3073230b43bcdf8d24a1a844fd91.tar.gz
linux-stable-d700d271763f3073230b43bcdf8d24a1a844fd91.tar.bz2
linux-stable-d700d271763f3073230b43bcdf8d24a1a844fd91.zip
NFSD: don't report compiled-out versions as present
commit 15ddb4aec54422ead137b03ea4e9b3f5db3f7cc2 upstream. The /proc/fs/nfsd/versions file calls nfsd_vers() to check whether the particular nfsd version is present/available. The problem is that once I turn off e.g. NFSD-V4 this call returns -1 which is true from the callers POV which is wrong. The proposal is to report false in that case. The bug has existed since 6658d3a7bbfd1768 "[PATCH] knfsd: remove nfsd_versbits as intermediate storage for desired versions". Signed-off-by: Pavel Emelyanov <xemul@openvz.org> Acked-by: NeilBrown <neilb@suse.de> Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--fs/nfsd/nfssvc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nfsd/nfssvc.c b/fs/nfsd/nfssvc.c
index 67ea83eedd43..4d4e2d00d15e 100644
--- a/fs/nfsd/nfssvc.c
+++ b/fs/nfsd/nfssvc.c
@@ -136,7 +136,7 @@ u32 nfsd_supported_minorversion;
int nfsd_vers(int vers, enum vers_op change)
{
if (vers < NFSD_MINVERS || vers >= NFSD_NRVERS)
- return -1;
+ return 0;
switch(change) {
case NFSD_SET:
nfsd_versions[vers] = nfsd_version[vers];