[PATCH v2] NFS: Fix /proc/mount for legacy binary interface

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Add a flag so we know if we mounted the NFS server using the legacy
binary interface.  If we used the legacy interface, then we should not
show the mountd options.

Signed-off-by: Bryan Schumaker <bjschuma@xxxxxxxxxx>
---
Fixes a typo in the previous patch
diff --git a/fs/nfs/super.c b/fs/nfs/super.c
index f9df16d..9b359a7 100644
--- a/fs/nfs/super.c
+++ b/fs/nfs/super.c
@@ -546,6 +546,9 @@ static void nfs_show_mountd_options(struct seq_file *m, struct nfs_server *nfss,
 {
 	struct sockaddr *sap = (struct sockaddr *)&nfss->mountd_address;

+	if (nfss->flags & NFS_MOUNT_LEGACY_INTERFACE)
+		return;
+
 	switch (sap->sa_family) {
 	case AF_INET: {
 		struct sockaddr_in *sin = (struct sockaddr_in *)sap;
@@ -1780,6 +1783,7 @@ static int nfs_validate_mount_data(void *options,
 		 * can deal with.
 		 */
 		args->flags		= data->flags & NFS_MOUNT_FLAGMASK;
+		args->flags		|= NFS_MOUNT_LEGACY_INTERFACE;
 		args->rsize		= data->rsize;
 		args->wsize		= data->wsize;
 		args->timeo		= data->timeo;
diff --git a/include/linux/nfs_mount.h b/include/linux/nfs_mount.h
index 4499016..5d59ae8 100644
--- a/include/linux/nfs_mount.h
+++ b/include/linux/nfs_mount.h
@@ -69,5 +69,6 @@ struct nfs_mount_data {
 #define NFS_MOUNT_LOOKUP_CACHE_NONEG	0x10000
 #define NFS_MOUNT_LOOKUP_CACHE_NONE	0x20000
 #define NFS_MOUNT_NORESVPORT		0x40000
+#define NFS_MOUNT_LEGACY_INTERFACE	0x80000

 #endif


On 07/30/2010 03:17 PM, Bryan Schumaker wrote:
> Add a flag so we know if we mounted the NFS server using the legacy
> binary interface.  If we used the legacy interface, then we should not
> show the mountd options.
> 
> Signed-off-by: Bryan Schumaker <bjschuma@xxxxxxxxxx>
> ---
> diff --git a/fs/nfs/super.c b/fs/nfs/super.c
> index f9df16d..9b359a7 100644
> --- a/fs/nfs/super.c
> +++ b/fs/nfs/super.c
> @@ -546,6 +546,9 @@ static void nfs_show_mountd_options(struct seq_file *m, struct nfs_server *nfss,
>  {
>  	struct sockaddr *sap = (struct sockaddr *)&nfss->mountd_address;
> 
> +	if (nfss->flags & NFS_MOUNT_LEGACY_INTERFACE)
> +		return
> +
>  	switch (sap->sa_family) {
>  	case AF_INET: {
>  		struct sockaddr_in *sin = (struct sockaddr_in *)sap;
> @@ -1780,6 +1783,7 @@ static int nfs_validate_mount_data(void *options,
>  		 * can deal with.
>  		 */
>  		args->flags		= data->flags & NFS_MOUNT_FLAGMASK;
> +		args->flags		|= NFS_MOUNT_LEGACY_INTERFACE;
>  		args->rsize		= data->rsize;
>  		args->wsize		= data->wsize;
>  		args->timeo		= data->timeo;
> diff --git a/include/linux/nfs_mount.h b/include/linux/nfs_mount.h
> index 4499016..5d59ae8 100644
> --- a/include/linux/nfs_mount.h
> +++ b/include/linux/nfs_mount.h
> @@ -69,5 +69,6 @@ struct nfs_mount_data {
>  #define NFS_MOUNT_LOOKUP_CACHE_NONEG	0x10000
>  #define NFS_MOUNT_LOOKUP_CACHE_NONE	0x20000
>  #define NFS_MOUNT_NORESVPORT		0x40000
> +#define NFS_MOUNT_LEGACY_INTERFACE	0x80000
> 
>  #endif

--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux