diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/rhashtable.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/rhashtable.c b/lib/rhashtable.c index 1c149e9a5cd5..cc808707d1cf 100644 --- a/lib/rhashtable.c +++ b/lib/rhashtable.c @@ -516,7 +516,8 @@ int rhashtable_walk_init(struct rhashtable *ht, struct rhashtable_iter *iter) return -ENOMEM; spin_lock(&ht->lock); - iter->walker->tbl = rht_dereference(ht->tbl, ht); + iter->walker->tbl = + rcu_dereference_protected(ht->tbl, lockdep_is_held(&ht->lock)); list_add(&iter->walker->list, &iter->walker->tbl->walkers); spin_unlock(&ht->lock); |