diff --git a/[refs] b/[refs] index e6536670becd..c9d6dc581a5c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 7cd5a02f54f4c9d16cf7fdffa2122bc73bb09b43 +refs/heads/master: 8bfe0298f7a04952d19f4a2cf510d7a6311eeed0 diff --git a/trunk/kernel/lockdep.c b/trunk/kernel/lockdep.c index 410c3365ad8f..ab933fecd2a1 100644 --- a/trunk/kernel/lockdep.c +++ b/trunk/kernel/lockdep.c @@ -3176,6 +3176,7 @@ static void zap_class(struct lock_class *class) list_del_rcu(&class->hash_entry); list_del_rcu(&class->lock_entry); + class->key = NULL; } static inline int within(const void *addr, void *start, unsigned long size) diff --git a/trunk/kernel/lockdep_proc.c b/trunk/kernel/lockdep_proc.c index 6252ff799d19..fa19aee604c2 100644 --- a/trunk/kernel/lockdep_proc.c +++ b/trunk/kernel/lockdep_proc.c @@ -201,6 +201,9 @@ static int lc_show(struct seq_file *m, void *v) for (i = 0; i < chain->depth; i++) { class = lock_chain_get_class(chain, i); + if (!class->key) + continue; + seq_printf(m, "[%p] ", class->key); print_name(m, class); seq_puts(m, "\n");