Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3fd5be9e authored by Mike Sager's avatar Mike Sager Committed by Benny Halevy
Browse files

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: default avatarMike Sager <sager@netapp.com>
[set default minorversion to 0 as per Trond and SteveD's request]
Signed-off-by: default avatarBenny Halevy <bhalevy@panasas.com>
Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
parent 44549dff
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -44,6 +44,7 @@ struct nfs_parsed_mount_data {
	unsigned int		auth_flavor_len;
	rpc_authflavor_t	auth_flavors[1];
	char			*client_address;
	unsigned int		minorversion;
	char			*fscache_uniq;

	struct {
+10 −0
Original line number Diff line number Diff line
@@ -90,6 +90,7 @@ enum {
	Opt_mountport,
	Opt_mountvers,
	Opt_nfsvers,
	Opt_minorversion,

	/* Mount options that take string arguments */
	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_nfsvers, "nfsvers=%u" },
	{ Opt_nfsvers, "vers=%u" },
	{ Opt_minorversion, "minorversion=%u" },

	{ Opt_sec, "sec=%s" },
	{ Opt_proto, "proto=%s" },
@@ -1211,6 +1213,13 @@ static int nfs_parse_mount_options(char *raw,
				nfs_parse_invalid_value("nfsvers");
			}
			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
@@ -2261,6 +2270,7 @@ static int nfs4_validate_mount_data(void *options,
	args->nfs_server.port	= NFS_PORT; /* 2049 unless user set port= */
	args->auth_flavors[0]	= RPC_AUTH_UNIX;
	args->auth_flavor_len	= 0;
	args->minorversion	= 0;

	switch (data->version) {
	case 1: