NFSv4: Fix a NFSv4 state manager deadlock
authorTrond Myklebust <trond.myklebust@hammerspace.com>
Tue, 20 Nov 2018 01:11:45 +0000 (20:11 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 13 Dec 2018 08:16:13 +0000 (09:16 +0100)
commite359a17143ef285921c2d5f55bfe3042412b5625
tree19f2288349310bb308bf29dba5a8b5430f8ea665
parent4a9ad460a07b2fcbe071fb33df5b79b12dc4ca61
NFSv4: Fix a NFSv4 state manager deadlock

[ Upstream commit aeabb3c96186a0f944fc2b1f25c84d5eb3a93fa9 ]

Fix a deadlock whereby the NFSv4 state manager can get stuck in the
delegation return code, waiting for a layout return to complete in
another thread. If the server reboots before that other thread
completes, then we need to be able to start a second state
manager thread in order to perform recovery.

Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
fs/nfs/nfs4_fs.h
fs/nfs/nfs4state.c