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
>
prev 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