]> git.baikalelectronics.ru Git - kernel.git/commit
pNFS: Prevent unnecessary layoutreturns after delegreturn
authorTrond Myklebust <trond.myklebust@primarydata.com>
Sat, 19 Nov 2016 13:48:47 +0000 (08:48 -0500)
committerTrond Myklebust <trond.myklebust@primarydata.com>
Thu, 1 Dec 2016 22:21:48 +0000 (17:21 -0500)
commit4877409e81768b5a3012b5d0e24064e7bf2dc86e
tree9f2e7aa86a7750f71b9c082ab78b77be75c90301
parent97d8cb8984492f7b63bf0694eb9ffb067fe61906
pNFS: Prevent unnecessary layoutreturns after delegreturn

If we cannot grab the inode or superblock, then we cannot pin the
layout header, and so we cannot send a layoutreturn as part of an
async delegreturn call. In this case, we currently end up sending
an extra layoutreturn after the delegreturn. Since the layout was
implicitly returned by the delegreturn, that just gets a BAD_STATEID.

The fix is to simply complete the return-on-close immediately.

Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
fs/nfs/nfs4proc.c