From: Leon Romanovsky <leonro@xxxxxxxxxxxx> Hi, This series from Jason is a collection of general cleanups for ODP to clarify some of the flows around umem creation and use of the interval tree. It is based on patch "RDMA/mlx5: Fix MR npages calculation for IB_ACCESS_HUGETLB" https://lore.kernel.org/linux-rdma/20190815083834.9245-5-leon@xxxxxxxxxx Thanks Jason Gunthorpe (11): RDMA/odp: Use the common interval tree library instead of generic RDMA/odp: Iterate over the whole rbtree directly RDMA/odp: Make it clearer when a umem is an implicit ODP umem RMDA/odp: Consolidate umem_odp initialization RDMA/odp: Make the three ways to create a umem_odp clear RDMA/odp: Split creating a umem_odp from ib_umem_get RDMA/odp: Provide ib_umem_odp_release() to undo the allocs RDMA/odp: Check for overflow when computing the umem_odp end RDMA/odp: Use kvcalloc for the dma_list and page_list RDMA/mlx5: Use ib_umem_start instead of umem.address RDMA/mlx5: Use odp instead of mr->umem in pagefault_mr Moni Shoua (1): RDMA/core: Make invalidate_range a device operation drivers/infiniband/Kconfig | 1 + drivers/infiniband/core/device.c | 1 + drivers/infiniband/core/umem.c | 50 +-- drivers/infiniband/core/umem_odp.c | 448 +++++++++++++++------------ drivers/infiniband/core/uverbs_cmd.c | 2 - drivers/infiniband/hw/mlx5/main.c | 4 - drivers/infiniband/hw/mlx5/mem.c | 13 - drivers/infiniband/hw/mlx5/mr.c | 38 ++- drivers/infiniband/hw/mlx5/odp.c | 88 +++--- include/rdma/ib_umem_odp.h | 48 ++- include/rdma/ib_verbs.h | 4 +- 11 files changed, 370 insertions(+), 327 deletions(-) -- 2.20.1