linux/kernel/lockdep_proc.c
<<
>>
Prefs
   1/*
   2 * kernel/lockdep_proc.c
   3 *
   4 * Runtime locking correctness validator
   5 *
   6 * Started by Ingo Molnar:
   7 *
   8 *  Copyright (C) 2006,2007 Red Hat, Inc., Ingo Molnar <mingo@redhat.com>
   9 *  Copyright (C) 2007 Red Hat, Inc., Peter Zijlstra <pzijlstr@redhat.com>
  10 *
  11 * Code for /proc/lockdep and /proc/lockdep_stats:
  12 *
  13 */
  14#include <linux/export.h>
  15#include <linux/proc_fs.h>
  16#include <linux/seq_file.h>
  17#include <linux/kallsyms.h>
  18#include <linux/debug_locks.h>
  19#include <linux/vmalloc.h>
  20#include <linux/sort.h>
  21#include <asm/uaccess.h>
  22#include <asm/div64.h>
  23
  24#include "lockdep_internals.h"
  25
  26static void *l_next(struct seq_file *m, void *v, loff_t *pos)
  27{
  28        return seq_list_next(v, &all_lock_classes, pos);
  29}
  30
  31static void *l_start(struct seq_file *m, loff_t *pos)
  32{
  33        return seq_list_start_head(&all_lock_classes, *pos);
  34}
  35
  36static void l_stop(struct seq_file *m, void *v)
  37{
  38}
  39
  40static void print_name(struct seq_file *m, struct lock_class *class)
  41{
  42        char str[128];
  43        const char *name = class->name;
  44
  45        if (!name) {
  46                name = __get_key_name(class->key, str);
  47                seq_printf(m, "%s", name);
  48        } else{
  49                seq_printf(m, "%s", name);
  50                if (class->name_version > 1)
  51                        seq_printf(m, "#%d", class->name_version);
  52                if (class->subclass)
  53                        seq_printf(m, "/%d", class->subclass);
  54        }
  55}
  56
  57static int l_show(struct seq_file *m, void *v)
  58{
  59        struct lock_class *class = list_entry(v, struct lock_class, lock_entry);
  60        struct lock_list *entry;
  61        char usage[LOCK_USAGE_CHARS];
  62
  63        if (v == &all_lock_classes) {
  64                seq_printf(m, "all lock classes:\n");
  65                return 0;
  66        }
  67
  68        seq_printf(m, "%p", class->key);
  69#ifdef CONFIG_DEBUG_LOCKDEP
  70        seq_printf(m, " OPS:%8ld", class->ops);
  71#endif
  72#ifdef CONFIG_PROVE_LOCKING
  73        seq_printf(m, " FD:%5ld", lockdep_count_forward_deps(class));
  74        seq_printf(m, " BD:%5ld", lockdep_count_backward_deps(class));
  75#endif
  76
  77        get_usage_chars(class, usage);
  78        seq_printf(m, " %s", usage);
  79
  80        seq_printf(m, ": ");
  81        print_name(m, class);
  82        seq_puts(m, "\n");
  83
  84        list_for_each_entry(entry, &class->locks_after, entry) {
  85                if (entry->distance == 1) {
  86                        seq_printf(m, " -> [%p] ", entry->class->key);
  87                        print_name(m, entry->class);
  88                        seq_puts(m, "\n");
  89                }
  90        }
  91        seq_puts(m, "\n");
  92
  93        return 0;
  94}
  95
  96static const struct seq_operations lockdep_ops = {
  97        .start  = l_start,
  98        .next   = l_next,
  99        .stop   = l_stop,
 100        .show   = l_show,
 101};
 102
 103static int lockdep_open(struct inode *inode, struct file *file)
 104{
 105        return seq_open(file, &lockdep_ops);
 106}
 107
 108static const struct file_operations proc_lockdep_operations = {
 109        .open           = lockdep_open,
 110        .read           = seq_read,
 111        .llseek         = seq_lseek,
 112        .release        = seq_release,
 113};
 114
 115#ifdef CONFIG_PROVE_LOCKING
 116static void *lc_start(struct seq_file *m, loff_t *pos)
 117{
 118        if (*pos == 0)
 119                return SEQ_START_TOKEN;
 120
 121        if (*pos - 1 < nr_lock_chains)
 122                return lock_chains + (*pos - 1);
 123
 124        return NULL;
 125}
 126
 127static void *lc_next(struct seq_file *m, void *v, loff_t *pos)
 128{
 129        (*pos)++;
 130        return lc_start(m, pos);
 131}
 132
 133static void lc_stop(struct seq_file *m, void *v)
 134{
 135}
 136
 137static int lc_show(struct seq_file *m, void *v)
 138{
 139        struct lock_chain *chain = v;
 140        struct lock_class *class;
 141        int i;
 142
 143        if (v == SEQ_START_TOKEN) {
 144                seq_printf(m, "all lock chains:\n");
 145                return 0;
 146        }
 147
 148        seq_printf(m, "irq_context: %d\n", chain->irq_context);
 149
 150        for (i = 0; i < chain->depth; i++) {
 151                class = lock_chain_get_class(chain, i);
 152                if (!class->key)
 153                        continue;
 154
 155                seq_printf(m, "[%p] ", class->key);
 156                print_name(m, class);
 157                seq_puts(m, "\n");
 158        }
 159        seq_puts(m, "\n");
 160
 161        return 0;
 162}
 163
 164static const struct seq_operations lockdep_chains_ops = {
 165        .start  = lc_start,
 166        .next   = lc_next,
 167        .stop   = lc_stop,
 168        .show   = lc_show,
 169};
 170
 171static int lockdep_chains_open(struct inode *inode, struct file *file)
 172{
 173        return seq_open(file, &lockdep_chains_ops);
 174}
 175
 176static const struct file_operations proc_lockdep_chains_operations = {
 177        .open           = lockdep_chains_open,
 178        .read           = seq_read,
 179        .llseek         = seq_lseek,
 180        .release        = seq_release,
 181};
 182#endif /* CONFIG_PROVE_LOCKING */
 183
 184static void lockdep_stats_debug_show(struct seq_file *m)
 185{
 186#ifdef CONFIG_DEBUG_LOCKDEP
 187        unsigned long long hi1 = debug_atomic_read(hardirqs_on_events),
 188                           hi2 = debug_atomic_read(hardirqs_off_events),
 189                           hr1 = debug_atomic_read(redundant_hardirqs_on),
 190                           hr2 = debug_atomic_read(redundant_hardirqs_off),
 191                           si1 = debug_atomic_read(softirqs_on_events),
 192                           si2 = debug_atomic_read(softirqs_off_events),
 193                           sr1 = debug_atomic_read(redundant_softirqs_on),
 194                           sr2 = debug_atomic_read(redundant_softirqs_off);
 195
 196        seq_printf(m, " chain lookup misses:           %11llu\n",
 197                debug_atomic_read(chain_lookup_misses));
 198        seq_printf(m, " chain lookup hits:             %11llu\n",
 199                debug_atomic_read(chain_lookup_hits));
 200        seq_printf(m, " cyclic checks:                 %11llu\n",
 201                debug_atomic_read(nr_cyclic_checks));
 202        seq_printf(m, " find-mask forwards checks:     %11llu\n",
 203                debug_atomic_read(nr_find_usage_forwards_checks));
 204        seq_printf(m, " find-mask backwards checks:    %11llu\n",
 205                debug_atomic_read(nr_find_usage_backwards_checks));
 206
 207        seq_printf(m, " hardirq on events:             %11llu\n", hi1);
 208        seq_printf(m, " hardirq off events:            %11llu\n", hi2);
 209        seq_printf(m, " redundant hardirq ons:         %11llu\n", hr1);
 210        seq_printf(m, " redundant hardirq offs:        %11llu\n", hr2);
 211        seq_printf(m, " softirq on events:             %11llu\n", si1);
 212        seq_printf(m, " softirq off events:            %11llu\n", si2);
 213        seq_printf(m, " redundant softirq ons:         %11llu\n", sr1);
 214        seq_printf(m, " redundant softirq offs:        %11llu\n", sr2);
 215#endif
 216}
 217
 218static int lockdep_stats_show(struct seq_file *m, void *v)
 219{
 220        struct lock_class *class;
 221        unsigned long nr_unused = 0, nr_uncategorized = 0,
 222                      nr_irq_safe = 0, nr_irq_unsafe = 0,
 223                      nr_softirq_safe = 0, nr_softirq_unsafe = 0,
 224                      nr_hardirq_safe = 0, nr_hardirq_unsafe = 0,
 225                      nr_irq_read_safe = 0, nr_irq_read_unsafe = 0,
 226                      nr_softirq_read_safe = 0, nr_softirq_read_unsafe = 0,
 227                      nr_hardirq_read_safe = 0, nr_hardirq_read_unsafe = 0,
 228                      sum_forward_deps = 0;
 229
 230        list_for_each_entry(class, &all_lock_classes, lock_entry) {
 231
 232                if (class->usage_mask == 0)
 233                        nr_unused++;
 234                if (class->usage_mask == LOCKF_USED)
 235                        nr_uncategorized++;
 236                if (class->usage_mask &  119      uref="+code=nr_irT7a6s="line" name="L137"> 132s23                     nr_irq_safe = 0,  132{23                   class->usage_mask &  119      uref="+code=229" class="line" name="L139"> 132 23                        nr_irq_unsafe = 0,
 142 24                     ref="+code=class" class="sref">class->usage_mask &  & e=usd="L119" class="lSOFT 119      uref="+codeL141" cla2s="line" name="L141"> 142 24                        nr_softirq_safe = 0,  142
24             if (class->usage_mask == 0)
 119      uref="+codeL233" class="line" name="L143"> 142 24                     nr_softirq_unsafe = 0,
 142 2              class->usage_mask == 0)
 & e=usd="L119" class="lHARD 119      uref="+codeL235" class="line" name="L145"> 142 2              return 0nr_hardirq_safe = 0,  142 24             if (class->usage_mask &  119      uref="+codeLnr_irT7a6s="line" name="L147"> 142
24                     nr_hardirq_unsafe = 0,
 142 24                   class->usage_mask & LOCKF_USED)
 119      uref="+codeL229" class="line" name="L149"> 142
24                        nr_irq_read_safe = 0,  152 25                     ref="+code=class" class="sref">class->usage_mask & LOCKF_USEDENABLass=/a_REA=" name="L119"> 119      uref="+codeL151" cla2s="line" name="L151"> 152 2              nr_irq_read_unsafe = 0,
 152 2              if (!class->usage_mask & LOCKF_USED)
 119      uref="+codeL233" class="line" name="L153"> 152 2                      continue"+code=nr_softirq_read_safe" class="sref">nr_softirq_read_safe = 0,  152
25             class->usage_mask == 0)
LOCKF_USEDENABLassSOFT 119      uref="+codeL235" class="line" name="L155"> 152 2              nr_softirq_read_unsafe = 0,
 152 2              class->usage_mask == 0)
