projects
/
users
/
jedix
/
linux-maple.git
/ commitdiff
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
58d5331
)
maple_tree: mas_max_gap() breaks out of loop on 0 pivot
author
Liam R. Howlett <Liam.Howlett@Oracle.com>
Wed, 23 Sep 2020 02:41:45 +0000
(22:41 -0400)
committer
Liam R. Howlett <Liam.Howlett@Oracle.com>
Fri, 30 Oct 2020 19:12:10 +0000
(15:12 -0400)
Signed-off-by: Liam R. Howlett <Liam.Howlett@Oracle.com>
lib/maple_tree.c
patch
|
blob
|
history
diff --git
a/lib/maple_tree.c
b/lib/maple_tree.c
index 9d52bf8fd757ffa5d68815a58df50a82142e01cf..1d89ea6f0c295845f5d6c7485d60dcd8221f31ec 100644
(file)
--- a/
lib/maple_tree.c
+++ b/
lib/maple_tree.c
@@
-1106,6
+1106,7
@@
static inline unsigned long mas_max_gap(struct ma_state *mas)
{
enum maple_type mt = mte_node_type(mas->node);
unsigned long *gaps = ma_gaps(mas_mn(mas), mt);
+ unsigned long *pivots = ma_pivots(mas_mn(mas), mt);
unsigned long max_gap = 0;
unsigned char i;
@@
-1115,6
+1116,9
@@
static inline unsigned long mas_max_gap(struct ma_state *mas)
gap = gaps[i];
if (gap > max_gap)
max_gap = gap;
+
+ if (i < mt_pivots[mt] && !pivots[i])
+ break;
}
return max_gap;