diff options
author | Paulius Zaleckas <paulius.zaleckas@gmail.com> | 2010-10-31 19:21:05 +0300 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2010-11-16 04:44:27 +0300 |
commit | 1e657bd51f313d87fbbb22d1edf625dba87ef353 (patch) | |
tree | e693b41296e5da158971ae7df9d73dc6e69cd4be | |
parent | 8e35f8e7c61c88f9a979a4e6f7f4ffd4c158a88a (diff) | |
download | linux-1e657bd51f313d87fbbb22d1edf625dba87ef353.tar.xz |
Regression: fix mounting NFS when NFSv3 support is not compiled
Trying to mount NFS (root partition in my case) fails if CONFIG_NFS_V3
is not selected. nfs_validate_mount_data() returns EPROTONOSUPPORT,
because of this check:
#ifndef CONFIG_NFS_V3
if (args->version == 3)
goto out_v3_not_compiled;
#endif /* !CONFIG_NFS_V3 */
and args->version was always initialized to 3.
It was working in 2.6.36
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
-rw-r--r-- | fs/nfs/super.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/fs/nfs/super.c b/fs/nfs/super.c index 0a42e8f4adcb..9587506d493c 100644 --- a/fs/nfs/super.c +++ b/fs/nfs/super.c @@ -67,6 +67,12 @@ #define NFSDBG_FACILITY NFSDBG_VFS +#ifdef CONFIG_NFS_V3 +#define NFS_DEFAULT_VERSION 3 +#else +#define NFS_DEFAULT_VERSION 2 +#endif + enum { /* Mount options that take no arguments */ Opt_soft, Opt_hard, @@ -2277,7 +2283,7 @@ static int nfs_get_sb(struct file_system_type *fs_type, }; int error = -ENOMEM; - data = nfs_alloc_parsed_mount_data(3); + data = nfs_alloc_parsed_mount_data(NFS_DEFAULT_VERSION); mntfh = nfs_alloc_fhandle(); if (data == NULL || mntfh == NULL) goto out_free_fh; |