]> git.baikalelectronics.ru Git - kernel.git/commit
RDMA/odp: Use the common interval tree library instead of generic
authorJason Gunthorpe <jgg@mellanox.com>
Mon, 19 Aug 2019 11:16:59 +0000 (14:16 +0300)
committerJason Gunthorpe <jgg@mellanox.com>
Wed, 21 Aug 2019 16:34:09 +0000 (13:34 -0300)
commitf3dca24cf87563e7d4786a09a7cfa9fa5b414ee9
treead116446bef54a5a3da15ac76896c7a698049cd8
parent20a587849ca345007842af8864f4ee66752cb621
RDMA/odp: Use the common interval tree library instead of generic

ODP is working with userspace VA's in the interval tree which always fit
into an unsigned long, so we can use the common code.

This comes at a cost of a 16 byte increase in ib_umem_odp struct size due
to storing the interval tree start/last in addition to the umem
addr/length. However these values were computed and are performance
critical for the interval lookup, so this seems like a worthwhile trade
off.

Removes 2k of .text from the kernel.

Link: https://lore.kernel.org/r/20190819111710.18440-2-leon@kernel.org
Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
drivers/infiniband/Kconfig
drivers/infiniband/core/umem_odp.c
include/rdma/ib_umem_odp.h