Linux RDMA and InfiniBand development
 help / color / mirror / Atom feed
* [PATCH rdma-next 0/2] RDMA/irdma: Fix FRWR and PBLE handling for PAGE_SIZE > 4K
@ 2026-10-22 21:06 Jacob Moroni
  2026-10-22 21:06 ` [PATCH rdma-next 1/2] RDMA/irdma: Fix FRWR logic " Jacob Moroni
  2026-10-22 21:06 ` [PATCH rdma-next 2/2] RDMA/irdma: Fix paged PBLE and virtual AEQ " Jacob Moroni
  0 siblings, 2 replies; 7+ messages in thread
From: Jacob Moroni @ 2026-10-22 21:06 UTC (permalink / raw)
  To: tatyana.e.nikolova, jgg, leon; +Cc: linux-rdma, Jacob Moroni

The irdma HW only supports 4K and 2M pages (plus 1G on newer HW), but
parts of the driver assumed PAGE_SIZE == 4K. On kernels with a larger
PAGE_SIZE (like arm64 with 64K pages), this resulted in a few issues:

  - FRWRs from ULPs that pass PAGE_SIZE to ib_map_mr_sg() end up
    getting mistranslated by the HW (discovered by observing SMMU
    faults).
  - Paged PBLE chunks and the virtual AEQ PBL point to the wrong
    offsets compared to what the driver assumed.

The first issue is fixed by building the FRWR page list from 4K pages
when the requested page size isn't supported (and scaling the PBL
allocation accordingly) and the second issue is fixed by accounting
for the potential difference between PAGE_SIZE and the HW's expected
4K page size (so a single page may end up populating multiple HW page
descriptors). Patch 2 depends on IRDMA_HW_PAGES_PER_PAGE, which is
added by patch 1.

Tested by running the same NFS/RDMA test that previously resulted
in SMMU errors on an arm64 system with a 64K kernel.

Jacob Moroni (2):
  RDMA/irdma: Fix FRWR logic for PAGE_SIZE > 4K
  RDMA/irdma: Fix paged PBLE and virtual AEQ for PAGE_SIZE > 4K

 drivers/infiniband/hw/irdma/ctrl.c  |  4 +++-
 drivers/infiniband/hw/irdma/defs.h  |  1 +
 drivers/infiniband/hw/irdma/hw.c    |  4 ++--
 drivers/infiniband/hw/irdma/utils.c | 22 ++++++++++--------
 drivers/infiniband/hw/irdma/verbs.c | 36 +++++++++++++++++++++++++++--
 5 files changed, 53 insertions(+), 14 deletions(-)


base-commit: c3e8e9451e6f1b69f685b75e0fbf14f3d0fb2539
-- 
2.56.0.218.g1ec904b173-goog


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2026-10-28 20:00 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-22 21:06 [PATCH rdma-next 0/2] RDMA/irdma: Fix FRWR and PBLE handling for PAGE_SIZE > 4K Jacob Moroni
2026-10-22 21:06 ` [PATCH rdma-next 1/2] RDMA/irdma: Fix FRWR logic " Jacob Moroni
2026-10-22 21:13   ` sashiko-bot
2026-10-28 19:59   ` Nikolova, Tatyana E
2026-10-22 21:06 ` [PATCH rdma-next 2/2] RDMA/irdma: Fix paged PBLE and virtual AEQ " Jacob Moroni
2026-10-22 21:12   ` sashiko-bot
2026-10-28 19:59   ` Nikolova, Tatyana E

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox