Linux RDMA and InfiniBand development
 help / color / mirror / Atom feed
From: Leon Romanovsky <leon@kernel.org>
To: Jacob Moroni <jmoroni@google.com>
Cc: tatyana.e.nikolova@intel.com, jgg@ziepe.ca, linux-rdma@vger.kernel.org
Subject: Re: [PATCH rdma-next v3 0/7] RDMA/irdma: Adopt robust udata
Date: Sun, 12 Jul 2026 11:32:29 +0300	[thread overview]
Message-ID: <20260712083229.GB33197@unreal> (raw)
In-Reply-To: <20260702170652.4159201-1-jmoroni@google.com>

On Thu, Jul 02, 2026 at 05:06:45PM +0000, Jacob Moroni wrote:
> This series brings irdma up to uverbs_robust_udata compliance.
> 
> The driver has been audited to confirm that:
> 
>   1. Methods which do not accept udata input perform an explicit
>      check for no (or zero value) input.
> 
>   2. Methods which do accept input perform the correct validation
>      to ensure that additional udata beyond the kernel's current
>      ABI definition is zero, and to enforce the required minimum
>      length.
> 
>   3. Methods which do not return udata responses use the proper
>      helper.
> 
> The irdma driver is backwards compatible with the legacy i40iw
> provider, so special care was taken to avoid breaking any legacy
> binaries, as there were some small differences in the ABI/semantics.
> 
> This has passed the rdma-unit-test suite using the normal irdma
> provider from upstream rdma-core.
> 
> NOTE: This series is based on a few irdma bug fix patches
>       which have not yet been merged:
> 
> - RDMA/irdma: Prevent user-triggered null deref on QP create
>   https://patchwork.kernel.org/project/linux-rdma/list/?series=1113053
>      
> - RDMA/irdma: Prevent premature deregistration of user ring MRs
>   https://patchwork.kernel.org/project/linux-rdma/list/?series=1113648
> 
> Changes in v3:
> * Add ib_no_udata_io helper to more easily handle the
>   common case of no input/no output ops.
> * Fixed regression in create_qp failure path caught by sashiko.
> * Rebased on top of previous posted irdma fixes.
> * Fixed an additional latent legacy compat bug in create_qp.
> * Added missing response buffer clearing for reg/rereg_user_mr.
> Changes in v2:
> * Fixed Sashiko findings:
>   - Moved ib_respond_empty_udata to beginning of most
>     methods to close gaps where it could previously
>     return 0 without calling ib_respond_empty_udata. This
>     also fixes issues where the ib_respond_empty_udata
>     call itself could fail, which may leave resources
>     in an inconsistent state (kernel believes object
>     is alive, but driver resources have been cleaned up).
>   - Moved input validation to beginning of modify_qp
>     methods to close gaps where the op could be invoked
>     with udata but without input checking.
>   - Fixed a QPN leak that could occur during QP create
>     by moving input validation earlier.
> 
> v2: https://lore.kernel.org/linux-rdma/20260629232532.2057423-1-jmoroni@google.com/
> v1: https://lore.kernel.org/linux-rdma/20260627025642.4064973-1-jmoroni@google.com/T/#t
> 
> Jacob Moroni (7):
>   RDMA/core: Add ib_no_udata_io() helper

I applied only first patch, rest needs to be resent.

Thanks

>   RDMA/irdma: Add checks for no udata
>   RDMA/irdma: Clear udata response buffers where necessary
>   RDMA/irdma: Use robust input copy helpers
>   RDMA/irdma: Use robust udata helper for QP creation
>   RDMA/irdma: Fix legacy i40iw compat check in create_qp
>   RDMA/irdma: Enable uverbs_robust_udata compliance flag
> 
>  drivers/infiniband/hw/irdma/verbs.c | 216 +++++++++++++++++++---------
>  include/rdma/uverbs_ioctl.h         |  20 +++
>  include/uapi/rdma/irdma-abi.h       |   1 +
>  3 files changed, 167 insertions(+), 70 deletions(-)
> 
> -- 
> 2.55.0.rc0.799.gd6f94ed593-goog
> 

      parent reply	other threads:[~2026-07-12  8:32 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-02 17:06 [PATCH rdma-next v3 0/7] RDMA/irdma: Adopt robust udata Jacob Moroni
2026-07-02 17:06 ` [PATCH rdma-next v3 1/7] RDMA/core: Add ib_no_udata_io() helper Jacob Moroni
2026-07-02 17:06 ` [PATCH rdma-next v3 2/7] RDMA/irdma: Add checks for no udata Jacob Moroni
2026-07-02 17:06 ` [PATCH rdma-next v3 3/7] RDMA/irdma: Clear udata response buffers where necessary Jacob Moroni
2026-07-02 17:06 ` [PATCH rdma-next v3 4/7] RDMA/irdma: Use robust input copy helpers Jacob Moroni
2026-07-02 17:06 ` [PATCH rdma-next v3 5/7] RDMA/irdma: Use robust udata helper for QP creation Jacob Moroni
2026-07-12  8:29   ` Leon Romanovsky
2026-07-02 17:06 ` [PATCH rdma-next v3 6/7] RDMA/irdma: Fix legacy i40iw compat check in create_qp Jacob Moroni
2026-07-02 17:06 ` [PATCH rdma-next v3 7/7] RDMA/irdma: Enable uverbs_robust_udata compliance flag Jacob Moroni
2026-07-12  8:31 ` (subset) [PATCH rdma-next v3 0/7] RDMA/irdma: Adopt robust udata Leon Romanovsky
2026-07-12  8:32 ` Leon Romanovsky [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260712083229.GB33197@unreal \
    --to=leon@kernel.org \
    --cc=jgg@ziepe.ca \
    --cc=jmoroni@google.com \
    --cc=linux-rdma@vger.kernel.org \
    --cc=tatyana.e.nikolova@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox