IB/mlx5: Implement on demand paging by adding support for MMU notifiers
authorHaggai Eran <haggaie@mellanox.com>
Thu, 11 Dec 2014 15:04:26 +0000 (17:04 +0200)
committerRoland Dreier <roland@purestorage.com>
Tue, 16 Dec 2014 02:19:04 +0000 (18:19 -0800)
commitb4cfe447d47b5763f630412fd5dc5fbe66e991d1
tree6725a138e196bb2b41d98f03c78b53dcac5e7549
parenteab668a6d082b90b806efc6da12f9b30e03f401d
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>
drivers/infiniband/hw/mlx5/main.c
drivers/infiniband/hw/mlx5/mlx5_ib.h
drivers/infiniband/hw/mlx5/mr.c
drivers/infiniband/hw/mlx5/odp.c