Re: [PATCH 1/1] NFSv4.1 another fix for EXCHGID4_FLAG_USE_PNFS_DS for DS server

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

 



Hi Olga,

On Mon, 2024-06-24 at 09:28 -0400, Olga Kornievskaia wrote:
> From: Olga Kornievskaia <kolga@xxxxxxxxxx>
> 
> Previously in order to mark the communication with the DS server,
> we tried to use NFS_CS_DS in cl_flags. However, this flag would
> only be saved for the DS server and in case where DS equals MDS,
> the client would not find a matching nfs_client in nfs_match_client
> that represents the MDS (but is also a DS).
> 
> Instead, don't rely on the NFS_CS_DS but instead use NFS_CS_PNFS.
> 
> Fixes: 379e4adfddd6 ("NFSv4.1: fixup use EXCHGID4_FLAG_USE_PNFS_DS
> for DS server")
> Signed-off-by: Olga Kornievskaia <kolga@xxxxxxxxxx>
> ---
>  fs/nfs/nfs4client.c | 6 ++----
>  fs/nfs/nfs4proc.c   | 2 +-
>  2 files changed, 3 insertions(+), 5 deletions(-)
> 
> diff --git a/fs/nfs/nfs4client.c b/fs/nfs/nfs4client.c
> index 11e3a285594c..ac80f87cb9d9 100644
> --- a/fs/nfs/nfs4client.c
> +++ b/fs/nfs/nfs4client.c
> @@ -231,9 +231,8 @@ struct nfs_client *nfs4_alloc_client(const struct
> nfs_client_initdata *cl_init)
>  		__set_bit(NFS_CS_INFINITE_SLOTS, &clp->cl_flags);
>  	__set_bit(NFS_CS_DISCRTRY, &clp->cl_flags);
>  	__set_bit(NFS_CS_NO_RETRANS_TIMEOUT, &clp->cl_flags);
> -
> -	if (test_bit(NFS_CS_DS, &cl_init->init_flags))
> -		__set_bit(NFS_CS_DS, &clp->cl_flags);
> +	if (test_bit(NFS_CS_PNFS, &cl_init->init_flags))
> +		__set_bit(NFS_CS_PNFS, &clp->cl_flags);

Won't this change cause the match in nfs_get_client() to fail?



-- 
Trond Myklebust
Linux NFS client maintainer, Hammerspace
trond.myklebust@xxxxxxxxxxxxxxx






[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