LOCKF_USED)
 119      uref="+codeLnr_irT7a6s="line" name="L157"> 152 2              nr_hardirq_read_safe = 0,  152 25                   class->usage_mask & LOCKF_USEDENABLassHARD 119      uref="+codeL229" class="line" name="L159"> 152 25                        nr_hardirq_read_unsafe = 0,
 162
2a href="kernel/lockdep_proc.c#L161" id=2L161" cla2s="line" name="L161"> 162 2      a href="+code=CONFIG_PROVE_LOCKING" class="sref">CONFIG_PROVE_LOCKING
 162}26             if (!sum_forward_deps = 0;
sum_forwchains_opount_deps" class=href="+code=class" class="sref">class, & 162
2a hrefa href="kernel/lockdep_proc.c#L216" id="L164" cla2s="line" name="L164"> 162s26             f="kernel/lockdep_proc.c#L217" id="L165" cla2s="line" name="L165"> 162 26def CONFIG_DEBUG_LOCKDEP
 162 26     SEQ_STARCKDEP
S_WARN_O=href="+code=class" comic_read" class="sref">debug_atomic_read(nr_find_usaa>++;
asses=nr_unused++;
 162 2      a href="kernel/lockdep_proc.c#L216" id="L228" class="line" name="L168"> 162 26     seq_printf(m, " hardirq proc-tringe           %11lllu\n&quou [max\n"lu],
 162}26                        all_locknsasses" class= href="+code=lock_entMAX
all_lockMAX
 172
