Re: [patch 21/26] mount options: partially fix nfs

From: Trond Myklebust
Date: Thu Jan 24 2008 - 15:54:04 EST


On Thu, 2008-01-24 at 20:34 +0100, Miklos Szeredi wrote:
> plain text document attachment (nfs_opts.patch)
> From: Miklos Szeredi <mszeredi@xxxxxxx>
>
> Add posix, bsize=, namelen= options to /proc/mounts for nfs
> filesystems.
>
> Document several other options that are still missing.
>
> Signed-off-by: Miklos Szeredi <mszeredi@xxxxxxx>
> ---
>
> Index: linux/fs/nfs/super.c
> ===================================================================
> --- linux.orig/fs/nfs/super.c 2008-01-19 11:56:34.000000000 +0100
> +++ linux/fs/nfs/super.c 2008-01-21 20:41:30.000000000 +0100
> @@ -449,6 +449,7 @@ static void nfs_show_mount_options(struc
> } nfs_info[] = {
> { NFS_MOUNT_SOFT, ",soft", ",hard" },
> { NFS_MOUNT_INTR, ",intr", ",nointr" },
> + { NFS_MOUNT_POSIX, ",posix", "" },
> { NFS_MOUNT_NOCTO, ",nocto", "" },
> { NFS_MOUNT_NOAC, ",noac", "" },
> { NFS_MOUNT_NONLM, ",nolock", "" },
> @@ -459,10 +460,17 @@ static void nfs_show_mount_options(struc
> };
> const struct proc_nfs_info *nfs_infop;
> struct nfs_client *clp = nfss->nfs_client;
> + unsigned int default_namelen =
> + clp->rpc_ops->version == 4 ? NFS4_MAXNAMLEN :
> + clp->rpc_ops->version == 3 ? NFS3_MAXNAMLEN : NFS2_MAXNAMLEN;
> seq_printf(m, ",vers=%d", clp->rpc_ops->version);
> seq_printf(m, ",rsize=%d", nfss->rsize);
> seq_printf(m, ",wsize=%d", nfss->wsize);
> + if (nfss->bsize != 0)
> + seq_printf(m, ",bsize=%d", nfss->bsize);
> + if (nfss->namelen != default_namelen)
> + seq_printf(m, ",namelen=%d", nfss->namelen);

You really just want to look at the value of nfss->namelen. It should
always be set.

> if (nfss->acregmin != 3*HZ || showdefaults)
> seq_printf(m, ",acregmin=%d", nfss->acregmin/HZ);
> if (nfss->acregmax != 60*HZ || showdefaults)
> @@ -482,6 +490,18 @@ static void nfs_show_mount_options(struc
> seq_printf(m, ",timeo=%lu", 10U * nfss->client->cl_timeout->to_initval / HZ);
> seq_printf(m, ",retrans=%u", nfss->client->cl_timeout->to_retries);
> seq_printf(m, ",sec=%s", nfs_pseudoflavour_to_name(nfss->client->cl_auth->au_flavor));
> +
> + /*
> + * Missing options:
> + * port=
> + * mountport=
> + * mountvers=
> + * mountproto=
> + * addr=
> + * clientaddr=
> + * mounthost=
> + * mountaddr=
> + */

The new text mount interface actually does allow us to store these
values if we really do need to. That should be a separate patch,
however.

Trond
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/