diff options
author | Mikulas Patocka <mpatocka@redhat.com> | 2020-06-02 15:34:39 +0200 |
---|---|---|
committer | Mike Snitzer <snitzer@redhat.com> | 2020-06-05 14:59:41 -0400 |
commit | 88f878e58879acfdad03e08776c9802f9cd6f26a (patch) | |
tree | 0d79653d0744398d1b48e019237872b6b6b3994e /drivers | |
parent | 40e9c5ac4e3d670799a247944c330e5126935a7c (diff) | |
download | linux-88f878e58879acfdad03e08776c9802f9cd6f26a.tar.bz2 |
dm bufio: clean up rbtree block ordering
dm-bufio uses unnatural ordering in the rb-tree - blocks with smaller
numbers were put to the right node and blocks with bigger numbers were
put to the left node.
Reverse that logic so that it's natural.
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/md/dm-bufio.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/md/dm-bufio.c b/drivers/md/dm-bufio.c index 993e624e506c..ff19add97e0b 100644 --- a/drivers/md/dm-bufio.c +++ b/drivers/md/dm-bufio.c @@ -256,7 +256,7 @@ static struct dm_buffer *__find(struct dm_bufio_client *c, sector_t block) if (b->block == block) return b; - n = (b->block < block) ? n->rb_left : n->rb_right; + n = block < b->block ? n->rb_left : n->rb_right; } return NULL; @@ -276,8 +276,8 @@ static void __insert(struct dm_bufio_client *c, struct dm_buffer *b) } parent = *new; - new = (found->block < b->block) ? - &((*new)->rb_left) : &((*new)->rb_right); + new = b->block < found->block ? + &found->node.rb_left : &found->node.rb_right; } rb_link_node(&b->node, parent, new); |