Commit c9fdeb28 removed a 'continue' after checking if the lease needs
to be renewed. However, if client hasn't moved, the code falls down to
starting reboot recovery erroneously (ie., sends open reclaim and gets
back stale_clientid error) before recovering from getting stale_clientid
on the renew operation.

Signed-off-by: Olga Kornievskaia <kolga@netapp.com>
Fixes: c9fdeb280b (NFS: Add basic migration support to state manager thread)
Cc: stable@vger.kernel.org # 3.13+
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
This commit is contained in:
Olga Kornievskaia 2014-09-24 18:11:28 -04:00 коммит произвёл Trond Myklebust
Родитель 5466112f09
Коммит 8faaa6d5d4
1 изменённых файлов: 1 добавлений и 0 удалений

Просмотреть файл

@ -2345,6 +2345,7 @@ static void nfs4_state_manager(struct nfs_client *clp)
status = nfs4_check_lease(clp); status = nfs4_check_lease(clp);
if (status < 0) if (status < 0)
goto out_error; goto out_error;
continue;
} }
if (test_and_clear_bit(NFS4CLNT_MOVED, &clp->cl_state)) { if (test_and_clear_bit(NFS4CLNT_MOVED, &clp->cl_state)) {