]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blobdiff - src/patches/suse-2.6.27.25/patches.fixes/ocfs2-dlm-dlm_set_lockres_owner-and-dlm_change_lo.patch
Updated xen patches taken from suse.
[people/pmueller/ipfire-2.x.git] / src / patches / suse-2.6.27.25 / patches.fixes / ocfs2-dlm-dlm_set_lockres_owner-and-dlm_change_lo.patch
diff --git a/src/patches/suse-2.6.27.25/patches.fixes/ocfs2-dlm-dlm_set_lockres_owner-and-dlm_change_lo.patch b/src/patches/suse-2.6.27.25/patches.fixes/ocfs2-dlm-dlm_set_lockres_owner-and-dlm_change_lo.patch
new file mode 100644 (file)
index 0000000..871dc1f
--- /dev/null
@@ -0,0 +1,84 @@
+From: Sunil Mushran <sunil.mushran@oracle.com>
+Date: Thu, 26 Feb 2009 15:00:45 -0800
+Subject: ocfs2/dlm: dlm_set_lockres_owner() and dlm_change_lockres_owner() inlined
+Patch-mainline: 2.6.30
+References: bnc#408304
+
+This patch inlines dlm_set_lockres_owner() and dlm_change_lockres_owner().
+
+Signed-off-by: Sunil Mushran <sunil.mushran@oracle.com>
+Signed-off-by: Mark Fasheh <mfasheh@suse.com>
+---
+ fs/ocfs2/dlm/dlmcommon.h |   21 ++++++++++++++++++---
+ fs/ocfs2/dlm/dlmmaster.c |   19 -------------------
+ 2 files changed, 18 insertions(+), 22 deletions(-)
+
+Index: linux-2.6.27-sle11_ocfs2_update/fs/ocfs2/dlm/dlmcommon.h
+===================================================================
+--- linux-2.6.27-sle11_ocfs2_update.orig/fs/ocfs2/dlm/dlmcommon.h
++++ linux-2.6.27-sle11_ocfs2_update/fs/ocfs2/dlm/dlmcommon.h
+@@ -858,9 +858,7 @@ struct dlm_lock_resource * dlm_lookup_lo
+                                             unsigned int len);
+ int dlm_is_host_down(int errno);
+-void dlm_change_lockres_owner(struct dlm_ctxt *dlm,
+-                            struct dlm_lock_resource *res,
+-                            u8 owner);
++
+ struct dlm_lock_resource * dlm_get_lock_resource(struct dlm_ctxt *dlm,
+                                                const char *lockid,
+                                                int namelen,
+@@ -1123,6 +1121,23 @@ static inline int dlm_node_iter_next(str
+       return bit;
+ }
++static inline void dlm_set_lockres_owner(struct dlm_ctxt *dlm,
++                                       struct dlm_lock_resource *res,
++                                       u8 owner)
++{
++      assert_spin_locked(&res->spinlock);
++
++      res->owner = owner;
++}
++static inline void dlm_change_lockres_owner(struct dlm_ctxt *dlm,
++                                          struct dlm_lock_resource *res,
++                                          u8 owner)
++{
++      assert_spin_locked(&res->spinlock);
++
++      if (owner != res->owner)
++              dlm_set_lockres_owner(dlm, res, owner);
++}
+ #endif /* DLMCOMMON_H */
+Index: linux-2.6.27-sle11_ocfs2_update/fs/ocfs2/dlm/dlmmaster.c
+===================================================================
+--- linux-2.6.27-sle11_ocfs2_update.orig/fs/ocfs2/dlm/dlmmaster.c
++++ linux-2.6.27-sle11_ocfs2_update/fs/ocfs2/dlm/dlmmaster.c
+@@ -511,25 +511,6 @@ void dlm_destroy_master_caches(void)
+               kmem_cache_destroy(dlm_lockres_cache);
+ }
+-static void dlm_set_lockres_owner(struct dlm_ctxt *dlm,
+-                                struct dlm_lock_resource *res,
+-                                u8 owner)
+-{
+-      assert_spin_locked(&res->spinlock);
+-
+-      res->owner = owner;
+-}
+-
+-void dlm_change_lockres_owner(struct dlm_ctxt *dlm,
+-                            struct dlm_lock_resource *res, u8 owner)
+-{
+-      assert_spin_locked(&res->spinlock);
+-
+-      if (owner != res->owner)
+-              dlm_set_lockres_owner(dlm, res, owner);
+-}
+-
+-
+ static void dlm_lockres_release(struct kref *kref)
+ {
+       struct dlm_lock_resource *res;