From: Liam R. Howlett Date: Fri, 25 Jan 2019 20:43:38 +0000 (-0500) Subject: maple_tree: Load safe root to mas->node in encoded_parent X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=aa5b28a963e66c7a37e4d34540496b5b2e41a41c;p=users%2Fjedix%2Flinux-maple.git maple_tree: Load safe root to mas->node in encoded_parent Signed-off-by: Liam R. Howlett --- diff --git a/lib/maple_tree.c b/lib/maple_tree.c index ac1d55a15314..0e87a093f137 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -191,7 +191,7 @@ static inline void ma_encoded_parent(struct ma_state *mas) unsigned char slot; if (ma_is_root(mt_to_node(mas->node)->parent)) { - mas->node = rcu_dereference(mas->tree->ma_root); + mas->node = mt_safe_root(rcu_dereference(mas->tree->ma_root)); return; } @@ -513,7 +513,6 @@ static int ma_split(struct ma_state *mas, unsigned char slot, if (ma_is_root(full)) { old_parent = full; - mas->node = mt_safe_root(mas->node); } else { old_parent = mt_parent(mas->node); p_end = ma_data_end_r64(&old_parent->mr64, UINT_MAX);