aboutsummaryrefslogtreecommitdiffstats
path: root/lib/rhashtable.c
diff options
context:
space:
mode:
authorThomas Graf <tgraf@suug.ch>2015-05-04 20:22:53 -0400
committerDavid S. Miller <davem@davemloft.net>2015-05-05 19:30:47 -0400
commitc936a79fc01ef1115a46f940944ebe7385845673 (patch)
treef05f998097f18a9a19fbffa8249ebbaf3383df3d /lib/rhashtable.c
parent1a376de8e3d120df54f6277f82e1ee987e2d7e8f (diff)
rhashtable: Simplify iterator code
Remove useless obj variable and goto logic. Signed-off-by: Thomas Graf <tgraf@suug.ch> Acked-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'lib/rhashtable.c')
-rw-r--r--lib/rhashtable.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/lib/rhashtable.c b/lib/rhashtable.c
index b28df4019ade..4936fc4d7f2c 100644
--- a/lib/rhashtable.c
+++ b/lib/rhashtable.c
@@ -579,7 +579,6 @@ void *rhashtable_walk_next(struct rhashtable_iter *iter)
579 struct bucket_table *tbl = iter->walker->tbl; 579 struct bucket_table *tbl = iter->walker->tbl;
580 struct rhashtable *ht = iter->ht; 580 struct rhashtable *ht = iter->ht;
581 struct rhash_head *p = iter->p; 581 struct rhash_head *p = iter->p;
582 void *obj = NULL;
583 582
584 if (p) { 583 if (p) {
585 p = rht_dereference_bucket_rcu(p->next, tbl, iter->slot); 584 p = rht_dereference_bucket_rcu(p->next, tbl, iter->slot);
@@ -599,8 +598,7 @@ next:
599 if (!rht_is_a_nulls(p)) { 598 if (!rht_is_a_nulls(p)) {
600 iter->skip++; 599 iter->skip++;
601 iter->p = p; 600 iter->p = p;
602 obj = rht_obj(ht, p); 601 return rht_obj(ht, p);
603 goto out;
604 } 602 }
605 603
606 iter->skip = 0; 604 iter->skip = 0;
@@ -618,9 +616,7 @@ next:
618 616
619 iter->p = NULL; 617 iter->p = NULL;
620 618
621out: 619 return NULL;
622
623 return obj;
624} 620}
625EXPORT_SYMBOL_GPL(rhashtable_walk_next); 621EXPORT_SYMBOL_GPL(rhashtable_walk_next);
626 622