diff options
-rw-r--r-- | lib/maple_tree.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/maple_tree.c b/lib/maple_tree.c index 47d0c95b9a01..250b4c67fac8 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -4333,6 +4333,9 @@ static inline bool mas_wr_append(struct ma_wr_state *wr_mas) struct ma_state *mas = wr_mas->mas; unsigned char node_pivots = mt_pivots[wr_mas->type]; + if (mt_in_rcu(mas->tree)) + return false; + if ((mas->index != wr_mas->r_min) && (mas->last == wr_mas->r_max)) { if (new_end < node_pivots) wr_mas->pivots[new_end] = wr_mas->pivots[end]; |