diff options
author | Pavel Emelyanov <xemul@openvz.org> | 2010-05-14 07:33:36 -0400 |
---|---|---|
committer | J. Bruce Fields <bfields@citi.umich.edu> | 2010-05-14 18:46:14 -0400 |
commit | 15ddb4aec54422ead137b03ea4e9b3f5db3f7cc2 (patch) | |
tree | 7553c06ca7ba059d30289bb8f2e09753671220de | |
parent | 4dc6ec00f6347b72312fa41dfc587d5302b05544 (diff) |
NFSD: don't report compiled-out versions as present
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>
Cc: stable@kernel.org
Acked-by: NeilBrown <neilb@suse.de>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
-rw-r--r-- | fs/nfsd/nfssvc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nfsd/nfssvc.c b/fs/nfsd/nfssvc.c index 171699eb07c8..06b2a26edfe0 100644 --- a/fs/nfsd/nfssvc.c +++ b/fs/nfsd/nfssvc.c | |||
@@ -120,7 +120,7 @@ u32 nfsd_supported_minorversion; | |||
120 | int nfsd_vers(int vers, enum vers_op change) | 120 | int nfsd_vers(int vers, enum vers_op change) |
121 | { | 121 | { |
122 | if (vers < NFSD_MINVERS || vers >= NFSD_NRVERS) | 122 | if (vers < NFSD_MINVERS || vers >= NFSD_NRVERS) |
123 | return -1; | 123 | return 0; |
124 | switch(change) { | 124 | switch(change) { |
125 | case NFSD_SET: | 125 | case NFSD_SET: |
126 | nfsd_versions[vers] = nfsd_version[vers]; | 126 | nfsd_versions[vers] = nfsd_version[vers]; |