mbox series

[0/4,v4] nfsd: fix deadlock in move_to_close_lru()

Message ID 20240408021156.6104-1-neilb@suse.de (mailing list archive)
Headers show
Series nfsd: fix deadlock in move_to_close_lru() | expand

Message

NeilBrown April 8, 2024, 2:09 a.m. UTC
This series replaces 
   nfsd: drop st_mutex and rp_mutex before calling move_to_close_lru()
which was recently dropped as a problem was found.
The first two patches rearrange code without important functional change.
The last two address the two relaced problems of two different mutexes which are 
held while waiting and can each trigger a deadlock.

This is against v6.9-rc2.

Thanks,
NeilBrown

 [PATCH 1/4] nfsd: perform all find_openstateowner_str calls in the
 [PATCH 2/4] nfsd: move nfsd4_cstate_assign_replay() earlier in open
 [PATCH 3/4] nfsd: replace rp_mutex to avoid deadlock in
 [PATCH 4/4] nfsd: drop st_mutex before calling move_to_close_lru()

Comments

Chuck Lever April 9, 2024, 2:09 a.m. UTC | #1
On Sun, Apr 07, 2024 at 10:09:14PM -0400, NeilBrown wrote:
> This series replaces 
>    nfsd: drop st_mutex and rp_mutex before calling move_to_close_lru()
> which was recently dropped as a problem was found.
> The first two patches rearrange code without important functional change.
> The last two address the two relaced problems of two different mutexes which are 
> held while waiting and can each trigger a deadlock.
> 
> This is against v6.9-rc2.
> 
> Thanks,
> NeilBrown
> 
>  [PATCH 1/4] nfsd: perform all find_openstateowner_str calls in the
>  [PATCH 2/4] nfsd: move nfsd4_cstate_assign_replay() earlier in open
>  [PATCH 3/4] nfsd: replace rp_mutex to avoid deadlock in
>  [PATCH 4/4] nfsd: drop st_mutex before calling move_to_close_lru()

Applied to nfsd-next. Thank you, Neil!