[Ocfs2-commits] mfasheh commits r1960 - trunk/fs/ocfs2/dlm

svn-commits at oss.oracle.com svn-commits at oss.oracle.com
Mon Mar 7 19:41:28 CST 2005


Author: mfasheh
Signed-off-by: khackel
Date: 2005-03-07 19:41:26 -0600 (Mon, 07 Mar 2005)
New Revision: 1960

Modified:
   trunk/fs/ocfs2/dlm/dlmmod.c
Log:
* purge list debugging

Signed-off-by: khackel



Modified: trunk/fs/ocfs2/dlm/dlmmod.c
===================================================================
--- trunk/fs/ocfs2/dlm/dlmmod.c	2005-03-08 00:55:01 UTC (rev 1959)
+++ trunk/fs/ocfs2/dlm/dlmmod.c	2005-03-08 01:41:26 UTC (rev 1960)
@@ -69,6 +69,8 @@
 
 static void dlm_dump_all_lock_resources(void);
 static void dlm_dump_lock_resources(dlm_ctxt *dlm);
+static void dlm_dump_purge_list(dlm_ctxt *dlm);
+static void dlm_dump_all_purge_lists(void);
 
 
 
@@ -97,6 +99,7 @@
 #ifdef DLM_MLE_DEBUG
 	{ 'm', dlm_dump_all_mles },
 #endif
+	{ 'p', dlm_dump_all_purge_lists },
 };
 static int dlm_debug_map_sz = (sizeof(dlm_debug_map) / 
 			       sizeof(dlm_debug_funcs));
@@ -1044,5 +1047,38 @@
 	spin_unlock(&dlm->spinlock);
 }
 
+static void dlm_dump_purge_list(dlm_ctxt *dlm)
+{
+	struct list_head *iter;
+	dlm_lock_resource *lockres;
+
+	printk("Purge list for DLM Domain \"%s\"\n", dlm->name);
+	printk("Last_used\tName\n");
+
+	spin_lock(&dlm->spinlock);
+	list_for_each(iter, &dlm->purge_list) {
+		lockres = list_entry(iter, dlm_lock_resource, purge);
+
+		spin_lock(&lockres->spinlock);
+		printk("%lu\t%.*s\n", lockres->last_used,
+		       lockres->lockname.len, lockres->lockname.name);
+		spin_unlock(&lockres->spinlock);
+	}
+	spin_unlock(&dlm->spinlock);
+}
+
+static void dlm_dump_all_purge_lists(void)
+{
+	dlm_ctxt *dlm;
+	struct list_head *iter;
+
+	spin_lock(&dlm_domain_lock);
+	list_for_each(iter, &dlm_domains) {
+		dlm = list_entry (iter, dlm_ctxt, list);
+		dlm_dump_purge_list(dlm);
+	}
+	spin_unlock(&dlm_domain_lock);
+}
+
 module_init (dlm_driver_entry);
 module_exit (dlm_driver_exit);



More information about the Ocfs2-commits mailing list