recovery: remember byte-range locks and reclaim during recovery
nfs41_open_state maintains a list of outstanding byte-range locks by calling open_lock_add() and open_lock_remove() in lock.c during client state recovery, after reclaiming each OPEN stateid, send LOCK requests with reclaim=TRUE for each lock it owns, and update the open's lock stateid with the result added 'bool_t reclaim' argument to nfs41_lock(); when set, compound_encode_send_decode() is called with try_recovery=FALSE to avoid recursive recovery Signed-off-by: Casey Bodley <cbodley@citi.umich.edu>
This commit is contained in:
parent
1906610544
commit
222c1bf020
7 changed files with 141 additions and 56 deletions
|
|
@ -975,6 +975,7 @@ int nfs41_lock(
|
|||
IN uint32_t type,
|
||||
IN uint64_t offset,
|
||||
IN uint64_t length,
|
||||
IN bool_t reclaim,
|
||||
IN OUT stateid_arg *stateid);
|
||||
|
||||
int nfs41_unlock(
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue