diff options
Diffstat (limited to 'fs/ocfs2/dlmglue.c')
| -rw-r--r-- | fs/ocfs2/dlmglue.c | 5 | 
1 files changed, 4 insertions, 1 deletions
| diff --git a/fs/ocfs2/dlmglue.c b/fs/ocfs2/dlmglue.c index 4f7795fb5fc0..88577eb5d712 100644 --- a/fs/ocfs2/dlmglue.c +++ b/fs/ocfs2/dlmglue.c @@ -2545,6 +2545,7 @@ int ocfs2_super_lock(struct ocfs2_super *osb,  	 * everything is up to the caller :) */  	status = ocfs2_should_refresh_lock_res(lockres);  	if (status < 0) { +		ocfs2_cluster_unlock(osb, lockres, level);  		mlog_errno(status);  		goto bail;  	} @@ -2553,8 +2554,10 @@ int ocfs2_super_lock(struct ocfs2_super *osb,  		ocfs2_complete_lock_res_refresh(lockres, status); -		if (status < 0) +		if (status < 0) { +			ocfs2_cluster_unlock(osb, lockres, level);  			mlog_errno(status); +		}  		ocfs2_track_lock_refresh(lockres);  	}  bail: |