]> www.infradead.org Git - users/jedix/linux-maple.git/commit
maple_tree: Add splitting of nodes.
authorLiam R. Howlett <Liam.Howlett@Oracle.com>
Wed, 5 Dec 2018 19:48:28 +0000 (14:48 -0500)
committerLiam R. Howlett <Liam.Howlett@Oracle.com>
Wed, 5 Dec 2018 20:02:54 +0000 (15:02 -0500)
commitafb00f607ff91128f90b45a644ec0c84a2aa1f02
tree5506f5383020071f500ab9ba38a8c73c9da4bcbc
parent28521cc40f752da1635fb43727d99a87cee52af0
maple_tree: Add splitting of nodes.

node64 supported only.  node4 check has been disabled.

Allocation of nodes has been reworked to allocate a list of nodes.  The
number (1-3) is encoded in the last two bits of the list pointer.  If
the requested number does not match the number that has been allocated,
then another writer has come in when we released the spin lock.  Once
all the nodes in the list have been linked into the tree, the list of
pointers are freed.

Added kcalloc to the testing linux/slab.h

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