NFS41: make close wait for layoutreturn
authorPeng Tao <tao.peng@primarydata.com>
Tue, 22 Sep 2015 03:35:22 +0000 (11:35 +0800)
committerTrond Myklebust <trond.myklebust@primarydata.com>
Wed, 23 Sep 2015 12:55:32 +0000 (08:55 -0400)
commit500d701f336b2771d34e46da7875a4782515a652
tree217881fc9e1b5cc45f1f2b4042c6a161f84aebd0
parent834e465bba38f2768747bccb5f00e951e72d2bf5
NFS41: make close wait for layoutreturn

If we send a layoutreturn asynchronously before close, the close
might reach server first and layoutreturn would fail with BADSTATEID
because there is nothing keeping the layout stateid alive.

Also do not pretend sending layoutreturn if we are not.

Signed-off-by: Peng Tao <tao.peng@primarydata.com>
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
fs/nfs/nfs4proc.c
fs/nfs/pnfs.c
fs/nfs/pnfs.h