From 87b61133b627032c12ab4759ea1f96cbc4e6719e Mon Sep 17 00:00:00 2001 From: Jinshan Xiong Date: Wed, 5 Mar 2014 22:45:47 -0800 Subject: [PATCH] LU-4591 lov: cancel ungranted sub lock When the top lock is canceled due to error, we should cancel ungranted sub lock otherwise the sublock state is undefined. Signed-off-by: Jinshan Xiong Change-Id: I5c1df5220ce77ff434463d6443135c625e79ea04 Reviewed-on: http://review.whamcloud.com/9524 Tested-by: Jenkins Tested-by: Maloo Reviewed-by: John L. Hammond Reviewed-by: Andreas Dilger Reviewed-by: Oleg Drokin --- lustre/lov/lov_lock.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lustre/lov/lov_lock.c b/lustre/lov/lov_lock.c index 00d372d..916a415 100644 --- a/lustre/lov/lov_lock.c +++ b/lustre/lov/lov_lock.c @@ -689,6 +689,7 @@ static int lov_lock_unuse(const struct lu_env *env, lov_sublock_release(env, lck, i, 0, 0); break; default: + cl_lock_cancel(subenv->lse_env, sublock); lov_sublock_release(env, lck, i, 1, 0); break; } @@ -745,6 +746,7 @@ static void lov_lock_cancel(const struct lu_env *env, lov_sublock_release(env, lck, i, 0, 0); break; default: + cl_lock_cancel(subenv->lse_env, sublock); lov_sublock_release(env, lck, i, 1, 0); break; } -- 1.8.3.1