[Ocfs2-devel] [PATCH] ocfs2: add missing lockres put in dlm_mig_lockres_handler

shencanquan shencanquan at huawei.com
Wed Jun 5 04:11:41 PDT 2013


On 2013/6/5 16:53, Xue jiufei wrote:
> dlm_mig_lockres_handler goes to leave, when lockres with state
> DLM_LOCK_RES_RECOVERING, not putting lockres taken in dlm_lookup_lockres.
   it is obvious bug. it cause memory leak.
   Reviewed-by: shencanquan <shencanquan at huawei.com>
> Signed-off-by: joyce<xuejiufei at huawei.com>
> ---
>   fs/ocfs2/dlm/dlmrecovery.c |    1 +
>   1 file changed, 1 insertion(+)
>
> diff --git a/fs/ocfs2/dlm/dlmrecovery.c b/fs/ocfs2/dlm/dlmrecovery.c
> index a145cf8..241ced4 100644
> --- a/fs/ocfs2/dlm/dlmrecovery.c
> +++ b/fs/ocfs2/dlm/dlmrecovery.c
> @@ -1408,6 +1408,7 @@ int dlm_mig_lockres_handler(struct o2net_msg *msg, u32 len, void *data,
>   				     mres->lockname_len, mres->lockname);
>   				ret = -EFAULT;
>   				spin_unlock(&res->spinlock);
> +				dlm_lockres_put(res);
>   				goto leave;
>   			}
>   			res->state |= DLM_LOCK_RES_MIGRATING;






More information about the Ocfs2-devel mailing list