Skip to content
Permalink
Browse files

Revert "lib: A small optimization for the hash iterate and walk funct…

…ions"

This reverts commit fc61644.
  • Loading branch information...
donaldsharp committed Jul 6, 2018
1 parent 32ec4bc commit df66eb2eeb7189ab27be49aa8637938cdcf43cb6
Showing with 2 additions and 11 deletions.
  1. +1 −11 lib/hash.c
  2. +1 −0 vtysh/vtysh.c
@@ -241,21 +241,15 @@ void hash_iterate(struct hash *hash, void (*func)(struct hash_backet *, void *),
unsigned int i;
struct hash_backet *hb;
struct hash_backet *hbnext;
uint32_t count = 0;

for (i = 0; i < hash->size; i++) {
for (i = 0; i < hash->size; i++)
for (hb = hash->index[i]; hb; hb = hbnext) {
/* get pointer to next hash backet here, in case (*func)
* decides to delete hb by calling hash_release
*/
hbnext = hb->next;
(*func)(hb, arg);
count++;

}
if (count == hash->count)
return;
}
}

void hash_walk(struct hash *hash, int (*func)(struct hash_backet *, void *),
@@ -265,7 +259,6 @@ void hash_walk(struct hash *hash, int (*func)(struct hash_backet *, void *),
struct hash_backet *hb;
struct hash_backet *hbnext;
int ret = HASHWALK_CONTINUE;
uint32_t count = 0;

for (i = 0; i < hash->size; i++) {
for (hb = hash->index[i]; hb; hb = hbnext) {
@@ -276,10 +269,7 @@ void hash_walk(struct hash *hash, int (*func)(struct hash_backet *, void *),
ret = (*func)(hb, arg);
if (ret == HASHWALK_ABORT)
return;
count++;
}
if (count == hash->count)
return;
}
}

@@ -2144,6 +2144,7 @@ DEFUN (vtysh_show_poll,
"Thread Poll Information\n")
{
unsigned int i;
int idx = 0;
int ret = CMD_SUCCESS;
char line[100];

0 comments on commit df66eb2

Please sign in to comment.
You can’t perform that action at this time.