[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230307160340.57074-1-zhangpeng.00@bytedance.com>
Date: Wed, 8 Mar 2023 00:03:40 +0800
From: Peng Zhang <zhangpeng.00@...edance.com>
To: Liam.Howlett@...cle.com, snild@...y.com
Cc: linux-mm@...ck.org, linux-kernel@...r.kernel.org,
maple-tree@...ts.infradead.org, Stable@...r.kernel.org,
Peng Zhang <zhangpeng.00@...edance.com>
Subject: [PATCH] maple_tree: Fix the error of mas->min/max in mas_skip_node()
The assignment of mas->min and mas->max is wrong. mas->min and mas->max
should represent the range of the current node. After mas_ascend()
returns, mas-min and mas->max already represent the range of the current
node, so we should delete these assignments of mas->min and mas->max.
Signed-off-by: Peng Zhang <zhangpeng.00@...edance.com>
---
lib/maple_tree.c | 10 ----------
1 file changed, 10 deletions(-)
diff --git a/lib/maple_tree.c b/lib/maple_tree.c
index f5bee48de569..d4ddf7f8adc7 100644
--- a/lib/maple_tree.c
+++ b/lib/maple_tree.c
@@ -5157,9 +5157,6 @@ static inline bool mas_rewind_node(struct ma_state *mas)
*/
static inline bool mas_skip_node(struct ma_state *mas)
{
- unsigned long *pivots;
- enum maple_type mt;
-
if (mas_is_err(mas))
return false;
@@ -5173,14 +5170,7 @@ static inline bool mas_skip_node(struct ma_state *mas)
mas_ascend(mas);
}
} while (mas->offset >= mas_data_end(mas));
-
- mt = mte_node_type(mas->node);
- pivots = ma_pivots(mas_mn(mas), mt);
- mas->min = pivots[mas->offset] + 1;
mas->offset++;
- if (mas->offset < mt_slots[mt])
- mas->max = pivots[mas->offset];
-
return true;
}
--
2.20.1
Powered by blists - more mailing lists