Fix the ocfs2 patch
diff --git a/patches/ocfs2-dlm-fix-deadlock-when-dispatch-assert-master.patch b/patches/ocfs2-dlm-fix-deadlock-when-dispatch-assert-master.patch
index 02e2159..68a4f7e 100644
--- a/patches/ocfs2-dlm-fix-deadlock-when-dispatch-assert-master.patch
+++ b/patches/ocfs2-dlm-fix-deadlock-when-dispatch-assert-master.patch
@@ -25,9 +25,9 @@
[lizf: Backported to 3.4: adjust context]
Signed-off-by: Zefan Li <lizefan@huawei.com>
---
- fs/ocfs2/dlm/dlmmaster.c | 4 +++-
+ fs/ocfs2/dlm/dlmmaster.c | 7 +++++--
fs/ocfs2/dlm/dlmrecovery.c | 6 +++++-
- 2 files changed, 8 insertions(+), 2 deletions(-)
+ 2 files changed, 10 insertions(+), 3 deletions(-)
--- a/fs/ocfs2/dlm/dlmmaster.c
+++ b/fs/ocfs2/dlm/dlmmaster.c
@@ -39,7 +39,7 @@
if (!dlm_grab(dlm))
return DLM_MASTER_RESP_NO;
-@@ -1617,6 +1618,8 @@ send_response:
+@@ -1617,13 +1618,16 @@ send_response:
mlog(ML_ERROR, "failed to dispatch assert master work\n");
response = DLM_MASTER_RESP_ERROR;
dlm_lockres_put(res);
@@ -48,7 +48,16 @@
}
} else {
if (res)
-@@ -2041,7 +2044,6 @@ int dlm_dispatch_assert_master(struct dl
+ dlm_lockres_put(res);
+ }
+
+- dlm_put(dlm);
++ if (!dispatched)
++ dlm_put(dlm);
+ return response;
+ }
+
+@@ -2041,7 +2045,6 @@ int dlm_dispatch_assert_master(struct dl
/* queue up work for dlm_assert_master_worker */