]> www.infradead.org Git - users/jedix/linux-maple.git/commit
maple_tree: Rewrite mas_data_end to return slot not occupied count.
authorLiam R. Howlett <Liam.Howlett@Oracle.com>
Thu, 12 Dec 2019 16:18:29 +0000 (11:18 -0500)
committerLiam R. Howlett <Liam.Howlett@Oracle.com>
Fri, 30 Oct 2020 18:56:46 +0000 (14:56 -0400)
commit081de40568aace1f54646c8c492b785b9094c5b2
treef9c13743ee4bb7fa1338c2c796afbe61267f04fb
parent429ee202051450d8de442425a554243bee3a1762
maple_tree: Rewrite mas_data_end to return slot not occupied count.

Rewrite mas_data_end to return slot, not occupied count and fix coalesce
calculation for a run of NULLs, etc

Move MT_BUG_ON for use in verification functions.

Add mas_mn for easier mas->node enode to node conversion.

Drop __mte_get_rcu_slot as the dead_node detect doesn't work right.

Make sure hard_data doesn't return a negative.

Fix ma_state on calls to mas_update_gaps

Fix end pivots on the right side of a split.

Fix number of slots being occupied calculation when _mas_add is using
the last slot and the new range doesn't run to mas->max.

Fix mas_rebalance when right node is empty and fix mas_data_end uses.

Rewrite mas_coalesce for new mas_data_end uses.

Fix mt_find overflow of index when there is a valuse at ULONG_MAX.

Add a testcase for mt_find overflow.

Fix mas_rev_awalk to check for errors prior to trying to walk.

Signed-off-by: Liam R. Howlett <Liam.Howlett@Oracle.com>
include/linux/maple_tree.h
lib/maple_tree.c
lib/test_maple_tree.c