NFSv4: Don't use the zero stateid with layoutget
authorTrond Myklebust <trond.myklebust@hammerspace.com>
Tue, 16 Jul 2019 19:38:28 +0000 (15:38 -0400)
committerTrond Myklebust <trond.myklebust@hammerspace.com>
Thu, 18 Jul 2019 18:43:52 +0000 (14:43 -0400)
commitd9aba2b40de6fddd83f2fe3a5ac2bcd2c98fa66b
treeb69a831696a3769da3fcbe28f5957b83dbfc18d5
parent7402a4fedc2bc448100c2d086406c708451b16dc
NFSv4: Don't use the zero stateid with layoutget

The NFSv4.1 protocol explicitly forbids us from using the zero stateid
together with layoutget, so when we see that nfs4_select_rw_stateid()
is unable to return a valid delegation, lock or open stateid, then
we should initiate recovery and retry.

Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
fs/nfs/nfs4state.c
fs/nfs/pnfs.c