From: ZhangPeng <zhangpeng362(a)huawei.com>
This series introduces __mt_dup() to improve the performance of fork().
Also backport a bugfix to avoid conflicts.
Liam R. Howlett (1):
radix tree test suite: fix allocation calculation in
kmem_cache_alloc_bulk()
Peng Zhang (10):
maple_tree: add mt_free_one() and mt_attr() helpers
maple_tree: introduce {mtree,mas}_lock_nested()
maple_tree: introduce interfaces __mt_dup() and mtree_dup()
radix tree test suite: align kmem_cache_alloc_bulk() with kernel
behavior.
maple_tree: add test for mtree_dup()
maple_tree: update the documentation of maple tree
maple_tree: skip other tests when BENCH is enabled
maple_tree: update check_forking() and bench_forking()
maple_tree: preserve the tree attributes when destroying maple tree
fork: use __mt_dup() to duplicate maple tree in dup_mmap()
Documentation/core-api/maple_tree.rst | 4 +
include/linux/maple_tree.h | 7 +
include/linux/mm.h | 11 +
kernel/fork.c | 40 ++-
lib/maple_tree.c | 288 +++++++++++++++++++-
lib/test_maple_tree.c | 123 +++++----
mm/internal.h | 11 -
mm/memory.c | 7 +-
mm/mmap.c | 9 +-
tools/include/linux/rwsem.h | 4 +
tools/include/linux/spinlock.h | 1 +
tools/testing/radix-tree/linux.c | 49 +++-
tools/testing/radix-tree/maple.c | 363 ++++++++++++++++++++++++++
13 files changed, 813 insertions(+), 104 deletions(-)
--
2.25.1