nfs41: add mount command option minorversion
mount -t nfs4 -o minorversion=[0|1] specifies whether to use 4.0 or 4.1. By default, the minorversion is set to 0. Signed-off-by: Mike Sager <sager@netapp.com> [set default minorversion to 0 as per Trond and SteveD's request] Signed-off-by: Benny Halevy <bhalevy@panasas.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
This commit is contained in:
parent
44549dff82
commit
3fd5be9e19
|
@ -44,6 +44,7 @@ struct nfs_parsed_mount_data {
|
||||||
unsigned int auth_flavor_len;
|
unsigned int auth_flavor_len;
|
||||||
rpc_authflavor_t auth_flavors[1];
|
rpc_authflavor_t auth_flavors[1];
|
||||||
char *client_address;
|
char *client_address;
|
||||||
|
unsigned int minorversion;
|
||||||
char *fscache_uniq;
|
char *fscache_uniq;
|
||||||
|
|
||||||
struct {
|
struct {
|
||||||
|
|
|
@ -90,6 +90,7 @@ enum {
|
||||||
Opt_mountport,
|
Opt_mountport,
|
||||||
Opt_mountvers,
|
Opt_mountvers,
|
||||||
Opt_nfsvers,
|
Opt_nfsvers,
|
||||||
|
Opt_minorversion,
|
||||||
|
|
||||||
/* Mount options that take string arguments */
|
/* Mount options that take string arguments */
|
||||||
Opt_sec, Opt_proto, Opt_mountproto, Opt_mounthost,
|
Opt_sec, Opt_proto, Opt_mountproto, Opt_mounthost,
|
||||||
|
@ -155,6 +156,7 @@ static const match_table_t nfs_mount_option_tokens = {
|
||||||
{ Opt_mountvers, "mountvers=%u" },
|
{ Opt_mountvers, "mountvers=%u" },
|
||||||
{ Opt_nfsvers, "nfsvers=%u" },
|
{ Opt_nfsvers, "nfsvers=%u" },
|
||||||
{ Opt_nfsvers, "vers=%u" },
|
{ Opt_nfsvers, "vers=%u" },
|
||||||
|
{ Opt_minorversion, "minorversion=%u" },
|
||||||
|
|
||||||
{ Opt_sec, "sec=%s" },
|
{ Opt_sec, "sec=%s" },
|
||||||
{ Opt_proto, "proto=%s" },
|
{ Opt_proto, "proto=%s" },
|
||||||
|
@ -1211,6 +1213,13 @@ static int nfs_parse_mount_options(char *raw,
|
||||||
nfs_parse_invalid_value("nfsvers");
|
nfs_parse_invalid_value("nfsvers");
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case Opt_minorversion:
|
||||||
|
if (match_int(args, &option))
|
||||||
|
return 0;
|
||||||
|
if (option < 0 || option > NFS4_MAX_MINOR_VERSION)
|
||||||
|
return 0;
|
||||||
|
mnt->minorversion = option;
|
||||||
|
break;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* options that take text values
|
* options that take text values
|
||||||
|
@ -2261,6 +2270,7 @@ static int nfs4_validate_mount_data(void *options,
|
||||||
args->nfs_server.port = NFS_PORT; /* 2049 unless user set port= */
|
args->nfs_server.port = NFS_PORT; /* 2049 unless user set port= */
|
||||||
args->auth_flavors[0] = RPC_AUTH_UNIX;
|
args->auth_flavors[0] = RPC_AUTH_UNIX;
|
||||||
args->auth_flavor_len = 0;
|
args->auth_flavor_len = 0;
|
||||||
|
args->minorversion = 0;
|
||||||
|
|
||||||
switch (data->version) {
|
switch (data->version) {
|
||||||
case 1:
|
case 1:
|
||||||
|
|
Loading…
Reference in New Issue