[Ocfs2-devel] [PATCH v2] ocfs2: fix possible memory leak in dlm_process_recovery_data

Joseph Qi joseph.qi at huawei.com
Thu May 2 05:56:50 PDT 2013


We found a possible memory leak in dlm_process_recovery_data when doing
code review. In dlm_process_recovery_data, it creates newlock each time,
but don't free when it is bad, and then it will lead to memory leak.

Cc: stable at vger.kernel.org
Signed-off-by: Joseph Qi <joseph.qi at huawei.com>
Reviewed-by: Jie Liu <jeff.liu at oracle.com>

---
 fs/ocfs2/dlm/dlmrecovery.c |    4 ++++
 1 file changed, 4 insertions(+)

diff --git a/fs/ocfs2/dlm/dlmrecovery.c b/fs/ocfs2/dlm/dlmrecovery.c
index eeac97b..9f08523 100644
--- a/fs/ocfs2/dlm/dlmrecovery.c
+++ b/fs/ocfs2/dlm/dlmrecovery.c
@@ -1974,6 +1974,10 @@ skip_lvb:
 			     res->lockname.len, res->lockname.name, ml->node);
 			dlm_lockres_set_refmap_bit(dlm, res, ml->node);
 			added++;
+		} else {
+			/* Free the new lock if it is bad */
+			dlm_lock_put(newlock);
+			newlock = NULL;
 		}
 		spin_unlock(&res->spinlock);
 	}
-- 
1.7.9.7

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://oss.oracle.com/pipermail/ocfs2-devel/attachments/20130502/a288dc6b/attachment.html 


More information about the Ocfs2-devel mailing list