From b5ca348db32b2f7812e5bb30626d4eff360132bd Mon Sep 17 00:00:00 2001 From: Arjan van de Ven Date: Thu, 24 Jan 2008 07:00:45 +0100 Subject: [PATCH] --- yaml --- r: 75660 b: refs/heads/master c: fabe874a48de45b137f99b4ed3641e0413f465ce h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/kernel/lockdep.c | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index efb7b1028995..ff37bfb26bf5 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 4784b11c4f49eb88f2dd74df6afc5170f193cedc +refs/heads/master: fabe874a48de45b137f99b4ed3641e0413f465ce diff --git a/trunk/kernel/lockdep.c b/trunk/kernel/lockdep.c index 4335f12a27c6..e2c07ece367d 100644 --- a/trunk/kernel/lockdep.c +++ b/trunk/kernel/lockdep.c @@ -2932,7 +2932,7 @@ static void zap_class(struct lock_class *class) } -static inline int within(void *addr, void *start, unsigned long size) +static inline int within(const void *addr, void *start, unsigned long size) { return addr >= start && addr < start + size; } @@ -2955,9 +2955,12 @@ void lockdep_free_key_range(void *start, unsigned long size) head = classhash_table + i; if (list_empty(head)) continue; - list_for_each_entry_safe(class, next, head, hash_entry) + list_for_each_entry_safe(class, next, head, hash_entry) { if (within(class->key, start, size)) zap_class(class); + else if (within(class->name, start, size)) + zap_class(class); + } } if (locked)