[PATCH for-next v4 0/2] RDMA/rxe: Prefetching pages with explicit ODP

Daisuke Matsuda posted 2 patches 6 months, 3 weeks ago
drivers/infiniband/sw/rxe/rxe.c     |   7 ++
drivers/infiniband/sw/rxe/rxe_loc.h |  10 ++
drivers/infiniband/sw/rxe/rxe_odp.c | 159 ++++++++++++++++++++++++++++
3 files changed, 176 insertions(+)
[PATCH for-next v4 0/2] RDMA/rxe: Prefetching pages with explicit ODP
Posted by Daisuke Matsuda 6 months, 3 weeks ago
There is ibv_advise_mr(3) that can be used by applications to optimize
memory access. This series enables the feature on rxe driver, which has
already been available in mlx5.

There is a tiny change on the rdma-core util.
cf. https://github.com/linux-rdma/rdma-core/pull/1605

Currently, there are regressions in the for-next tree. When running ODP tests,
ib_uverbs and rxe can get stuck respectively. Therefore, to test this series,
please apply the patches to commit e56b4eab9cde ("RDMA/siw: Remove unused
siw_mem_add"). The regressions are under investigation.
cf. https://lore.kernel.org/linux-rdma/20250522083257.GM7435@unreal/T/#t

v2->v3:
  - Added return -EOPNOTSUPP; (1st patch)
  - Corrected type definitions mismatch (1st patch)

v3->v4:
  - merged rxe_init_prefetch_work() to rxe_ib_advise_mr_prefetch() (2nd patch)
  - Modified to use per-MR counter to ensure RXE is not destroyed while
    the asynchronous task is running  (2nd patch)

Daisuke Matsuda (2):
  RDMA/rxe: Implement synchronous prefetch for ODP MRs
  RDMA/rxe: Enable asynchronous prefetch for ODP MRs

 drivers/infiniband/sw/rxe/rxe.c     |   7 ++
 drivers/infiniband/sw/rxe/rxe_loc.h |  10 ++
 drivers/infiniband/sw/rxe/rxe_odp.c | 159 ++++++++++++++++++++++++++++
 3 files changed, 176 insertions(+)

-- 
2.43.0
Re: [PATCH for-next v4 0/2] RDMA/rxe: Prefetching pages with explicit ODP
Posted by Leon Romanovsky 6 months ago
On Thu, 22 May 2025 11:19:53 +0000, Daisuke Matsuda wrote:
> There is ibv_advise_mr(3) that can be used by applications to optimize
> memory access. This series enables the feature on rxe driver, which has
> already been available in mlx5.
> 
> There is a tiny change on the rdma-core util.
> cf. https://github.com/linux-rdma/rdma-core/pull/1605
> 
> [...]

Applied, thanks!

[1/2] RDMA/rxe: Implement synchronous prefetch for ODP MRs
      https://git.kernel.org/rdma/rdma/c/3576b0df1588a0
[2/2] RDMA/rxe: Enable asynchronous prefetch for ODP MRs
      https://git.kernel.org/rdma/rdma/c/9284bc34c77399

Best regards,
-- 
Leon Romanovsky <leon@kernel.org>