Lines Matching refs:res
35 void dlm_print_one_lock_resource(struct dlm_lock_resource *res) in dlm_print_one_lock_resource() argument
37 spin_lock(&res->spinlock); in dlm_print_one_lock_resource()
38 __dlm_print_one_lock_resource(res); in dlm_print_one_lock_resource()
39 spin_unlock(&res->spinlock); in dlm_print_one_lock_resource()
42 static void dlm_print_lockres_refmap(struct dlm_lock_resource *res) in dlm_print_lockres_refmap() argument
45 assert_spin_locked(&res->spinlock); in dlm_print_lockres_refmap()
50 bit = find_next_bit(res->refmap, O2NM_MAX_NODES, bit); in dlm_print_lockres_refmap()
56 printk("], inflight=%u\n", res->inflight_locks); in dlm_print_lockres_refmap()
82 void __dlm_print_one_lock_resource(struct dlm_lock_resource *res) in __dlm_print_one_lock_resource() argument
87 assert_spin_locked(&res->spinlock); in __dlm_print_one_lock_resource()
89 stringify_lockname(res->lockname.name, res->lockname.len, in __dlm_print_one_lock_resource()
92 buf, res->owner, res->state); in __dlm_print_one_lock_resource()
94 res->last_used, kref_read(&res->refs), in __dlm_print_one_lock_resource()
95 list_empty(&res->purge) ? "no" : "yes"); in __dlm_print_one_lock_resource()
98 list_empty(&res->dirty) ? "no" : "yes", in __dlm_print_one_lock_resource()
99 list_empty(&res->recovering) ? "no" : "yes", in __dlm_print_one_lock_resource()
100 res->migration_pending ? "yes" : "no"); in __dlm_print_one_lock_resource()
102 res->inflight_locks, atomic_read(&res->asts_reserved)); in __dlm_print_one_lock_resource()
103 dlm_print_lockres_refmap(res); in __dlm_print_one_lock_resource()
105 list_for_each_entry(lock, &res->granted, list) { in __dlm_print_one_lock_resource()
109 list_for_each_entry(lock, &res->converting, list) { in __dlm_print_one_lock_resource()
113 list_for_each_entry(lock, &res->blocked, list) { in __dlm_print_one_lock_resource()
352 struct dlm_lock_resource *res; in debug_purgelist_print() local
360 list_for_each_entry(res, &dlm->purge_list, purge) { in debug_purgelist_print()
364 spin_lock(&res->spinlock); in debug_purgelist_print()
365 out += stringify_lockname(res->lockname.name, in debug_purgelist_print()
366 res->lockname.len, in debug_purgelist_print()
369 (jiffies - res->last_used)/HZ); in debug_purgelist_print()
370 spin_unlock(&res->spinlock); in debug_purgelist_print()
488 static int dump_lockres(struct dlm_lock_resource *res, char *buf, int len) in dump_lockres() argument
495 out += stringify_lockname(res->lockname.name, res->lockname.len, in dump_lockres()
503 res->owner, res->state, res->last_used, in dump_lockres()
504 !list_empty(&res->purge), in dump_lockres()
505 !list_empty(&res->dirty), in dump_lockres()
506 !list_empty(&res->recovering), in dump_lockres()
507 res->inflight_locks, res->migration_pending, in dump_lockres()
508 atomic_read(&res->asts_reserved), in dump_lockres()
509 kref_read(&res->refs)); in dump_lockres()
513 out += stringify_nodemap(res->refmap, O2NM_MAX_NODES, in dump_lockres()
521 "%02x", (unsigned char)res->lvb[i]); in dump_lockres()
525 list_for_each_entry(lock, &res->granted, list) in dump_lockres()
529 list_for_each_entry(lock, &res->converting, list) in dump_lockres()
533 list_for_each_entry(lock, &res->blocked, list) in dump_lockres()
546 struct dlm_lock_resource *res = NULL; in lockres_seq_start() local
561 list_for_each_entry(res, track_list, tracking) { in lockres_seq_start()
562 if (&res->tracking == &dlm->tracking_list) in lockres_seq_start()
563 res = NULL; in lockres_seq_start()
565 dlm_lockres_get(res); in lockres_seq_start()
573 dl->dl_res = res; in lockres_seq_start()
575 if (res) { in lockres_seq_start()
576 spin_lock(&res->spinlock); in lockres_seq_start()
577 dump_lockres(res, dl->dl_buf, dl->dl_len - 1); in lockres_seq_start()
578 spin_unlock(&res->spinlock); in lockres_seq_start()