Re: PATCH [v3 0/2] NFSD: use CB_GETATTR to handle GETATTR conflict with write delegation

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

 



On Thu, Feb 15, 2024 at 02:05:20PM -0800, Dai Ngo wrote:
> Currently GETATTR conflict with a write delegation is handled by
> recalling the delegation before replying to the GETATTR.
> 
> This patch series add supports for CB_GETATTR callback to get the latest
> change_info and size information of the file from the client that holds
> the delegation to reply to the GETATTR from the second client.
> 
> NOTE: this patch series is mostly the same as the previous patches which
> were backed out when un unrelated problem of NFSD server hang on reboot
> was reported.
> 
> The only difference is the wait_on_bit() in nfsd4_deleg_getattr_conflict was
> replaced with wait_on_bit_timeout() with 30ms timeout to avoid a potential
> DOS attack by exhausting NFSD kernel threads with GETATTR conflicts.
> 
> v2:
>   . update comments in nfsd4_deleg_getattr_conflict
> 
> v3:
>   . rebase with nfsd-next
> 
>  fs/nfsd/nfs4callback.c |  97 ++++++++++++++++++++++++++++++++++++-
>  fs/nfsd/nfs4state.c    | 115 ++++++++++++++++++++++++++++++++++++++++----
>  fs/nfsd/nfs4xdr.c      |  10 +++-
>  fs/nfsd/nfsd.h         |   1 +
>  fs/nfsd/state.h        |  24 ++++++++-
>  fs/nfsd/xdr4cb.h       |  18 +++++++
>  6 files changed, 251 insertions(+), 14 deletions(-)
> 

Applied to nfsd-next. Thanks for your efforts!

-- 
Chuck Lever




[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