Lines Matching refs:res
50 void dlm_print_one_lock_resource(struct dlm_lock_resource *res) in dlm_print_one_lock_resource() argument
52 spin_lock(&res->spinlock); in dlm_print_one_lock_resource()
53 __dlm_print_one_lock_resource(res); in dlm_print_one_lock_resource()
54 spin_unlock(&res->spinlock); in dlm_print_one_lock_resource()
57 static void dlm_print_lockres_refmap(struct dlm_lock_resource *res) in dlm_print_lockres_refmap() argument
60 assert_spin_locked(&res->spinlock); in dlm_print_lockres_refmap()
65 bit = find_next_bit(res->refmap, O2NM_MAX_NODES, bit); in dlm_print_lockres_refmap()
71 printk("], inflight=%u\n", res->inflight_locks); in dlm_print_lockres_refmap()
97 void __dlm_print_one_lock_resource(struct dlm_lock_resource *res) in __dlm_print_one_lock_resource() argument
102 assert_spin_locked(&res->spinlock); in __dlm_print_one_lock_resource()
104 stringify_lockname(res->lockname.name, res->lockname.len, in __dlm_print_one_lock_resource()
107 buf, res->owner, res->state); in __dlm_print_one_lock_resource()
109 res->last_used, atomic_read(&res->refs.refcount), in __dlm_print_one_lock_resource()
110 list_empty(&res->purge) ? "no" : "yes"); in __dlm_print_one_lock_resource()
113 list_empty(&res->dirty) ? "no" : "yes", in __dlm_print_one_lock_resource()
114 list_empty(&res->recovering) ? "no" : "yes", in __dlm_print_one_lock_resource()
115 res->migration_pending ? "yes" : "no"); in __dlm_print_one_lock_resource()
117 res->inflight_locks, atomic_read(&res->asts_reserved)); in __dlm_print_one_lock_resource()
118 dlm_print_lockres_refmap(res); in __dlm_print_one_lock_resource()
120 list_for_each_entry(lock, &res->granted, list) { in __dlm_print_one_lock_resource()
124 list_for_each_entry(lock, &res->converting, list) { in __dlm_print_one_lock_resource()
128 list_for_each_entry(lock, &res->blocked, list) { in __dlm_print_one_lock_resource()
387 struct dlm_lock_resource *res; in debug_purgelist_print() local
395 list_for_each_entry(res, &dlm->purge_list, purge) { in debug_purgelist_print()
399 spin_lock(&res->spinlock); in debug_purgelist_print()
400 out += stringify_lockname(res->lockname.name, in debug_purgelist_print()
401 res->lockname.len, in debug_purgelist_print()
404 (jiffies - res->last_used)/HZ); in debug_purgelist_print()
405 spin_unlock(&res->spinlock); in debug_purgelist_print()
523 static int dump_lockres(struct dlm_lock_resource *res, char *buf, int len) in dump_lockres() argument
530 out += stringify_lockname(res->lockname.name, res->lockname.len, in dump_lockres()
538 res->owner, res->state, res->last_used, in dump_lockres()
539 !list_empty(&res->purge), in dump_lockres()
540 !list_empty(&res->dirty), in dump_lockres()
541 !list_empty(&res->recovering), in dump_lockres()
542 res->inflight_locks, res->migration_pending, in dump_lockres()
543 atomic_read(&res->asts_reserved), in dump_lockres()
544 atomic_read(&res->refs.refcount)); in dump_lockres()
548 out += stringify_nodemap(res->refmap, O2NM_MAX_NODES, in dump_lockres()
556 "%02x", (unsigned char)res->lvb[i]); in dump_lockres()
560 list_for_each_entry(lock, &res->granted, list) in dump_lockres()
564 list_for_each_entry(lock, &res->converting, list) in dump_lockres()
568 list_for_each_entry(lock, &res->blocked, list) in dump_lockres()
581 struct dlm_lock_resource *res = NULL; in lockres_seq_start() local
596 list_for_each_entry(res, track_list, tracking) { in lockres_seq_start()
597 if (&res->tracking == &dlm->tracking_list) in lockres_seq_start()
598 res = NULL; in lockres_seq_start()
600 dlm_lockres_get(res); in lockres_seq_start()
608 dl->dl_res = res; in lockres_seq_start()
610 if (res) { in lockres_seq_start()
611 spin_lock(&res->spinlock); in lockres_seq_start()
612 dump_lockres(res, dl->dl_buf, dl->dl_len - 1); in lockres_seq_start()
613 spin_unlock(&res->spinlock); in lockres_seq_start()