diff options
author | Haggai Eran <haggaie@mellanox.com> | 2014-12-11 16:04:26 +0100 |
---|---|---|
committer | Roland Dreier <roland@purestorage.com> | 2014-12-16 03:19:04 +0100 |
commit | b4cfe447d47b5763f630412fd5dc5fbe66e991d1 (patch) | |
tree | 6725a138e196bb2b41d98f03c78b53dcac5e7549 /drivers/infiniband/hw/mlx5/main.c | |
parent | IB/mlx5: Add support for RDMA read/write responder page faults (diff) | |
download | linux-b4cfe447d47b5763f630412fd5dc5fbe66e991d1.tar.xz linux-b4cfe447d47b5763f630412fd5dc5fbe66e991d1.zip |
IB/mlx5: Implement on demand paging by adding support for MMU notifiers
* Implement the relevant invalidation functions (zap MTTs as needed)
* Implement interlocking (and rollback in the page fault handlers) for
cases of a racing notifier and fault.
* With this patch we can now enable the capability bits for supporting RC
send/receive/RDMA read/RDMA write, and UD send.
Signed-off-by: Sagi Grimberg <sagig@mellanox.com>
Signed-off-by: Shachar Raindel <raindel@mellanox.com>
Signed-off-by: Haggai Eran <haggaie@mellanox.com>
Signed-off-by: Roland Dreier <roland@purestorage.com>
Diffstat (limited to 'drivers/infiniband/hw/mlx5/main.c')
-rw-r--r-- | drivers/infiniband/hw/mlx5/main.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/mlx5/main.c b/drivers/infiniband/hw/mlx5/main.c index a801baa79c8e..8a87404e9c76 100644 --- a/drivers/infiniband/hw/mlx5/main.c +++ b/drivers/infiniband/hw/mlx5/main.c @@ -574,6 +574,10 @@ static struct ib_ucontext *mlx5_ib_alloc_ucontext(struct ib_device *ibdev, goto out_count; } +#ifdef CONFIG_INFINIBAND_ON_DEMAND_PAGING + context->ibucontext.invalidate_range = &mlx5_ib_invalidate_range; +#endif + INIT_LIST_HEAD(&context->db_page_list); mutex_init(&context->db_page_mutex); |