Skip to content

Commit

Permalink
rbtree/test: test rbtree_postorder_for_each_entry_safe()
Browse files Browse the repository at this point in the history
Signed-off-by: Cody P Schafer <cody@linux.vnet.ibm.com>
Cc: Michel Lespinasse <walken@google.com>
Cc: Jan Kara <jack@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  • Loading branch information
Cody P Schafer authored and Linus Torvalds committed Jan 24, 2014
1 parent dbf128c commit 964fe94
Showing 1 changed file with 11 additions and 0 deletions.
11 changes: 11 additions & 0 deletions lib/rbtree_test.c
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,16 @@ static int black_path_count(struct rb_node *rb)
return count;
}

static void check_postorder_foreach(int nr_nodes)
{
struct test_node *cur, *n;
int count = 0;
rbtree_postorder_for_each_entry_safe(cur, n, &root, rb)
count++;

WARN_ON_ONCE(count != nr_nodes);
}

static void check_postorder(int nr_nodes)
{
struct rb_node *rb;
Expand Down Expand Up @@ -148,6 +158,7 @@ static void check(int nr_nodes)
WARN_ON_ONCE(count < (1 << black_path_count(rb_last(&root))) - 1);

check_postorder(nr_nodes);
check_postorder_foreach(nr_nodes);
}

static void check_augmented(int nr_nodes)
Expand Down

0 comments on commit 964fe94

Please sign in to comment.