Skip to content

ODP Fixes and Improvements

Leon Romanovsky linux-rdma 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest10 patches 3 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/10IB: Replace ib_umem page_size by page_shiftdrivers/infiniband/core/umem.c drivers/infiniband/core/umem_odp.c drivers/infiniband/hw/bnxt_re/ib_verbs.c +20 more+66 -753 replies
2/10IB/mlx5: Fix function updating xlt emergency pathdrivers/infiniband/hw/mlx5/mr.c+1 -10 replies
3/10IB/mlx5: Fix UMR size calculationdrivers/infiniband/hw/mlx5/mr.c+2 -10 replies
4/10IB/mlx5: Fix implicit MR GCdrivers/infiniband/hw/mlx5/odp.c+1 -100 replies
5/10IB/mlx5: Decrease verbosity level of ODP errorsdrivers/infiniband/hw/mlx5/odp.c+4 -70 replies
6/10IB/umem: Add contiguous ODP supportdrivers/infiniband/core/umem_odp.c include/rdma/ib_umem.h+33 -210 replies
7/10IB/mlx5: Add contiguous ODP supportdrivers/infiniband/hw/mlx5/mem.c drivers/infiniband/hw/mlx5/odp.c+19 -180 replies
8/10IB/umem: Add support to huge ODPdrivers/infiniband/core/umem.c drivers/infiniband/core/umem_odp.c include/rdma/ib_umem_odp.h +1 more+23 -50 replies
9/10IB/mlx5: Extract page fault codedrivers/infiniband/hw/mlx5/odp.c+104 -990 replies
10/10IB/mlx5: Add ODP support to MWdrivers/infiniband/hw/mlx5/mlx5_ib.h drivers/infiniband/hw/mlx5/mr.c drivers/infiniband/hw/mlx5/odp.c+120 -430 replies

Reviews trailers per patch

1 of 10 patches has a Reviewed-by or Acked-by.

PatchSteve Wise
1/10A-b
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v1 thread

Cover letter [PATCH rdma-next 00/10] ODP Fixes and Improvements

Hi Doug,

Please find the following patch set from Artemy. This patch set fixes and extends ODP support.

This patch set has the following steps:

1. Code simplification for all IB drivers.
2. Three fixes to existing ODP code.
3. Adds generic infrastructure for regions consisting of physically contiguous chunks of arbitrary order. Utilizing this infrastructure added specific treatment to ODP MRs allocated with MAP_HUGETLB.
4. Adds ODP suport to Memory Windows (MW). Memory windows allow the application to have more flexible control over access to its memory. The operation of associating an MW with an MR is called binding. When MW is bound to ODP MR it may cause page fault which should be properly handled.

Thanks

Artemy Kovalyov (10):
IB: Replace ib_umem page_size by page_shift IB/mlx5: Fix function updating xlt emergency path IB/mlx5: Fix UMR size calculation IB/mlx5: Fix implicit MR GC
IB/mlx5: Decrease verbosity level of ODP errors IB/umem: Add contiguous ODP support IB/mlx5: Add contiguous ODP support IB/umem: Add support to huge ODP
IB/mlx5: Extract page fault code
IB/mlx5: Add ODP support to MW

 drivers/infiniband/core/umem.c                 |  17 +-
 drivers/infiniband/core/umem_odp.c             |  81 ++++--
 drivers/infiniband/hw/bnxt_re/ib_verbs.c       |  12 +-
 drivers/infiniband/hw/cxgb3/iwch_provider.c    |   4 +-
 drivers/infiniband/hw/cxgb4/mem.c              |   4 +-
 drivers/infiniband/hw/hns/hns_roce_cq.c        |   3 +-
 drivers/infiniband/hw/hns/hns_roce_mr.c        |   9 +-
 drivers/infiniband/hw/hns/hns_roce_qp.c        |   3 +-
 drivers/infiniband/hw/i40iw/i40iw_verbs.c      |   7 +-
 drivers/infiniband/hw/mlx4/cq.c                |   2 +-
 drivers/infiniband/hw/mlx4/mr.c                |   6 +-
 drivers/infiniband/hw/mlx4/qp.c                |   2 +-
 drivers/infiniband/hw/mlx4/srq.c               |   2 +-
 drivers/infiniband/hw/mlx5/mem.c               |  13 +-
 drivers/infiniband/hw/mlx5/mlx5_ib.h           |   1 +
 drivers/infiniband/hw/mlx5/mr.c                |   6 +-
 drivers/infiniband/hw/mlx5/odp.c               | 344 +++++++++++++++----------
 drivers/infiniband/hw/mthca/mthca_provider.c   |   5 +-
 drivers/infiniband/hw/nes/nes_verbs.c          |   4 +-
 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c    |  15 +-
 drivers/infiniband/hw/qedr/verbs.c             |   8 +-
 drivers/infiniband/hw/vmw_pvrdma/pvrdma_misc.c |   2 +-
 drivers/infiniband/sw/rdmavt/mr.c              |   8 +-
 drivers/infiniband/sw/rxe/rxe_mr.c             |   8 +-
 include/rdma/ib_umem.h                         |   8 +-
 include/rdma/ib_umem_odp.h                     |   6 +-
 include/rdma/ib_verbs.h                        |   1 +
 27 files changed, 337 insertions(+), 244 deletions(-)

--
2.12.0

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html