Merge branch 'globalheartbeat-2' of git://oss.oracle.com/git/smushran/linux-2.6 into...
[pandora-kernel.git] / fs / ocfs2 / dlm / dlmdebug.c
index 5efdd37..272ec86 100644 (file)
@@ -493,7 +493,7 @@ static int debug_mle_print(struct dlm_ctxt *dlm, struct debug_buffer *db)
        struct hlist_head *bucket;
        struct hlist_node *list;
        int i, out = 0;
-       unsigned long total = 0, longest = 0, bktcnt;
+       unsigned long total = 0, longest = 0, bucket_count = 0;
 
        out += snprintf(db->buf + out, db->len - out,
                        "Dumping MLEs for Domain: %s\n", dlm->name);
@@ -505,13 +505,13 @@ static int debug_mle_print(struct dlm_ctxt *dlm, struct debug_buffer *db)
                        mle = hlist_entry(list, struct dlm_master_list_entry,
                                          master_hash_node);
                        ++total;
-                       ++bktcnt;
+                       ++bucket_count;
                        if (db->len - out < 200)
                                continue;
                        out += dump_mle(mle, db->buf + out, db->len - out);
                }
-               longest = max(longest, bktcnt);
-               bktcnt = 0;
+               longest = max(longest, bucket_count);
+               bucket_count = 0;
        }
        spin_unlock(&dlm->master_lock);
 
@@ -636,8 +636,14 @@ static void *lockres_seq_start(struct seq_file *m, loff_t *pos)
        spin_lock(&dlm->track_lock);
        if (oldres)
                track_list = &oldres->tracking;
-       else
+       else {
                track_list = &dlm->tracking_list;
+               if (list_empty(track_list)) {
+                       dl = NULL;
+                       spin_unlock(&dlm->track_lock);
+                       goto bail;
+               }
+       }
 
        list_for_each_entry(res, track_list, tracking) {
                if (&res->tracking == &dlm->tracking_list)
@@ -660,6 +666,7 @@ static void *lockres_seq_start(struct seq_file *m, loff_t *pos)
        } else
                dl = NULL;
 
+bail:
        /* passed to seq_show */
        return dl;
 }
@@ -775,7 +782,9 @@ static int debug_state_print(struct dlm_ctxt *dlm, struct debug_buffer *db)
 
        /* Domain: xxxxxxxxxx  Key: 0xdfbac769 */
        out += snprintf(db->buf + out, db->len - out,
-                       "Domain: %s  Key: 0x%08x\n", dlm->name, dlm->key);
+                       "Domain: %s  Key: 0x%08x  Protocol: %d.%d\n",
+                       dlm->name, dlm->key, dlm->dlm_locking_proto.pv_major,
+                       dlm->dlm_locking_proto.pv_minor);
 
        /* Thread Pid: xxx  Node: xxx  State: xxxxx */
        out += snprintf(db->buf + out, db->len - out,