]> 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>
Tue, 5 Jan 2021 17:28:17 +0000 (12:28 -0500)
commit532a1fa4a6a90eb00a546493f4cb9daebc438bb6
tree65103f66a5db118fc923e721a151daa8e813b100
parentc22bac2b10e594b3dba30adc148b8a9d4a504d53
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