27     seq_printf(m, " redundand_uect .c# hrenci      %11llu\n&quou [max\n"lu],
 172s27             ) {is="sref">all_locknsaseach>) {is= href="+code=lock_entMAX
all_lockMAX
 172{27     seq_printf(m, " softirq ind_uect .c# hrenci      %1lu\n&quou,
 172 27                     continue"+code=nr_softiard_deps" class="sref">sum_forward_deps = 0;
 172}27 href="kernel/lockdep_proc.c#L155" id=2L175" cla2s="line" name="L175"> 172
27             ass="comment">/* CONFIG_ 172s2atic cass="comment">/* CONFI continue* Total number of .c# hrenci    172 2      ass="comment">/* CONFI continue* 172 2      ass="comment">/* CONFI continue* All _un- = 0 procs may nest inside _un-a> = 0 procs, 172 2      ass="comment">/* CONFI continue* plus  chathe other known .c# hrenci    182 2      ass="comment">/* CONFI continue*
 182}28     seq_printf(m, " softirq  chad_uect .c# hrenci      %lu\n&quou,
 182#28                        nr_irq_unsafe = 0,
nr_irq_safe = 0,  182
28                     continue"+code=nr_softirq_unsafe" class="sref">nr_hardirq_unsafe = 0,
nr_hardirq_safe = 0,  182s28                        ) {is="sref">all_locknsaseach>) {is= hreef="kernel/lockdep_proc.c#L215" id="L185" cla2s="line" name="L185"> 182{28 href="kernel/lockdep_proc.c#L196" id=2L186" cla2s="line" name="L186"> 182#2fdef CONFIG_PROVE_LOCKING
 182 28     seq_printf(m, " hardirq .c# hrency\n"        ,
 182 2                         all_locknsasses" " href="+code=lock_entMAX
all_lockMAX
 182 28     seq_printf(m, " redundan.c# hrency\n&quo hprocs    %lu\n&qud [max\n"lu],
 192 2                         nr_find_usaokup_hhsses= href="+code=lock_entMAX

S"sref">all_lockMAX

S hreef="kernel/lockdep_proc.c#L215" id="L191" cla2s="line" name="L191"> 192 2      a href="kernel/lockdep_proc.c#L216" id="L192" cla2s="line" name="L192"> 192 29 href="kernel/lockdep_proc.c#L143" id=2L193" cla2s="line" name="L193"> 192 2      a href="+code=CONFIG_DEBUG_LOTRACEs=/aFLAGS"sref">all_lockEBUG_LOTRACEs=/aFLAGShref="kernel/lockdep_proc.c#L143" id=2L164" cla2s="line" name="L194"> 192 29     seq_printf(m, " redundanin-offs:   n"        ,
 192
29             return 0all_locknsasafe" cl " hreef="kernel/lockdep_proc.c#L215" id="L186" cla2s="line" name="L196"> 192 2      seq_printf(m, " chain loin-offs:   n"        ,
 192 2              all_locknsaread_uns " hreef="kernel/lockdep_proc.c#L215" id="L188" cla2s="line" name="L198"> 192 2      a href="kernel/lockdep_proc.c#L216" id="L169" cla2s="line" name="L199"> 192 29     seq_printf(m, " redundanin-216"ess n"        ,
 203 30                        all_locknsa216"esss " hreef="kernel/lockdep_proc.c#L215" id=3L201" cla3s="line" name="L201"> 203 30     seq_printf(m, " softirq stack-trace >) {is=    %11llu\n&quou [max\n"lu],
 203 30                        ) {is="sref">all_locknsastack_traceh>) {is= href="+code=lock_entMAXall_lockMAX 193 3              "+code=seq_printf" class="sref">seq_printf(m, " softirq combi ,
 193 30                        all_locknsasafe" cl " hre + 1) *="kernel/lockdep_proc.c#L205" id=3L502" cla3s="line" name="L195"> 193 3              all_locknsaread_uns " hre + 1) *="kernel/lockdep_proc.c#L205" id=3L602" cla3s="line" name="L196"> 193
30                   all_locknsa216"esss " hre + 1)="kernel/lockdep_proc.c#L205" id=3L702" cla3s="line" name="L197"> 193 3       193 3      seq_printf(m, " hardirq off eve- = 0 procs     %11llu\n&quou,
 193 30                        nr_hardirq_safe = 0,  213 3      seq_printf(m, " redundanoff eve-a> = 0 procs     %1lu\n&quou,
 213 31             nr_hardirq_unsafe = 0,
 213 3      seq_printf(m, " softirq off eve- = 0 procs     %11llu\n&quou,
 213 31                     continue"+code=nr_softirq_read_safass="sref">nr_softirq_safe = 0,  213 3      seq_printf(m, " redundanoff eve-a> = 0 procs     %1lu\n&quou,
 213#31             nr_softirq_unsafe = 0,
 213}31     seq_printf(m, " chain loive- = 0 procs     %11l37;1lu\n&quou,
 213
31                     nr_irq_safe = 0,  213s31     seq_printf(m, " hardirq eve-a> = 0 procs     %137;1lu\n&quou,
 213{31                        nr_irq_unsafe = 0,
 223 32 href="kernel/lockdep_proc.c#L161" id=3L221" cla3s="line" name="L221"> 223 32     seq_printf(m, " softirq off eve-(,
 223 3                    nr_hardirq_read_safe = 0,  223 32             "+code=seq_printf" class="sref">seq_printf(m, " softirq off eve-( = 0 procs     &lu\n&quou,
 223 3                    nr_hardirq_read_unsafe = 0,
 223 3              "+code=seq_printf" class="sref">seq_printf(m, " redundanoff eve-(,
 223 3                    nr_softirq_read_safe = 0,  223 32     seq_printf(m, " hardirq off eve-( = 0 procs     &lu\n&quou,
 223 3                    nr_softirq_read_unsafe = 0,
 223
32     seq_printf(m, " redundanive-(,
 233 33                        nr_irq_read_safe = 0,  233
33     seq_printf(m, " softirq eve-( = 0 procs     &   &lu\n&quou,
 233 3              if (nr_irq_read_unsafe = 0,
 233 33 href="kernel/lockdep_proc.c#L184" id=3L234" cla3s="line" name="L234"> 233 33     seq_printf(m, " redundanrized++;
 procs        &lu\n&quou,
 233 3                      nr_uncategorized++;
 233 33     seq_printf(m, " chain loa>++;
 procs     %11l37;1 &lu\n&quou,
 133s33                     nr_unused++;
 133{33     seq_printf(m, " hardirq max procot; .c#th;        ,
 133 33                        m,  143 34     a href="+code=CONFIG_DEBUG_LOCKING" class="sref">CONFIG_PROVE_LOCKING
 143 34     seq_printf(m, " softirq max bfs queue .c#th;        ,
 143
34             if (m,  143 34 hrefa href="kernel/lockdep_proc.c#L216" id=3L234" cla3s="line" name="L144"> 143 34     lockdep_stats_showomic_rass=href="+code=m" class="sref">m,  143 34             "+code=seq_printf" class="sref">seq_printf(m, " redundanomic_rprocs     %11l37;1 & lu\n&quu,
 143 34             if (m,  143
34 href="kernel/lockdep_proc.c#L218" id=3L228" cla3s="line" name="L148"> 143 34             returnref="kernel/lockdep_proc.c#L229" id=3L229" cla3s="line" name="L149"> 143
34     f="kernel/lockdep_proc.c#L217" id=3L150" cla3s="line" name="L150"> 153 35 href="kernel/lockdep_proc.c#L161" id=3L151" cla3s="line" name="L151"> 153 3      nt lockdep_stats_showopenhref=a href="+code=lock_clain_cl"sref">lockdep_in_cl     *"+code=lock_clain_cl"sref">lockdep_in_cl    ,seq_file *seq_file * 153 3      f="kernel/lockdep_proc.c#L231" id=3L233" cla3s="line" name="L153"> 153 3              returnr"+code=seq_printot;lelopen"sref">lockdep_tot;lelopenhref="+code=m" classass="sref">seq_file *ass="sref">lockdep_stats_show(struct f="+code=lock_entNULL"sref">lockdep_NULLpan ef="kernel/lockdep_proc.c#L215" id=3L234" cla3s="line" name="L154"> 153
35     f="kernel/lockdep_proc.c#L217" id=3L502" cla3s="line" name="L155"> 153 35 href="kernel/lockdep_proc.c#L196" id=3L236" cla3s="line" name="L156"> 153 3      nt all_lockass=loper oper all_lock196"_stats_showoper  153 3              ."+code=lock_claopen"sref">lockdep_openhrefa h        f="+code=lockdep_chains_oow" clopen"sref">lockdep_stats_showopenhreff="kernel/lockdep_proc.c#L205" id=3L228" cla3s="line" name="L158"> 153 35             ."+code=lock_claass="sref">debug_at(debug_attf 153 35             ."+code=lock_clallsee="sref">usage_mallsee=hrefa h      f="+code=lockdep_tfusage_matf 163
360            ."+code=lock_claasleas="sref">seq_fileasleas=            f="+code=lockdep_tot;lelasleas="sref">seq_filetot;lelasleas=hreff="kernel/lockdep_proc.c#L205" id=3L151" cla3s="line" name="L161"> 163 3      }f="kernel/lockdep_proc.c#L215" id=3L162" cla3s="line" name="L162"> 163}36 href="kernel/lockdep_proc.c#L143" id=3L163" cla3s="line" name="L163"> 163
36     a href="+code=CONFIG_DEBUG_LO/a>
CONFIG_PROVE_LO/a>
 163s36 href="kernel/lockdep_proc.c#L155" id=3L165" cla3s="line" name="L165"> 163 36def lockdep_statcow 163 36     lock_class *class;
 163 367    lock_class *lock_claow 163 36     }f="kernel/lockdep_proc.c#L215" id=3L229" cla3s="line" name="L169"> 163}36 href="kernel/lockdep_proc.c#L230" id=3L170" cla3s="line" name="L170"> 173
37     a href="+code=lock_class" cowlockdep_statcow 173s37             a href="+code=lock_class" cowlockdep_statcowdebug_atiter_en=    f="kernel/lockdep_proc.c#L221" id=3L162" cla3s="line" name="L172"> 173{37     lockdep_statcowlock_claow
all_lockMAX
 173 37     }f="kernel/lockdep_proc.c#L215" id=3L164" cla3s="line" name="L174"> 173}37 href="kernel/lockdep_proc.c#L155" id=3L175" cla3s="line" name="L175"> 173
37     ass="comment">/* CONFIG_ 173s3atic cass="comment">/* CONFI * sortts: absolute number of contCONaoot   href="kernel/lockdep_proc.c#L183" id=3Lnr_irT7a3s="line" name="L177"> 173 3      ass="comment">/* CONFI *
 173 37tic int lockdep_statcowlockdep_suct f=const< href="+code=v" classr"sref">seq_filea hre)="kernel/lockdep_proc.c#L205" id=3L169" cla3s="line" name="L179"> 173 37a href="kernel/lockdep_proc.c#L220" id=3L180" cla3s="line" name="L180"> 183 380            constlockdep_statcowlockdep_dl     =e"+code=v" classl"sref">lockdep_suct f=*"+code=lock_cladr"sref">seq_filedr     =e"+code=v" classr"sref">seq_filea href="kernel/lockdep_proc.c#L215" id=3L181" cla3s="line" name="L181"> 183}38     unsigned long lockdep_nluct f="+code=lock_entnr"sref">seq_filena href="kernel/lockdep_proc.c#L215" id=3L162" cla3s="line" name="L182"> 183#38 href="kernel/lockdep_proc.c#L143" id=3L163" cla3s="line" name="L183"> 183
38             "+code=seq_prindl"sref">lockdep_nluct  =e"+code=v" classdl"sref">lockdep_dl    href="+code=usage_maowlock_claowseq_fileass=_waittim=    ."+code=lock_clanr"sref">seq_filena hre +e"+code=v" classdl"sref">lockdep_dl    href="+code=usage_maowlock_claowseq_filewrite_waittim=    ."+code=lock_clanr"sref">seq_filena href="kernel/lockdep_proc.c#L215" id=3L164" cla3s="line" name="L184"> 183s38     seq_filena hre =e"+code=v" classdr"sref">seq_filedr    href="+code=usage_maowlock_claowseq_fileass=_waittim=    ."+code=lock_clanr"sref">seq_filena hre +e"+code=v" classdr"sref">seq_filedr    href="+code=usage_maowlock_claowseq_filewrite_waittim=    ."+code=lock_clanr"sref">seq_filena href="kernel/lockdep_proc.c#L215" id=3L175" cla3s="line" name="L185"> 183{38 href="kernel/lockdep_proc.c#L196" id=3L186" cla3s="line" name="L186"> 183#38     seq_filena hre - "+code=seq_prindl"sref">lockdep_nluct f="kernel/lockdep_proc.c#L215" id=3Lnr_irT7a3s="line" name="L187"> 183 38     f="kernel/lockdep_proc.c#L217" id=3L188" cla3s="line" name="L188"> 183 3      ="kernel/lockdep_proc.c#L217" id=3L169" cla3s="line" name="L189"> 183 38     nt usage_matfseq_filetfm, classpan clref="+code=lockdep_offset"sref">lockdep_offsetpan clref="+code=lockdep_length"sref">m,  193 3      f="kernel/lockdep_proc.c#L220" id=3L191" cla3s="line" name="L191"> 193 39     unsignedref="+code=lockdep_i"sref">debug_atiuct f="kernel/lockdep_proc.c#L215" id=3L192" cla3s="line" name="L192"> 193 39 href="kernel/lockdep_proc.c#L143" id=3L193" cla3s="line" name="L193"> 193 39             forr="+code=nr_find_i"sref">debug_atiuct  href="+code=lockdep_i"sref">debug_atiuct  <f="+code=lockdep_offset"sref">lockdep_offsetpan f="+code=lockdep_i"sref">debug_atiuct ++)="kernel/lockdep_proc.c#L205" id=3L164" cla3s="line" name="L194"> 193 39                   lock_claof" cu/ahref="+code=m" class="sref">m, " redundanspan>,
 193
39             forr="+code=nr_find_i"sref">debug_atiuct  href="+code=lockdep_i"sref">debug_atiuct  <f="+code=lockdep_length"sref">m, debug_atiuct ++)="kernel/lockdep_proc.c#L205" id=3L186" cla3s="line" name="L196"> 193 39             if (seq_printf(m, " redundalu\n&cspan>,
classpan ef="kernel/lockdep_proc.c#L215" id=3Lnr_irT7a3s="line" name="L197"> 193 39     lock_claof" cu/ahref="+code=m" class="sref">m, " redunda,
 193 3      f="kernel/lockdep_proc.c#L217" id=3L169" cla3s="line" name="L199"> 193 39 href="kernel/lockdep_proc.c#L230" id=4L200" cla4s="line" name="L200"> 204 400    nt (seq_filetna>(seq_prinbu=uct f="+code=lock_entsize_t"sref">lockdep_size_t     "+code=lock_clabu=siz"sref">seq_prinbu=sizuct f="+code=lock_entss="line" nackdep_s6      "+code=seq_prinnr"sref">seq_filena hre)="kernel/lockdep_proc.c#L205" id=4L201" cla4s="line" name="L201"> 204 40     f="kernel/lockdep_proc.c#L220" id=4L202" cla4s="line" name="L202"> 204 40     seq_filedivuct f="kernel/lockdep_proc.c#L215" id=4L302" cla4s="line" name="L193"> 194 4              "+code=seq_prints="line" nackdep_s       "+code=lock_claas="sref">m,  194 40 href="kernel/lockdep_proc.c#L155" id=4L502" cla4s="line" name="L195"> 194 40             "+code=seq_prinnr"sref">seq_filena hre += 5; ass="comment">/* CONFIG_ forrdisplay roundot; *
 194
40     seq_filedivuct  =e"+code=v" classdiv_s6 _as="sref">m, seq_filena hre, 1000,a href"+code=lock_claas="sref">m,  194 40     seq_printna>(seq_prinbu=uct f="+code=lock_entbu=siz"sref">seq_prinbu=sizuct f="ss="string">" redundalu\n&lld.lu\n&02dspan>,
seq_filedivuct f=((m,  194 40     f="kernel/lockdep_proc.c#L217" id=4L902" cla4s="line" name="L199"> 194 40 href="kernel/lockdep_proc.c#L230" id=4L210" cla4s="line" name="L210"> 214 410    nt seq_filetf" tim=href=a href="+code=lock_clatfseq_filetfm, seq_filetim=href)="kernel/lockdep_proc.c#L205" id=4L211" cla4s="line" name="L211"> 214 41     f="kernel/lockdep_proc.c#L220" id=4L202" cla4s="line" name="L212"> 214 4      m,  214 41 href="kernel/lockdep_proc.c#L184" id=4L402" cla4s="line" name="L214"> 214 4      seq_filetna>(m, m, seq_filetim=href)f="kernel/lockdep_proc.c#L221" id=4L502" cla4s="line" name="L215"> 214#41             "+code=seq_printf" class="sref">seq_printf(m, " redundanlu\n&q4sspan>,
m,  214}41     f="kernel/lockdep_proc.c#L217" id=4L702" cla4s="line" name="L217"> 214
41 href="kernel/lockdep_proc.c#L218" id=4L802" cla4s="line" name="L218"> 214s418    nt seq_filetf" statctim=href=a href="+code=lock_clatfseq_filetfm, seq_filestatctim=hreff="+code=v" classlt"sref">lockdep_lthref)="kernel/lockdep_proc.c#L205" id=4L902" cla4s="line" name="L219"> 214{41a href="kernel/lockdep_proc.c#L220" id=4L220" cla4s="line" name="L220"> 224 42     seq_printf(m, " redundalu\n&q4luspan>,
lockdep_lthrefhref="+code=usage_manr"sref">seq_filena hre)f="kernel/lockdep_proc.c#L221" id=4L221" cla4s="line" name="L221"> 224 42     seq_filetf" tim=href="+code=lock_cla="sref">m, lockdep_lthrefhref="+code=usage_mamin"sref">lockdep_min hre)f="kernel/lockdep_proc.c#L221" id=4L202" cla4s="line" name="L222"> 224 42     seq_filetf" tim=href="+code=lock_cla="sref">m, lockdep_lthrefhref="+code=usage_mamax"sref">m,  224 42             "+code=seq_printf" tim="sref">seq_filetf" tim=href="+code=lock_cla="sref">m, lockdep_lthrefhref="+code=usage_matotal"sref">seq_filetotal hre)f="kernel/lockdep_proc.c#L221" id=4L402" cla4s="line" name="L224"> 224 42     f="kernel/lockdep_proc.c#L217" id=4L502" cla4s="line" name="L225"> 224 42 href="kernel/lockdep_proc.c#L196" id=4L602" cla4s="line" name="L226"> 224 426    nt lock_claof" owseq_filetfm, lockdep_statcowlockdep_data    )="kernel/lockdep_proc.c#L205" id=4L702" cla4s="line" name="L227"> 224 42     f="kernel/lockdep_proc.c#L220" id=4L802" cla4s="line" name="L228"> 224 4              char="+code=lock_clanam="sref">seq_filenam=    [39]f="kernel/lockdep_proc.c#L221" id=4L902" cla4s="line" name="L229"> 224
42     lock_class *class;
 234 43             a href="+code=lock_class" class=howlock_class *lock_claow 234
43     unsignedref="+code=lockdep_i"sref">debug_atiuct f="+code=lock_clan1">len"sref">lockdep_n1">len    f="kernel/lockdep_proc.c#L221" id=4L202" cla4s="line" name="L232"> 234 43 href="kernel/lockdep_proc.c#L143" id=4L213" cla4s="line" name="L233"> 234 43             "+code=seq_prinlass="sref">class;
lockdep_data    href="+code=usage_malass="sref">class;
 234 43     lock_claowlockdep_data    href="+code=usage_maowlock_claow 234 43 href="kernel/lockdep_proc.c#L196" id=4L602" cla4s="line" name="L236"> 234 43     len"sref">lockdep_n1">len     =e38f="kernel/lockdep_proc.c#L221" id=4L702" cla4s="line" name="L137"> 134s43             ifr="+code=nr_find_lass="sref">class;
_version"sref">lockdep_n1">_versionuct  &ef= 1)="kernel/lockdep_proc.c#L205" id=4L228" cla4s="line" name="L138"> 134{43                   len"sref">lockdep_n1">len     -= 2; ass="comment">/* CONFIG_ XXX  hrized 134 43             ifr="+code=nr_find_lass="sref">class;
class 144 44                     "+code=seq_prinn1">len"sref">lockdep_n1">len     -= 2;="kernel/lockdep_proc.c#L205" id=4L231" cla4s="line" name="L141"> 144 44     ="kernel/lockdep_proc.c#L205" id=4L202" cla4s="line" name="L142"> 144
44             ifr=!"+code=nr_find_lass="sref">class;
"sref">seq_filenam=    ) f="kernel/lockdep_proc.c#L231" id=4L213" cla4s="line" name="L143"> 144 44                     char="+code=lock_claa h"sref">lock_claowa hre["+code=lock_claKSYM_NAME_LEN"sref">lock_claKSYM_NAME_LEN hre]f="kernel/lockdep_proc.c#L221" id=4L234" cla4s="line" name="L144"> 144 44                   "sref">seq_filekey_n7">    f="kernel/lockdep_proc.c#L221" id=4L502" cla4s="line" name="L145"> 144 44 href="kernel/lockdep_proc.c#L196" id=4L602" cla4s="line" name="L146"> 144 44             if ("sref">seq_filekey_n7">     =e"+code=v" class__get_key_n7">"sref">seq_file__get_key_n7">href="+code=lock_clalass="sref">class;
seq_filekeypan cl"+code=seq_print h"sref">lock_claowa hre)f="kernel/lockdep_proc.c#L221" id=4L702" cla4s="line" name="L147"> 144
44                     "+code=seq_printnclass="sref">seq_printna>("sref">seq_filenam=    f="+code=lock_clan1">len"sref">lockdep_n1">len    class="string">" redundalu\n&sspan>,
"sref">seq_filekey_n7">    )f="kernel/lockdep_proc.c#L221" id=4L228" cla4s="line" name="L148"> 144 44             } else f="kernel/lockdep_proc.c#L231" id=4L229" cla4s="line" name="L149"> 144
44                     "+code=seq_printnclass="sref">seq_printna>("sref">seq_filenam=    f="+code=lock_clan1">len"sref">lockdep_n1">len    class="string">" redundalu\n&sspan>,
class;
"sref">seq_filenam=    )f="kernel/lockdep_proc.c#L221" id=4L150" cla4s="line" name="L150"> 154 45             f="kernel/lockdep_proc.c#L217" id=4L151" cla4s="line" name="L151"> 154 45     len"sref">lockdep_n1">len     =e"+code=seq_print hlen"sref">lockdep_t hlenhref="+code=m" classn7">"sref">seq_filenam=    )f="kernel/lockdep_proc.c#L221" id=4L202" cla4s="line" name="L152"> 154 45             ifr="+code=nr_find_lass="sref">class;
_version"sref">lockdep_n1">_versionuct  &ef= 1) f="kernel/lockdep_proc.c#L231" id=4L233" cla4s="line" name="L153"> 154 45                     "+code=seq_printnclass="sref">seq_printna>("sref">seq_filenam=    +"+code=lock_clan1">len"sref">lockdep_n1">len    cl3class="string">" redunda#lu\n&dspan>,
class;
_version"sref">lockdep_n1">_versionuct )f="kernel/lockdep_proc.c#L221" id=4L234" cla4s="line" name="L154"> 154
45                   len"sref">lockdep_n1">len     += 2;="kernel/lockdep_proc.c#L205" id=4L502" cla4s="line" name="L155"> 154 455            f="kernel/lockdep_proc.c#L217" id=4L602" cla4s="line" name="L156"> 154 456            ifr="+code=nr_find_lass="sref">class;
class 154 45                     "+code=seq_printnclass="sref">seq_printna>("sref">seq_filenam=    +"+code=lock_clan1">len"sref">lockdep_n1">len    cl3class="string">" redunda/lu\n&dspan>,
class;
class 154 45                   len"sref">lockdep_n1">len     += 2;="kernel/lockdep_proc.c#L205" id=4L229" cla4s="line" name="L159"> 154 45             f="kernel/lockdep_proc.c#L217" id=4L160" cla4s="line" name="L160"> 164
46 href="kernel/lockdep_proc.c#L161" id=4L151" cla4s="line" name="L161"> 164 461            ifr="+code=nr_find_owlock_claowseq_filewrite_holdtim=    ."+code=lock_clanr"sref">seq_filena hre) f="kernel/lockdep_proc.c#L231" id=4L162" cla4s="line" name="L162"> 164}46             if (lock_claowseq_fileass=_holdtim=    ."+code=lock_clanr"sref">seq_filena hre)="kernel/lockdep_proc.c#L231" id=4L233" cla4s="line" name="L163"> 164
46                     continue"+code=nr_softitf" class="sref">seq_printf(m, " redundalu\n&38s-W:span>,
"sref">seq_filenam=    )f="kernel/lockdep_proc.c#L221" id=4L234" cla4s="line" name="L164"> 164s46                    164 46                     seq_printf(m, " redundalu\n&40s:span>,
"sref">seq_filenam=    )f="kernel/lockdep_proc.c#L221" id=4L602" cla4s="line" name="L166"> 164 46     ="kernel/lockdep_proc.c#L221" id=4L702" cla4s="line" name="L167"> 164 46                     "+code=seq_printf" class="sref">seq_printf(m, " redundalu\n&q4lu span>,
lock_claowall_lockbouncs= hre["+code=lock_clabouncs_contCOded_write"sref">all_lockbouncs_contCOded_write hre])f="kernel/lockdep_proc.c#L221" id=4L228" cla4s="line" name="L168"> 164 46                   seq_filetf" statctim=href="+code=m" class="sref">m, lock_claowseq_filewrite_waittim=    )f="kernel/lockdep_proc.c#L221" id=4L229" cla4s="line" name="L169"> 164}46                     "+code=seq_printf" class="sref">seq_printf(m, " redundanlu\n&q4lu span>,
lock_claowall_lockbouncs= hre["+code=lock_clabouncs_acquired_write"sref">all_lockbouncs_acquired_write hre])f="kernel/lockdep_proc.c#L221" id=4L170" cla4s="line" name="L170"> 174
47                     "+code=seq_printf" statctim="sref">seq_filetf" statctim=href="+code=m" class="sref">m, lock_claowseq_filewrite_holdtim=    )f="kernel/lockdep_proc.c#L221" id=4L151" cla4s="line" name="L171"> 174s47             lock_claof" cu/ahref="+code=m" class="sref">m, " redunda,
 174{47      174 47 href="kernel/lockdep_proc.c#L184" id=4L164" cla4s="line" name="L174"> 174}47             ifr="+code=nr_find_owlock_claowseq_fileass=_holdtim=    ."+code=lock_clanr"sref">seq_filena hre) f="kernel/lockdep_proc.c#L231" id=4L175" cla4s="line" name="L175"> 174
47                     "+code=nr_softitf" class="sref">seq_printf(m, " redundalu\n&38s-R:span>,
"sref">seq_filenam=    )f="kernel/lockdep_proc.c#L221" id=4L176" cla4s="line" name="L176"> 174s47             if (seq_printf(m, " redundalu\n&q4lu span>,
lock_claowall_lockbouncs= hre["+code=lock_clabouncs_contCOded_ass="sref">debug_atbouncs_contCOded_ass= hre])f="kernel/lockdep_proc.c#L221" id=4L702" cla4s="line" name="L177"> 174 47                     "+code=seq_printf" statctim="sref">seq_filetf" statctim=href="+code=m" class="sref">m, lock_claowseq_fileass=_waittim=    )f="kernel/lockdep_proc.c#L221" id=4L228" cla4s="line" name="L178"> 174 47                   seq_printf(m, " redundanlu\n&q4lu span>,
lock_claowall_lockbouncs= hre["+code=lock_clabouncs_acquired_ass="sref">debug_atbouncs_acquired_ass= hre])f="kernel/lockdep_proc.c#L221" id=4L229" cla4s="line" name="L179"> 174 47                     "+code=seq_printf" statctim="sref">seq_filetf" statctim=href="+code=m" class="sref">m, lock_claowseq_fileass=_holdtim=    )f="kernel/lockdep_proc.c#L221" id=4L180" cla4s="line" name="L180"> 184 48                     "+code=seq_printf" cu/a"sref">lock_claof" cu/ahref="+code=m" class="sref">m, " redunda,
 184}48     unsignedf="kernel/lockdep_proc.c#L217" id=4L162" cla4s="line" name="L182"> 184#48 href="kernel/lockdep_proc.c#L143" id=4L163" cla4s="line" name="L183"> 184
48             ifr="+code=nr_find_owlock_claowseq_fileass=_waittim=    ."+code=lock_clanr"sref">seq_filena hre +e"+code=v" classowlock_claowseq_filewrite_waittim=    ."+code=lock_clanr"sref">seq_filena hre == 0)="kernel/lockdep_proc.c#L231" id=4L164" cla4s="line" name="L184"> 184s48                    184{48 href="kernel/lockdep_proc.c#L196" id=4L186" cla4s="line" name="L186"> 184#486            ifr="+code=nr_find_owlock_claowseq_fileass=_holdtim=    ."+code=lock_clanr"sref">seq_filena hre)="kernel/lockdep_proc.c#L196" id=4L702" cla4s="line" name="L187"> 184 48                     "+code=seq_prinn1">len"sref">lockdep_n1">len     += 2;="kernel/lockdep_proc.c#L205" id=4L188" cla4s="line" name="L188"> 184 4      ="kernel/lockdep_proc.c#L217" id=4L169" cla4s="line" name="L189"> 184 48             forr="+code=nr_find_i"sref">debug_atiuct  href="+code=lockdep_i"sref">debug_atiuct  <f="+code=lockdep_/a>
STAT_POINTS"sref">all_lock/a>
STAT_POINTSuct f="+code=lockdep_i"sref">debug_atiuct ++) f="kernel/lockdep_proc.c#L231" id=4L190" cla4s="line" name="L190"> 194 49                     char="+code=lock_claip"sref">lockdep_iphref[32]f="kernel/lockdep_proc.c#L221" id=4L191" cla4s="line" name="L191"> 194 49     ="kernel/lockdep_proc.c#L205" id=4L192" cla4s="line" name="L192"> 194 49             if (class;
classontCONaoo_po(debug_atiuct ] == 0)="kernel/lockdep_proc.c#L231" id=4L193" cla4s="line" name="L193"> 194 49                     continuebasskf="kernel/lockdep_proc.c#L221" id=4L164" cla4s="line" name="L194"> 194 49 href="kernel/lockdep_proc.c#L155" id=4L195" cla4s="line" name="L195"> 194
49                     ifr=!"+code=nr_find_i"sref">debug_atiuct )="kernel/lockdep_proc.c#L231" id=4L186" cla4s="line" name="L196"> 194 49             if (usage_matfm, " re#39;-e#39;
len"sref">lockdep_n1">len    cl"+code=lock_clan1">len"sref">lockdep_n1">len    ef="kernel/lockdep_proc.c#L215" id=4Lnr_irT7a4s="line" name="L197"> 194 49 href="kernel/lockdep_proc.c#L218" id=4L188" cla4s="line" name="L198"> 194 49                   seq_printna>(lockdep_iphref, sizeof="+code=lock_claip"sref">lockdep_iphref)class="string">" redunda[<flu\n&pref=]span>,
 194 49                        class;
classontCONaoo_po(debug_atiuct ]ef="kernel/lockdep_proc.c#L215" id=5L200" cla5s="line" name="L200"> 205 50                     "+code=seq_printf" class="sref">seq_printf(m, " redundalu\n&40snlu\n&q4lu su\n&29snlu\n&pS,
 205 50             "sref">seq_filenam=    f="+code=lock_claowlock_claowclassontCONaoo_po(debug_atiuct ]f="kernel/lockdep_proc.c#L205" id=5L201" cla5s="line" name="L192"> 195 50             if (lockdep_iphref, ( href=)"+code=seq_prinlass="sref">class;
classontCONaoo_po(debug_atiuct ]ef="kernel/lockdep_proc.c#L215" id=5L301" cla5s="line" name="L193"> 195 5              f="kernel/lockdep_proc.c#L217" id=5L402" cla5s="line" name="L194"> 195 50             forr="+code=nr_find_i"sref">debug_atiuct  href="+code=lockdep_i"sref">debug_atiuct  <f="+code=lockdep_/a>
STAT_POINTS"sref">all_lock/a>
STAT_POINTSuct f="+code=lockdep_i"sref">debug_atiuct ++) f="kernel/lockdep_proc.c#L231" id=5L502" cla5s="line" name="L195"> 195 50                     char="+code=lock_claip"sref">lockdep_iphref[32]f="kernel/lockdep_proc.c#L221" id=5L602" cla5s="line" name="L196"> 195
50     ="kernel/lockdep_proc.c#L221" id=5L702" cla5s="line" name="L197"> 195 50                     ifr="+code=nr_find_lass="sref">class;
classontCOdot;_po(debug_atiuct ] == 0)="kernel/lockdep_proc.c#L231" id=5L802" cla5s="line" name="L198"> 195 50                    195 50 href="kernel/lockdep_proc.c#L230" id=5L210" cla5s="line" name="L210"> 215 51                     ifr=!"+code=nr_find_i"sref">debug_atiuct )="kernel/lockdep_proc.c#L231" id=5L211" cla5s="line" name="L211"> 215 51             usage_matfm, " re#39;-e#39;
len"sref">lockdep_n1">len    cl"+code=lock_clan1">len"sref">lockdep_n1">len    ef="kernel/lockdep_proc.c#L231" id=5L201" cla5s="line" name="L212"> 215 51 href="kernel/lockdep_proc.c#L143" id=5L213" cla5s="line" name="L213"> 215 51                     "+code=seq_printnclass="sref">seq_printna>(lockdep_iphref, sizeof="+code=lock_claip"sref">lockdep_iphref)class="string">" redunda[<flu\n&pref=]span>,
 215 51                   class;
classontCOdot;_po(debug_atiuct ]ef="kernel/lockdep_proc.c#L231" id=5L502" cla5s="line" name="L215"> 215#51                     "+code=nr_softitf" class="sref">seq_printf(m, " redundalu\n&40snlu\n&q4lu su\n&29snlu\n&pS,
 215}51             if ("sref">seq_filenam=    f="+code=lock_claowlock_claowclassontCOdot;_po(debug_atiuct ]f="kernel/lockdep_proc.c#L205" id=5L702" cla5s="line" name="L217"> 215
51                                "+code=nr_softiip"sref">lockdep_iphref, ( href=)"+code=seq_prinlass="sref">class;
classontCOdot;_po(debug_atiuct ]ef="kernel/lockdep_proc.c#L231" id=5L802" cla5s="line" name="L218"> 215s51             }="kernel/lockdep_proc.c#L231" id=5L902" cla5s="line" name="L219"> 215{51             ifr="+code=nr_find_i"sref">debug_atiuct ) f="kernel/lockdep_proc.c#L231" id=5L220" cla5s="line" name="L220"> 225 52                     "+code=seq_printf" cu/a"sref">lock_claof" cu/ahref="+code=m" class="sref">m, " redunda,
 225 52             usage_matfm, " re#39;.e#39;
 225 52             if (lock_claof" cu/ahref="+code=m" class="sref">m, " redunda,
 225 52             f="kernel/lockdep_proc.c#L217" id=5L402" cla5s="line" name="L224"> 225 52     f="kernel/lockdep_proc.c#L217" id=5L502" cla5s="line" name="L225"> 225 52 href="kernel/lockdep_proc.c#L196" id=5L602" cla5s="line" name="L226"> 225 526    nt lock_claof" headehhref=a href="+code=lock_clatfseq_filetfm,  225 52     f="kernel/lockdep_proc.c#L220" id=5L802" cla5s="line" name="L228"> 225 5              "+code=nr_softitf" class="sref">seq_printf(m, " redundastatcow,
 225
52 href="kernel/lockdep_proc.c#L230" id=5L230" cla5s="line" name="L230"> 235 53             ifr="+code=nr_find_unlikely"sref">seq_fileunlikelyhref=!"+code=nr_find_debug stata"sref">lock_cladebug statapan ))="kernel/lockdep_proc.c#L231" id=5L231" cla5s="line" name="L231"> 235
53             seq_printf(m, " redunda*WARNING* proc debuggot; disabled!! - possibly due to a proc.c# warnot;,
 235 53 href="kernel/lockdep_proc.c#L143" id=5L213" cla5s="line" name="L233"> 235 53             "+code=seq_printfusage_matfm, " re#39;-e#39;
 235 53     seq_printf(m, " redundalu\n&40snlu\n&q4snlu\n&q4snlu\n&q4snlu\n&q4snlu\n&q4snlu\n&q4snlu\n&q4snlu\n&q4snlpan>,
 235 53                     " redundalu\n&q4snlu\n&q4s,
 235 53             if (" redundatring236">span>,
 135s53                             "ss="string">" redundaton-bouncs=span>,
 135{53                   " redundatontCONaootspan>,
 135 53                        " redundawaittim=-mi/span>,
 145 54                        " redundawaittim=-maxspan>,
 145 54             " redundawaittim=-totalspan>,
 145
54             if (" redundaacq-bouncs=span>,
 145 54                             "ss="string">" redundaacquisiNaootspan>,
 145 54                   " redundaholdtim=-mi/span>,
 145 54                     " redundaholdtim=-maxspan>,
 145 54             if (" redundaholdtim=-totalspan>,
 145
54     usage_matfm, " re#39;-e#39;
 145 54             "+code=nr_softitf" class="sref">seq_printf(m, " redunda,
 145
54     f="kernel/lockdep_proc.c#L217" id=5L150" cla5s="line" name="L150"> 155 55 href="kernel/lockdep_proc.c#L161" id=5L151" cla5s="line" name="L151"> 155 55     nt lockdep_lahowseq_filetfm, lockdep_loff_t     *"+code=lock_clapos"sref">lockdep_pospan )="kernel/lockdep_proc.c#L231" id=5L202" cla5s="line" name="L152"> 155 55     f="kernel/lockdep_proc.c#L220" id=5L233" cla5s="line" name="L153"> 155 55             a href="+code=lock_class" cowlockdep_lo" cowlockdep_data     =e"+code=seq_prin="sref">m, all_locka>(vateuct f="kernel/lockdep_proc.c#L220" id=5L234" cla5s="line" name="L154"> 155
55             a href="+code=lock_class" cowlockdep_statcowlock_claitehuct f="kernel/lockdep_proc.c#L220" id=5L502" cla5s="line" name="L155"> 155 55 href="kernel/lockdep_proc.c#L196" id=5L602" cla5s="line" name="L156"> 155 556            ifr=*"+code=lock_clapos"sref">lockdep_pospan  == 0)="kernel/lockdep_proc.c#L231" id=5L702" cla5s="line" name="L157"> 155 55                     return="+code=lock_claSEQ_START_TOKEN"sref">lock_claSEQ_START_TOKENuct f="kernel/lockdep_proc.c#L220" id=5L228" cla5s="line" name="L158"> 155 55     ="kernel/lockdep_proc.c#L217" id=5L229" cla5s="line" name="L159"> 155 55             "+code=lock_claiteh"sref">lock_claitehuct  =e"+code=v" classdata"sref">lockdep_data    href="+code=usage_matwlock_claowlockdep_pospan  - 1)f="kernel/lockdep_proc.c#L220" id=5L160" cla5s="line" name="L160"> 165
56             ifr="+code=nr_find_iteh"sref">lock_claitehuct  ref==e"+code=v" classdata"sref">lockdep_data    href="+code=usage_maiteh_en="sref">debug_atiteh_en=pan )="kernel/lockdep_proc.c#L231" id=5L151" cla5s="line" name="L161"> 165 56             lock_claitehuct  =e"+code=v" classNULL"sref">lock_claNULLuct f="kernel/lockdep_proc.c#L220" id=5L162" cla5s="line" name="L162"> 165}56 href="kernel/lockdep_proc.c#L143" id=5L233" cla5s="line" name="L163"> 165
56             return="+code=lock_claiteh"sref">lock_claitehuct f="kernel/lockdep_proc.c#L220" id=5L234" cla5s="line" name="L164"> 165s56     f="kernel/lockdep_proc.c#L217" id=5L502" cla5s="line" name="L165"> 165 56 href="kernel/lockdep_proc.c#L196" id=5L602" cla5s="line" name="L166"> 165 566    nt lockdep_lahnexthref=a href="+code=lock_clatfseq_filetfm, seq_filevpan cl"+code=seq_prinloff_t"sref">lockdep_loff_t     *"+code=lock_clapos"sref">lockdep_pospan )="kernel/lockdep_proc.c#L231" id=5L702" cla5s="line" name="L167"> 165 56     f="kernel/lockdep_proc.c#L220" id=5L228" cla5s="line" name="L168"> 165 56             =*"+code=lock_clapos"sref">lockdep_pospan )++f="kernel/lockdep_proc.c#L220" id=5L229" cla5s="line" name="L169"> 165}56             return="+code=lock_clalahowlockdep_lahowm, lockdep_pospan )f="kernel/lockdep_proc.c#L220" id=5L170" cla5s="line" name="L170"> 175
57     f="kernel/lockdep_proc.c#L217" id=5L151" cla5s="line" name="L171"> 175s57     ="kernel/lockdep_proc.c#L205" id=5L162" cla5s="line" name="L172"> 175{57     nt lockdep_lahowophref=a href="+code=lock_clatfseq_filetfm, seq_filevpan )="kernel/lockdep_proc.c#L231" id=5L163" cla5s="line" name="L173"> 175 57 hreff="kernel/lockdep_proc.c#L220" id=5L164" cla5s="line" name="L174"> 175}57     f="kernel/lockdep_proc.c#L217" id=5L175" cla5s="line" name="L175"> 175
57 href="kernel/lockdep_proc.c#L196" id=5L176" cla5s="line" name="L176"> 175s576    nt lockdep_lahohowhref=a href="+code=lock_clatfseq_filetfm, seq_filevpan )="kernel/lockdep_proc.c#L231" id=5L702" cla5s="line" name="L177"> 175 57     f="kernel/lockdep_proc.c#L220" id=5L228" cla5s="line" name="L178"> 175 57             ifr="+code=nr_find_v"sref">seq_filevpan  == "+code=lock_claSEQ_START_TOKEN"sref">lock_claSEQ_START_TOKENuct )="kernel/lockdep_proc.c#L231" id=5L229" cla5s="line" name="L179"> 175 57                     "+code=seq_printf" headeh"sref">lock_claof" headehhref="+code=lock_cla="sref">m,  185 58             else="kernel/lockdep_proc.c#L221" id=5L181" cla5s="line" name="L181"> 185}58             lock_claof" owm, seq_filevpan )f="kernel/lockdep_proc.c#L220" id=5L162" cla5s="line" name="L182"> 185#58 href="kernel/lockdep_proc.c#L143" id=5L163" cla5s="line" name="L183"> 185
58             return=0f="kernel/lockdep_proc.c#L220" id=5L164" cla5s="line" name="L184"> 185s58     f="kernel/lockdep_proc.c#L217" id=5L175" cla5s="line" name="L185"> 185{58 href="kernel/lockdep_proc.c#L196" id=5L186" cla5s="line" name="L186"> 185#586    nt lock_claof" operaNaoot     "+code=lock_class" owlock_class 185 58             ."+code=lock_claowlockdep_owlockdep_lahow 185 588            ."+code=lock_clanext"sref">lockdep_nexthref   =e"+code=v" classlahnext"sref">lockdep_lahnexthreff="kernel/lockdep_proc.c#L205" id=5L229" cla5s="line" name="L189"> 185 58             ."+code=lock_claowop"sref">lockdep_owophref   =e"+code=v" classlahowop"sref">lockdep_lahowophreff="kernel/lockdep_proc.c#L205" id=5L190" cla5s="line" name="L190"> 195 59             ."+code=lock_claohow"sref">lockdep_ohowhref   =e"+code=v" classlahohow"sref">lockdep_lahohowhreff="kernel/lockdep_proc.c#L205" id=5L181" cla5s="line" name="L191"> 195 59     }f="kernel/lockdep_proc.c#L220" id=5L192" cla5s="line" name="L192"> 195 59 href="kernel/lockdep_proc.c#L143" id=5L193" cla5s="line" name="L193"> 195 59     nt lockdep_ltatcowlock_clain_cl     *"+code=lock_clain_cl"sref">lock_clain_cl    cla href="+code=lock_claass="sref">seq_fileass=     *"+code=lock_claass="sref">seq_fileass=    )="kernel/lockdep_proc.c#L231" id=5L164" cla5s="line" name="L194"> 195 59 hreff="kernel/lockdep_proc.c#L220" id=5L195" cla5s="line" name="L195"> 195
59             ref="+code=lockdep_rs="sref">all_lockrea    f="kernel/lockdep_proc.c#L221" id=5L186" cla5s="line" name="L196"> 195 59             a href="+code=lock_class" class="sref">lock_class *class;
 195 597            a href="+code=lock_class" cowlockdep_lo" cowlockdep_data     =e"+code=seq_prinvmallo""sref">seq_filevmallo"href=aizeof=a href="+code=lock_class" cowlockdep_lo" cow 195 59     ="kernel/lockdep_proc.c#L217" id=5L169" cla5s="line" name="L199"> 195 59             ifr=!"+code=nr_find_data"sref">lockdep_data    )="kernel/lockdep_proc.c#L205" id=6L200" cla6s="line" name="L200"> 206 60                     return=-"+code=lock_claENOMEM"sref">lockdep_ENOMEM href="kernel/lockdep_proc.c#L221" id=6L201" cla6s="line" name="L201"> 206 60     ="kernel/lockdep_proc.c#L205" id=6L201" cla6s="line" name="L192"> 196 60             "+code=lockdep_rs="sref">all_lockrea     =e"+code=seq_printf" open"sref">lockdep_tf" openhref="+code=lock_claass="sref">seq_fileass=    cl href"+code=lock_class" owlock_class 196 6              ifr=!"+code=nr_find_rs="sref">all_lockrea    ) f="kernel/lockdep_proc.c#L231" id=6L402" cla6s="line" name="L194"> 196 60                   lockdep_statcowlock_claitehuct  =e"+code=v" classdata"sref">lockdep_data    href="+code=usage_matwlock_claow 196 60                     a href="+code=lock_clatfseq_filetfm, seq_fileass=    href="+code=usage_maa>(vate_data"sref">lockdep_a>(vate_data    f="kernel/lockdep_proc.c#L215" id=6L602" cla6s="line" name="L196"> 196
60     ="kernel/lockdep_proc.c#L221" id=6L702" cla6s="line" name="L197"> 196 60                     "+code=lock_clasist_for_each_entry"sref">seq_filesist_for_each_entryhref="+code=lock_clalass="sref">class;
 *all_lockall_ss *seq_fileso 196 60                   lock_claitehuct href="+code=usage_macass="sref">class;
class;
 196 60                        lock_claitehuct href="+code=usage_matwlock_claowlock_classclass;
 216 61                        lock_claitehuct ++f="kernel/lockdep_proc.c#L220" id=6L211" cla6s="line" name="L211"> 216 61              216 61             if (lockdep_data    href="+code=usage_maiteh_en="sref">debug_atiteh_en=pan  =e"+code=v" classiteh"sref">lock_claitehuct f="kernel/lockdep_proc.c#L220" id=6L213" cla6s="line" name="L213"> 216 61 href="kernel/lockdep_proc.c#L184" id=6L402" cla6s="line" name="L214"> 216 61                   lockdep_oorthref="+code=lock_cladata"sref">lockdep_data    href="+code=usage_matwlock_claowlockdep_data    href="+code=usage_maiteh_en="sref">debug_atiteh_en=pan  -e"+code=v" classdata"sref">lockdep_data    href="+code=usage_matwlock_claow 216#61                                     aizeof=a href="+code=lock_class" cowlockdep_statcow 216}61             if (lockdep_ltatcowlock_claNULLuct ef="kernel/lockdep_proc.c#L215" id=6L702" cla6s="line" name="L217"> 216
61 href="kernel/lockdep_proc.c#L218" id=6L802" cla6s="line" name="L218"> 216s61                   m, all_locka>(vateuct  =e"+code=v" classdata"sref">lockdep_data    f="kernel/lockdep_proc.c#L215" id=6L902" cla6s="line" name="L219"> 216{61             } else="kernel/lockdep_proc.c#L221" id=6L220" cla6s="line" name="L220"> 226 62                     "+code=seq_prinvfree"sref">all_lockvfreehref="+code=lock_cladata"sref">lockdep_data    ef="kernel/lockdep_proc.c#L215" id=6L221" cla6s="line" name="L221"> 226 62     ="kernel/lockdep_proc.c#L205" id=6L201" cla6s="line" name="L222"> 226 62             return="+code=lock_clars="sref">all_lockrea    f="kernel/lockdep_proc.c#L221" id=6L213" cla6s="line" name="L223"> 226 62     f="kernel/lockdep_proc.c#L217" id=6L402" cla6s="line" name="L224"> 226 62 href="kernel/lockdep_proc.c#L155" id=6L502" cla6s="line" name="L225"> 226 62 hrefnt lockdep_taize_t     "+code=lock_class" cowall_lockss" cowseq_fileass=     *"+code=lock_claass="sref">seq_fileass=    ,hconstlock_cla__useh     *"+code=lock_clabu="sref">seq_prinbu=    f="kernel/lockdep_proc.c#L205" id=6L602" cla6s="line" name="L226"> 226 62             if (lockdep_tize_t     "+code=lock_clacouclassoulockdep_loff_t     *"+code=lock_clappos"sref">lockdep_ppospan )="kernel/lockdep_proc.c#L231" id=6L702" cla6s="line" name="L227"> 226 62     f="kernel/lockdep_proc.c#L220" id=6L802" cla6s="line" name="L228"> 226 6              a href="+code=lock_class" class="sref">lock_class *class;
 226
62             char="+code=lock_cla""sref">seq_filec href="kernel/lockdep_proc.c#L221" id=6L230" cla6s="line" name="L230"> 236 63 href="kernel/lockdep_proc.c#L161" id=6L231" cla6s="line" name="L231"> 236
63             ifr="+code=nr_find_louclassou 236 63             if (lock_claget_usehhref="+code=lock_clal"sref">seq_filec hrecl"+code=seq_prinbu="sref">seq_prinbu=    ))="kernel/lockdep_proc.c#L231" id=6L213" cla6s="line" name="L233"> 236 63                             return=-"+code=lock_claEFAULT"sref">lockdep_EFAULT href="kernel/lockdep_proc.c#L221" id=6L402" cla6s="line" name="L234"> 236 63 href="kernel/lockdep_proc.c#L155" id=6L502" cla6s="line" name="L235"> 236 63                     ifr="+code=nr_find_l"sref">seq_filec hre !=lass="string">" re#39;0e#39;
 236 63             if (classou 136s63 href="kernel/lockdep_proc.c#L218" id=6L802" cla6s="line" name="L138"> 136{63                   seq_filesist_for_each_entryhref="+code=lock_clalass="sref">class;
 *all_lockall_ss *seq_fileso 136 63                        lock_clalaear_ltatcowclass;
 146 64             f="kernel/lockdep_proc.c#L217" id=6L231" cla6s="line" name="L141"> 146 64             return="+code=lock_clalouclassou 146
64     f="kernel/lockdep_proc.c#L217" id=6L213" cla6s="line" name="L143"> 146 64 href="kernel/lockdep_proc.c#L184" id=6L234" cla6s="line" name="L144"> 146 64     nt all_lockss" cowlock_clain_cl     *"+code=lock_clain_cl"sref">lock_clain_cl    cla href="+code=lock_claass="sref">seq_fileass=     *"+code=lock_claass="sref">seq_fileass=    )="kernel/lockdep_proc.c#L231" id=6L502" cla6s="line" name="L145"> 146 64     f="kernel/lockdep_proc.c#L231" id=6L602" cla6s="line" name="L146"> 146 64             a href="+code=lock_clatfseq_filetflockdep_tf<     =e"+code=v" classass="sref">seq_fileass=    href="+code=usage_maa>(vate_data"sref">lockdep_a>(vate_data    f="kernel/lockdep_proc.c#L215" id=6L702" cla6s="line" name="L147"> 146
64 href="kernel/lockdep_proc.c#L218" id=6L228" cla6s="line" name="L148"> 146 64             "+code=nr_softivfree"sref">all_lockvfreehref="+code=lock_clatf<"sref">lockdep_tf<    href="+code=usage_maa>(vate"sref">all_locka>(vateuct ef="kernel/lockdep_proc.c#L215" id=6L902" cla6s="line" name="L149"> 146
64             return="+code=lock_clatfall_locktflock_clain_cl    cl"+code=lock_claass="sref">seq_fileass=    )f="kernel/lockdep_proc.c#L215" id=6L150" cla6s="line" name="L150"> 156 65     f="kernel/lockdep_proc.c#L217" id=6L151" cla6s="line" name="L151"> 156 65     ="kernel/lockdep_proc.c#L205" id=6L202" cla6s="line" name="L152"> 156 65     nt lock_claass=/operaNaoot     "+code=lock_cla205"_ltatcowlock_cla205"_ltatcow 156 65             ."+code=lock_claopen"sref">lockdep_openhref      lockdep_ltatcow 156
65             ."+code=lock_clawrite"sref">all_lockwritehref     all_lockss" cow 156 655            ."+code=lock_claass="sref">debug_atass= hre      debug_attf 156 656            ."+code=lock_clallseek"sref">all_lockslseek hre      all_locktf 156 65             ."+code=lock_clareaease"sref">all_lockreaeasehref   all_lockss" cow 156 65     }f="kernel/lockdep_proc.c#L220" id=6L229" cla6s="line" name="L159"> 156 65     #COdoflass="string">comment">/* CONFIG_/a>
_STAT */
 166
66 href="kernel/lockdep_proc.c#L161" id=6L151" cla6s="line" name="L161"> 166 66     nt classclass 166}66     f="kernel/lockdep_proc.c#L220" id=6L233" cla6s="line" name="L163"> 166
66             "+code=lock_cla205"_creste"sref">all_locka>5"_crestehref="ss="string">" redundastat.c#span>,
all_lockS_IRUSR    cl"+code=seq_prinNULL"sref">lock_claNULLuct cl href"+code=lock_cla205"_ltat.c#LoperaNaoot"sref">lock_cla205"_ltat.c#LoperaNaoot    )f="kernel/lockdep_proc.c#L215" id=6L234" cla6s="line" name="L164"> 166s66     #ifdefl"+code=seq_prinCONFIG_PROVE_/a>
ING"sref">lock_claCONFIG_PROVE_/a>
INGhref="kernel/lockdep_proc.c#L161" id=6L502" cla6s="line" name="L165"> 166 665            "+code=lock_cla205"_creste"sref">all_locka>5"_crestehref="ss="string">" redundastat.c#_chaiotspan>,
all_lockS_IRUSR    cl"+code=seq_prinNULL"sref">lock_claNULLuct c="kernel/lockdep_proc.c#L161" id=6L602" cla6s="line" name="L166"> 166 66             if (lock_cla205"_ltat.c#LchaiotLoperaNaoot    )f="kernel/lockdep_proc.c#L215" id=6L702" cla6s="line" name="L167"> 166 66     #COdof="kernel/lockdep_proc.c#L215" id=6L228" cla6s="line" name="L168"> 166 66             "+code=nr_softi205"_creste"sref">all_locka>5"_crestehref="ss="string">" redundastat.c#_ow,
all_lockS_IRUSR    cl"+code=seq_prinNULL"sref">lock_claNULLuct c="kernel/lockdep_proc.c#L161" id=6L229" cla6s="line" name="L169"> 166}66                        < href"+code=lock_cla205"_ltat.c#Lowlock_cla205"_ltat.c#Low 176
67 href="kernel/lockdep_proc.c#L161" id=6L151" cla6s="line" name="L171"> 176s67     #ifdefl"+code=seq_prinCONFIG_/a>
_STAT"sref">lock_claCONFIG_cla205"_ltat.c#Low 166 66             "+code=nr_softi205"_creste"sref">all_locka>5"_crestopera="string">" redundastat.c#_ow,
,
all_lockS_IRUSR    cl"+code=seq_prinNULL"sref">lock_claNULLucn )="kern6l/lockdep_proc.c#L231" i6=5L1667 cla6s="line" name="L233"> 166}66                 eraNaoot     "+code=lock_cla205"_ltatcow_cla205"_ltat.c#Low 166 66     #CO  f="kern6l/lockdep_proc.c#L217" i6=5L176" cla5s="line" name="L175"> 175
57 6ref="kern6l/lockdep_proc.c#L196" i6=5L1767 cla6s="line" name="L183"> 185
58             retur6n )="kern6l/lockdep_proc.c#L231" i6=5L706" cla5s="line" name="L150"> 156 65     f="kern6l/lockdep_proc.c#L220" i6=5L2267 cla5s="line" name="L198"> 195 59 6t )="kern6l/lockdep_proc.c#L231" i6=5L226" cla5me="L161"> 166 66call     nt alf">class 176
67 hlse="kern6l/lockdep_proc.c#L221" i6=5L186" cla5


The original LXR software by the ="line" nhttp://sourceforge.net/projects/lxg_>LXR > 15u61"ylock_cthis exaNai56 kxg.rocux.no kindly hostedrby ="line" nhttp://www.redpill-rocpro.noocRedpill Locpro ASlock_cprovider of Locuxe" nault">&qand raNaoot"sr servicer since 1995.