From: Michael Margolin <mrgolin@amazon.com>
To: <jgg@nvidia.com>, <leon@kernel.org>, <linux-rdma@vger.kernel.org>
Cc: <sleybo@amazon.com>, <matua@amazon.com>, <gal.pressman@linux.dev>
Subject: [PATCH for-next v8 0/5] Introduce Completion Counters
Date: Tue, 7 Jul 2026 20:34:22 +0000 [thread overview]
Message-ID: <20260707203427.6923-1-mrgolin@amazon.com> (raw)
Add core infrastructure for Completion Counters, a light-weight
alternative to polling CQ for tracking operation completions. The
related rdma-core support is linked in [1].
Define the UVERBS_OBJECT_COMP_CNTR ioctl object with create, destroy,
modify and read methods for both success and error counters. Add a QP
attach method on the QP object to associate a completion counter with a
queue pair.
Add EFA Completion Counters support as first implementer.
[1] https://github.com/linux-rdma/rdma-core/pull/1701
---
Changes in v8:
- Added device event counter detach support and its use in attach error
handling
- Prevented completion counters attach to wrapper QPs
- Added max completion counters report in nldev
- Link to v7: https://lore.kernel.org/all/20260701103448.17895-1-mrgolin@amazon.com/
Changes in v7:
- Rebased on latest rdma for-next
- Link to v6: https://lore.kernel.org/all/20260604114627.6086-1-mrgolin@amazon.com/
Changes in v6:
- Moved to using ib_umem_get_attr util
- Resolved additional Sashiko comments
- Link to v5: https://lore.kernel.org/all/20260526090712.17575-1-mrgolin@amazon.com/
Changes in v5:
- Fixed Sashiko findings
- Minor naming improvements
- Link to v4: https://lore.kernel.org/all/20260511223721.18365-1-mrgolin@amazon.com/
Changes in v4:
- Replaced inc and set commands by a single modify command
- Changed to passing buffers as EFA specific attributes using desc
struct aligned with the suggested common method of passing and
consuming umem in RDMA drivers
- Link to v2: https://lore.kernel.org/all/20260416212327.18191-1-mrgolin@amazon.com/
Changes in v3:
- Skipped this version because of a wrong patch list
Changes in v2:
- United set, inc and read flows for successful and error completions
counters
- Added comp_cntr usage count
- Minor cleanups
- Link to v1: https://lore.kernel.org/all/20260407115424.13359-1-mrgolin@amazon.com/
Michael Margolin (5):
RDMA/core: Add Completion Counters support
RDMA/core: Prevent destroying in-use completion counters
RDMA/core: Add Completion Counters to resource tracking
RDMA/efa: Update device interface
RDMA/efa: Add Completion Counters support
drivers/infiniband/core/Makefile | 1 +
drivers/infiniband/core/device.c | 6 +
drivers/infiniband/core/nldev.c | 4 +
drivers/infiniband/core/rdma_core.h | 1 +
drivers/infiniband/core/restrack.c | 2 +
drivers/infiniband/core/uverbs_cmd.c | 1 +
.../core/uverbs_std_types_comp_cntr.c | 182 +++++++++++++++
drivers/infiniband/core/uverbs_std_types_qp.c | 67 +++++-
drivers/infiniband/core/uverbs_uapi.c | 1 +
drivers/infiniband/core/verbs.c | 8 +
drivers/infiniband/hw/efa/efa.h | 15 ++
.../infiniband/hw/efa/efa_admin_cmds_defs.h | 186 +++++++++++++++-
drivers/infiniband/hw/efa/efa_com_cmd.c | 134 +++++++++++
drivers/infiniband/hw/efa/efa_com_cmd.h | 44 ++++
drivers/infiniband/hw/efa/efa_io_defs.h | 20 +-
drivers/infiniband/hw/efa/efa_main.c | 5 +
drivers/infiniband/hw/efa/efa_verbs.c | 209 ++++++++++++++++++
include/rdma/ib_verbs.h | 44 ++++
include/rdma/restrack.h | 4 +
include/uapi/rdma/efa-abi.h | 6 +
include/uapi/rdma/ib_user_ioctl_cmds.h | 38 ++++
include/uapi/rdma/ib_user_ioctl_verbs.h | 19 ++
include/uapi/rdma/ib_user_verbs.h | 2 +-
23 files changed, 993 insertions(+), 6 deletions(-)
create mode 100644 drivers/infiniband/core/uverbs_std_types_comp_cntr.c
--
2.47.3
next reply other threads:[~2026-07-07 20:34 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-07 20:34 Michael Margolin [this message]
2026-07-07 20:34 ` [PATCH for-next v8 1/5] RDMA/core: Add Completion Counters support Michael Margolin
2026-07-07 20:34 ` [PATCH for-next v8 2/5] RDMA/core: Prevent destroying in-use completion counters Michael Margolin
2026-07-07 20:34 ` [PATCH for-next v8 3/5] RDMA/core: Add Completion Counters to resource tracking Michael Margolin
2026-07-07 20:34 ` [PATCH for-next v8 4/5] RDMA/efa: Update device interface Michael Margolin
2026-07-07 20:34 ` [PATCH for-next v8 5/5] RDMA/efa: Add Completion Counters support Michael Margolin
2026-07-08 12:36 ` [PATCH for-next v8 0/5] Introduce Completion Counters Michael Margolin
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=20260707203427.6923-1-mrgolin@amazon.com \
--to=mrgolin@amazon.com \
--cc=gal.pressman@linux.dev \
--cc=jgg@nvidia.com \
--cc=leon@kernel.org \
--cc=linux-rdma@vger.kernel.org \
--cc=matua@amazon.com \
--cc=sleybo@amazon.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.