diff options
| -rw-r--r-- | kernel/locking/lockdep.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c index 737d2dd3ea56..5c837a537273 100644 --- a/kernel/locking/lockdep.c +++ b/kernel/locking/lockdep.c | |||
| @@ -629,7 +629,8 @@ static int static_obj(void *obj) | |||
| 629 | 629 | ||
| 630 | /* | 630 | /* |
| 631 | * To make lock name printouts unique, we calculate a unique | 631 | * To make lock name printouts unique, we calculate a unique |
| 632 | * class->name_version generation counter: | 632 | * class->name_version generation counter. The caller must hold the graph |
| 633 | * lock. | ||
| 633 | */ | 634 | */ |
| 634 | static int count_matching_names(struct lock_class *new_class) | 635 | static int count_matching_names(struct lock_class *new_class) |
| 635 | { | 636 | { |
| @@ -639,7 +640,7 @@ static int count_matching_names(struct lock_class *new_class) | |||
| 639 | if (!new_class->name) | 640 | if (!new_class->name) |
| 640 | return 0; | 641 | return 0; |
| 641 | 642 | ||
| 642 | list_for_each_entry_rcu(class, &all_lock_classes, lock_entry) { | 643 | list_for_each_entry(class, &all_lock_classes, lock_entry) { |
| 643 | if (new_class->key - new_class->subclass == class->key) | 644 | if (new_class->key - new_class->subclass == class->key) |
| 644 | return class->name_version; | 645 | return class->name_version; |
| 645 | if (class->name && !strcmp(class->name, new_class->name)) | 646 | if (class->name && !strcmp(class->name, new_class->name)) |
| @@ -803,7 +804,7 @@ register_lock_class(struct lockdep_map *lock, unsigned int subclass, int force) | |||
| 803 | /* | 804 | /* |
| 804 | * Add it to the global list of classes: | 805 | * Add it to the global list of classes: |
| 805 | */ | 806 | */ |
| 806 | list_add_tail_rcu(&class->lock_entry, &all_lock_classes); | 807 | list_add_tail(&class->lock_entry, &all_lock_classes); |
| 807 | 808 | ||
| 808 | if (verbose(class)) { | 809 | if (verbose(class)) { |
| 809 | graph_unlock(); | 810 | graph_unlock(); |
| @@ -4141,7 +4142,7 @@ static void zap_class(struct lock_class *class) | |||
| 4141 | * Unhash the class and remove it from the all_lock_classes list: | 4142 | * Unhash the class and remove it from the all_lock_classes list: |
| 4142 | */ | 4143 | */ |
| 4143 | hlist_del_rcu(&class->hash_entry); | 4144 | hlist_del_rcu(&class->hash_entry); |
| 4144 | list_del_rcu(&class->lock_entry); | 4145 | list_del(&class->lock_entry); |
| 4145 | 4146 | ||
| 4146 | RCU_INIT_POINTER(class->key, NULL); | 4147 | RCU_INIT_POINTER(class->key, NULL); |
| 4147 | RCU_INIT_POINTER(class->name, NULL); | 4148 | RCU_INIT_POINTER(class->name, NULL); |
