Rojin George has uploaded this change for review. ( https://review.gerrithub.io/c/ffilz/nfs-ganesha/+/1186237?usp=email ) Change subject: Handle parallel delegation recalls for the same fsal_objs ...................................................................... Handle parallel delegation recalls for the same fsal_objs There were multiple delegation recalls happening for the same obj. The first thread enters with state lock to recall, once found that it could expire off the client which has gone inactive, we were releasing the state lock and setting DELEG_GRANTED for the state->state_data.deleg.sd_state, before actually expiring the client. This opens up window to the contending async task to acquire the same state lock and crash off, as it started dereferencing the clientid related structures which would have gone stale, as part of the first threads client expire path. This CR avoid such contenders to skip processing this state by setting DELEG_GRANTED only after the client is expired off and owner reference to state removed off the clientid. Change-Id: I1769c8138eafa00ac0b233f629e0384f5e8b9d79 Signed-off-by: Rojin George <itsmerojin@gmail.com> --- M src/FSAL_UP/fsal_up_top.c 1 file changed, 1 insertion(+), 1 deletion(-) git pull ssh://review.gerrithub.io:29418/ffilz/nfs-ganesha refs/changes/37/1186237/1 -- To view, visit https://review.gerrithub.io/c/ffilz/nfs-ganesha/+/1186237?usp=email To unsubscribe, or for help writing mail filters, visit https://review.gerrithub.io/settings?usp=email Gerrit-MessageType: newchange Gerrit-Project: ffilz/nfs-ganesha Gerrit-Branch: next Gerrit-Change-Id: I1769c8138eafa00ac0b233f629e0384f5e8b9d79 Gerrit-Change-Number: 1186237 Gerrit-PatchSet: 1 Gerrit-Owner: Rojin George <itsmerojin@gmail.com>