Lines Matching +full:11 +full:- +full:14
1 // SPDX-License-Identifier: GPL-2.0
43 *pos = class - lock_classes; in l_next()
63 const char *name = class->name; in print_name()
66 name = __get_key_name(class->key, str); in print_name()
70 if (class->name_version > 1) in print_name()
71 seq_printf(m, "#%d", class->name_version); in print_name()
72 if (class->subclass) in print_name()
73 seq_printf(m, "/%d", class->subclass); in print_name()
82 int idx = class - lock_classes; in l_show()
90 seq_printf(m, "%p", class->key); in l_show()
107 list_for_each_entry(entry, &class->locks_after, entry) { in l_show()
108 if (entry->distance == 1) { in l_show()
109 seq_printf(m, " -> [%p] ", entry->class->key); in l_show()
110 print_name(m, entry->class); in l_show()
136 return lock_chains + (*pos - 1); in lc_start()
141 *pos = lockdep_next_lockchain(*pos - 1) + 1; in lc_next()
169 seq_printf(m, "irq_context: %s\n", irq_strs[chain->irq_context]); in lc_show()
171 for (i = 0; i < chain->depth; i++) { in lc_show()
173 if (!class->key) in lc_show()
176 seq_printf(m, "[%p] ", class->key); in lc_show()
205 seq_printf(m, " chain lookup misses: %11llu\n", in lockdep_stats_debug_show()
207 seq_printf(m, " chain lookup hits: %11llu\n", in lockdep_stats_debug_show()
209 seq_printf(m, " cyclic checks: %11llu\n", in lockdep_stats_debug_show()
211 seq_printf(m, " redundant checks: %11llu\n", in lockdep_stats_debug_show()
213 seq_printf(m, " redundant links: %11llu\n", in lockdep_stats_debug_show()
215 seq_printf(m, " find-mask forwards checks: %11llu\n", in lockdep_stats_debug_show()
217 seq_printf(m, " find-mask backwards checks: %11llu\n", in lockdep_stats_debug_show()
220 seq_printf(m, " hardirq on events: %11llu\n", hi1); in lockdep_stats_debug_show()
221 seq_printf(m, " hardirq off events: %11llu\n", hi2); in lockdep_stats_debug_show()
222 seq_printf(m, " redundant hardirq ons: %11llu\n", hr1); in lockdep_stats_debug_show()
223 seq_printf(m, " redundant hardirq offs: %11llu\n", hr2); in lockdep_stats_debug_show()
224 seq_printf(m, " softirq on events: %11llu\n", si1); in lockdep_stats_debug_show()
225 seq_printf(m, " softirq off events: %11llu\n", si2); in lockdep_stats_debug_show()
226 seq_printf(m, " redundant softirq ons: %11llu\n", sr1); in lockdep_stats_debug_show()
227 seq_printf(m, " redundant softirq offs: %11llu\n", sr2); in lockdep_stats_debug_show()
250 if (class->usage_mask == 0) in lockdep_stats_show()
252 if (class->usage_mask == LOCKF_USED) in lockdep_stats_show()
254 if (class->usage_mask & LOCKF_USED_IN_IRQ) in lockdep_stats_show()
256 if (class->usage_mask & LOCKF_ENABLED_IRQ) in lockdep_stats_show()
258 if (class->usage_mask & LOCKF_USED_IN_SOFTIRQ) in lockdep_stats_show()
260 if (class->usage_mask & LOCKF_ENABLED_SOFTIRQ) in lockdep_stats_show()
262 if (class->usage_mask & LOCKF_USED_IN_HARDIRQ) in lockdep_stats_show()
264 if (class->usage_mask & LOCKF_ENABLED_HARDIRQ) in lockdep_stats_show()
266 if (class->usage_mask & LOCKF_USED_IN_IRQ_READ) in lockdep_stats_show()
268 if (class->usage_mask & LOCKF_ENABLED_IRQ_READ) in lockdep_stats_show()
270 if (class->usage_mask & LOCKF_USED_IN_SOFTIRQ_READ) in lockdep_stats_show()
272 if (class->usage_mask & LOCKF_ENABLED_SOFTIRQ_READ) in lockdep_stats_show()
274 if (class->usage_mask & LOCKF_USED_IN_HARDIRQ_READ) in lockdep_stats_show()
276 if (class->usage_mask & LOCKF_ENABLED_HARDIRQ_READ) in lockdep_stats_show()
287 seq_printf(m, " lock-classes: %11lu [max: %lu]\n", in lockdep_stats_show()
289 seq_printf(m, " direct dependencies: %11lu [max: %lu]\n", in lockdep_stats_show()
291 seq_printf(m, " indirect dependencies: %11lu\n", in lockdep_stats_show()
297 * All irq-safe locks may nest inside irq-unsafe locks, in lockdep_stats_show()
300 seq_printf(m, " all direct dependencies: %11lu\n", in lockdep_stats_show()
306 seq_printf(m, " dependency chains: %11lu [max: %lu]\n", in lockdep_stats_show()
308 seq_printf(m, " dependency chain hlocks used: %11lu [max: %lu]\n", in lockdep_stats_show()
309 MAX_LOCKDEP_CHAIN_HLOCKS - in lockdep_stats_show()
312 seq_printf(m, " dependency chain hlocks lost: %11u\n", in lockdep_stats_show()
317 seq_printf(m, " in-hardirq chains: %11u\n", in lockdep_stats_show()
319 seq_printf(m, " in-softirq chains: %11u\n", in lockdep_stats_show()
322 seq_printf(m, " in-process chains: %11u\n", in lockdep_stats_show()
324 seq_printf(m, " stack-trace entries: %11lu [max: %lu]\n", in lockdep_stats_show()
327 seq_printf(m, " number of stack traces: %11llu\n", in lockdep_stats_show()
329 seq_printf(m, " number of stack hash chains: %11llu\n", in lockdep_stats_show()
332 seq_printf(m, " combined max dependencies: %11u\n", in lockdep_stats_show()
337 seq_printf(m, " hardirq-safe locks: %11lu\n", in lockdep_stats_show()
339 seq_printf(m, " hardirq-unsafe locks: %11lu\n", in lockdep_stats_show()
341 seq_printf(m, " softirq-safe locks: %11lu\n", in lockdep_stats_show()
343 seq_printf(m, " softirq-unsafe locks: %11lu\n", in lockdep_stats_show()
345 seq_printf(m, " irq-safe locks: %11lu\n", in lockdep_stats_show()
347 seq_printf(m, " irq-unsafe locks: %11lu\n", in lockdep_stats_show()
350 seq_printf(m, " hardirq-read-safe locks: %11lu\n", in lockdep_stats_show()
352 seq_printf(m, " hardirq-read-unsafe locks: %11lu\n", in lockdep_stats_show()
354 seq_printf(m, " softirq-read-safe locks: %11lu\n", in lockdep_stats_show()
356 seq_printf(m, " softirq-read-unsafe locks: %11lu\n", in lockdep_stats_show()
358 seq_printf(m, " irq-read-safe locks: %11lu\n", in lockdep_stats_show()
360 seq_printf(m, " irq-read-unsafe locks: %11lu\n", in lockdep_stats_show()
363 seq_printf(m, " uncategorized locks: %11lu\n", in lockdep_stats_show()
365 seq_printf(m, " unused locks: %11lu\n", in lockdep_stats_show()
367 seq_printf(m, " max locking depth: %11u\n", in lockdep_stats_show()
370 seq_printf(m, " max bfs queue depth: %11u\n", in lockdep_stats_show()
373 seq_printf(m, " max lock class index: %11lu\n", in lockdep_stats_show()
376 seq_printf(m, " debug_locks: %11u\n", in lockdep_stats_show()
383 seq_printf(m, " zapped classes: %11lu\n", in lockdep_stats_show()
386 seq_printf(m, " zapped lock chains: %11lu\n", in lockdep_stats_show()
388 seq_printf(m, " large chain blocks: %11u\n", in lockdep_stats_show()
414 nl = dl->stats.read_waittime.nr + dl->stats.write_waittime.nr; in lock_stat_cmp()
415 nr = dr->stats.read_waittime.nr + dr->stats.write_waittime.nr; in lock_stat_cmp()
417 return nr - nl; in lock_stat_cmp()
446 seq_printf(m, " %14s", num); in seq_time()
451 seq_printf(m, "%14lu", lt->nr); in seq_lock_time()
452 seq_time(m, lt->min); in seq_lock_time()
453 seq_time(m, lt->max); in seq_lock_time()
454 seq_time(m, lt->total); in seq_lock_time()
455 seq_time(m, lt->nr ? div64_u64(lt->total, lt->nr) : 0); in seq_lock_time()
467 class = data->class; in seq_stats()
468 stats = &data->stats; in seq_stats()
471 if (class->name_version > 1) in seq_stats()
472 namelen -= 2; /* XXX truncates versions > 9 */ in seq_stats()
473 if (class->subclass) in seq_stats()
474 namelen -= 2; in seq_stats()
477 cname = rcu_dereference_sched(class->name); in seq_stats()
478 ckey = rcu_dereference_sched(class->key); in seq_stats()
496 if (class->name_version > 1) { in seq_stats()
497 snprintf(name+namelen, 3, "#%d", class->name_version); in seq_stats()
500 if (class->subclass) { in seq_stats()
501 snprintf(name+namelen, 3, "/%d", class->subclass); in seq_stats()
505 if (stats->write_holdtime.nr) { in seq_stats()
506 if (stats->read_holdtime.nr) in seq_stats()
507 seq_printf(m, "%38s-W:", name); in seq_stats()
511 seq_printf(m, "%14lu ", stats->bounces[bounce_contended_write]); in seq_stats()
512 seq_lock_time(m, &stats->write_waittime); in seq_stats()
513 seq_printf(m, " %14lu ", stats->bounces[bounce_acquired_write]); in seq_stats()
514 seq_lock_time(m, &stats->write_holdtime); in seq_stats()
518 if (stats->read_holdtime.nr) { in seq_stats()
519 seq_printf(m, "%38s-R:", name); in seq_stats()
520 seq_printf(m, "%14lu ", stats->bounces[bounce_contended_read]); in seq_stats()
521 seq_lock_time(m, &stats->read_waittime); in seq_stats()
522 seq_printf(m, " %14lu ", stats->bounces[bounce_acquired_read]); in seq_stats()
523 seq_lock_time(m, &stats->read_holdtime); in seq_stats()
527 if (stats->read_waittime.nr + stats->write_waittime.nr == 0) in seq_stats()
530 if (stats->read_holdtime.nr) in seq_stats()
536 if (class->contention_point[i] == 0) in seq_stats()
540 seq_line(m, '-', 40-namelen, namelen); in seq_stats()
543 (void *)class->contention_point[i]); in seq_stats()
544 seq_printf(m, "%40s %14lu %29s %pS\n", in seq_stats()
545 name, stats->contention_point[i], in seq_stats()
546 ip, (void *)class->contention_point[i]); in seq_stats()
551 if (class->contending_point[i] == 0) in seq_stats()
555 seq_line(m, '-', 40-namelen, namelen); in seq_stats()
558 (void *)class->contending_point[i]); in seq_stats()
559 seq_printf(m, "%40s %14lu %29s %pS\n", in seq_stats()
560 name, stats->contending_point[i], in seq_stats()
561 ip, (void *)class->contending_point[i]); in seq_stats()
565 seq_line(m, '.', 0, 40 + 1 + 12 * (14 + 1)); in seq_stats()
575 seq_printf(m, "*WARNING* lock debugging disabled!! - possibly due to a lockdep warning\n"); in seq_header()
577 seq_line(m, '-', 0, 40 + 1 + 12 * (14 + 1)); in seq_header()
578 seq_printf(m, "%40s %14s %14s %14s %14s %14s %14s %14s %14s %14s %14s " in seq_header()
579 "%14s %14s\n", in seq_header()
581 "con-bounces", in seq_header()
583 "waittime-min", in seq_header()
584 "waittime-max", in seq_header()
585 "waittime-total", in seq_header()
586 "waittime-avg", in seq_header()
587 "acq-bounces", in seq_header()
589 "holdtime-min", in seq_header()
590 "holdtime-max", in seq_header()
591 "holdtime-total", in seq_header()
592 "holdtime-avg"); in seq_header()
593 seq_line(m, '-', 0, 40 + 1 + 12 * (14 + 1)); in seq_header()
599 struct lock_stat_seq *data = m->private; in ls_start()
605 iter = data->stats + (*pos - 1); in ls_start()
606 if (iter >= data->iter_end) in ls_start()
646 return -ENOMEM; in lock_stat_open()
650 struct lock_stat_data *iter = data->stats; in lock_stat_open()
651 struct seq_file *m = file->private_data; in lock_stat_open()
657 iter->class = class; in lock_stat_open()
658 iter->stats = lock_stats(class); in lock_stat_open()
662 data->iter_end = iter; in lock_stat_open()
664 sort(data->stats, data->iter_end - data->stats, in lock_stat_open()
668 m->private = data; in lock_stat_open()
684 return -EFAULT; in lock_stat_write()
700 struct seq_file *seq = file->private_data; in lock_stat_release()
702 vfree(seq->private); in lock_stat_release()