pNFS/flexfiles: Ensure we record layoutstats even if RPC is terminated early
authorTrond Myklebust <trond.myklebust@primarydata.com>
Tue, 22 Dec 2015 20:32:00 +0000 (15:32 -0500)
committerTrond Myklebust <trond.myklebust@primarydata.com>
Mon, 28 Dec 2015 19:32:41 +0000 (14:32 -0500)
commit4d0ac22109740c36174c5aac630876b2af0f6943
tree991f5605fcf9b6893efd2cb309c003e6e8b4ed48
parent37e9ed22b1552fa94ee7db2901a5e7d8bdf60b15
pNFS/flexfiles: Ensure we record layoutstats even if RPC is terminated early

Currently, we will only record the layoutstats correctly if the
RPC call successfully obtains a slot. If we exit before that
happens, then we may find ourselves starting the busy timer through
the call in ff_layout_(read|write)_prepare_layoutstats, but never stopping it.

The same thing happens if we're doing DA-DS.

The fix is to ensure that we catch these cases in the rpc_release()
callback.

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