[PATCH rdma-next 0/2] RDMA/irdma: Preserve fast-registration IOVAs and simplify SQ posting

Leon Romanovsky posted 2 patches 3 weeks, 1 day ago
drivers/infiniband/hw/irdma/ctrl.c   | 23 +++++++----------------
drivers/infiniband/hw/irdma/hw.c     |  2 --
drivers/infiniband/hw/irdma/protos.h |  3 +--
drivers/infiniband/hw/irdma/type.h   |  7 ++-----
drivers/infiniband/hw/irdma/verbs.c  |  7 +++----
5 files changed, 13 insertions(+), 29 deletions(-)
[PATCH rdma-next 0/2] RDMA/irdma: Preserve fast-registration IOVAs and simplify SQ posting
Posted by Leon Romanovsky 3 weeks, 1 day ago
Fast-registration IOVAs are u64 hardware values, but irdma passes them
through pointer-sized types. This truncates the upper bits on 32-bit
kernels and can program the wrong WQE base address.

Preserve the full IOVA throughout fast registration. Also remove post_sq
controls from QP flush and fast registration because every current call
path requests the corresponding send queue to be posted.

Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
---
Leon Romanovsky (2):
      RDMA/irdma: Preserve fast-registration IOVA on 32-bit
      RDMA/irdma: Remove unused post_sq arguments

 drivers/infiniband/hw/irdma/ctrl.c   | 23 +++++++----------------
 drivers/infiniband/hw/irdma/hw.c     |  2 --
 drivers/infiniband/hw/irdma/protos.h |  3 +--
 drivers/infiniband/hw/irdma/type.h   |  7 ++-----
 drivers/infiniband/hw/irdma/verbs.c  |  7 +++----
 5 files changed, 13 insertions(+), 29 deletions(-)
---
base-commit: 6ea2157ce8c7497a2862bd3579a987afe6b129ed
change-id: 20260903-64-bit-iova-is-silently-truncated-to-f29be6986041

Best regards,
--  
Leon Romanovsky <leonro@nvidia.com>
Re: [PATCH rdma-next 0/2] RDMA/irdma: Preserve fast-registration IOVAs and simplify SQ posting
Posted by Leon Romanovsky 2 weeks, 5 days ago
On Thu, 03 Sep 2026 14:38:58 +0300, Leon Romanovsky wrote:
> Fast-registration IOVAs are u64 hardware values, but irdma passes them
> through pointer-sized types. This truncates the upper bits on 32-bit
> kernels and can program the wrong WQE base address.
> 
> Preserve the full IOVA throughout fast registration. Also remove post_sq
> controls from QP flush and fast registration because every current call
> path requests the corresponding send queue to be posted.
> 
> [...]

Applied, thanks!

[1/2] RDMA/irdma: Preserve fast-registration IOVA on 32-bit
      https://git.kernel.org/rdma/rdma/c/c470050f2a7a77
[2/2] RDMA/irdma: Remove unused post_sq arguments
      https://git.kernel.org/rdma/rdma/c/4a93466061d38f

Best regards,
-- 
Leon Romanovsky <leonro@nvidia.com>
Re: [PATCH rdma-next 0/2] RDMA/irdma: Preserve fast-registration IOVAs and simplify SQ posting
Posted by Jacob Moroni 3 weeks, 1 day ago
Reviewed-by: Jacob Moroni <jmoroni@google.com>


On Thu, Sep 3, 2026 at 7:39 AM Leon Romanovsky <leon@kernel.org> wrote:
>
> Fast-registration IOVAs are u64 hardware values, but irdma passes them
> through pointer-sized types. This truncates the upper bits on 32-bit
> kernels and can program the wrong WQE base address.
>
> Preserve the full IOVA throughout fast registration. Also remove post_sq
> controls from QP flush and fast registration because every current call
> path requests the corresponding send queue to be posted.
>
> Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
> ---
> Leon Romanovsky (2):
>       RDMA/irdma: Preserve fast-registration IOVA on 32-bit
>       RDMA/irdma: Remove unused post_sq arguments
>
>  drivers/infiniband/hw/irdma/ctrl.c   | 23 +++++++----------------
>  drivers/infiniband/hw/irdma/hw.c     |  2 --
>  drivers/infiniband/hw/irdma/protos.h |  3 +--
>  drivers/infiniband/hw/irdma/type.h   |  7 ++-----
>  drivers/infiniband/hw/irdma/verbs.c  |  7 +++----
>  5 files changed, 13 insertions(+), 29 deletions(-)
> ---
> base-commit: 6ea2157ce8c7497a2862bd3579a987afe6b129ed
> change-id: 20260903-64-bit-iova-is-silently-truncated-to-f29be6986041
>
> Best regards,
> --
> Leon Romanovsky <leonro@nvidia.com>
>
>