aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/Kconfig
diff options
context:
space:
mode:
authorYishai Hadas <yishaih@nvidia.com>2020-09-30 19:38:25 +0300
committerJason Gunthorpe <jgg@nvidia.com>2020-10-01 16:39:54 -0300
commit36f30e486dce22345c2dd3a3ba439c12cd67f6ba (patch)
treeced2407f4fa17dbd933eb1f1b5c128531a09cda2 /drivers/infiniband/Kconfig
parentRDMA/addr: Fix race with netevent_callback()/rdma_addr_cancel() (diff)
downloadlinux-dev-36f30e486dce22345c2dd3a3ba439c12cd67f6ba.tar.xz
linux-dev-36f30e486dce22345c2dd3a3ba439c12cd67f6ba.zip
IB/core: Improve ODP to use hmm_range_fault()
Move to use hmm_range_fault() instead of get_user_pags_remote() to improve performance in a few aspects: This includes: - Dropping the need to allocate and free memory to hold its output - No need any more to use put_page() to unpin the pages - The logic to detect contiguous pages is done based on the returned order, no need to run per page and evaluate. In addition, moving to use hmm_range_fault() enables to reduce page faults in the system with it's snapshot mode, this will be introduced in next patches from this series. As part of this, cleanup some flows and use the required data structures to work with hmm_range_fault(). Link: https://lore.kernel.org/r/20200930163828.1336747-2-leon@kernel.org Signed-off-by: Yishai Hadas <yishaih@nvidia.com> Signed-off-by: Leon Romanovsky <leonro@nvidia.com> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Diffstat (limited to 'drivers/infiniband/Kconfig')
-rw-r--r--drivers/infiniband/Kconfig1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/infiniband/Kconfig b/drivers/infiniband/Kconfig
index 91b023341b77..32a51432ec4f 100644
--- a/drivers/infiniband/Kconfig
+++ b/drivers/infiniband/Kconfig
@@ -48,6 +48,7 @@ config INFINIBAND_ON_DEMAND_PAGING
depends on INFINIBAND_USER_MEM
select MMU_NOTIFIER
select INTERVAL_TREE
+ select HMM_MIRROR
default y
help
On demand paging support for the InfiniBand subsystem.