[PATCH v2 iproute2-next 0/4] Introduce FRMR pools

Chiara Meiohas
2026-03-30T17:32:22Z

From Michael:

This series adds support for managing Fast Registration Memory Region
(FRMR) pools in rdma tool, enabling users to monitor and configure FRMR
pool behavior.

FRMR pools are used to cache and reuse Fast Registration Memory Region
handles to improve performance by avoiding the overhead of repeated
memory region creation and destruction. This series introduces commands
to view FRMR pool statistics and configure pool parameters such as
aging time and pinned handle count.

The 'show' command allows users to display FRMR pools created on
devices, their properties, and usage statistics. Each pool is identified
by a unique key (hex-encoded properties) for easy reference in
subsequent operations.

The aging 'set' command allows users to modify the aging time parameter,
which controls how long unused FRMR handles remain in the pool before
being released.

The pinned 'set' command allows users to configure the number of pinned
handles in a pool. Pinned handles are exempt from aging and remain
permanently available for reuse, which is useful for workloads with
predictable memory region usage patterns.

Command usage and examples are included in the commits and man pages.

These patches are complimentary to the kernel patches:
https://lore.kernel.org/linux-rdma/20260226-frmr_pools-v4-0-95360b54f15e@nvidia.com/

--
v1->v2:
- frmr_pool_key: Replaced packed union with plain struct
- moved to colon-separated fields output format for pool keys instead of hex
strings
- Fix commented types of AGING_PERIOD and PINNED
- Add res_frmr_pools_idx_parse_cb stub

Michael Guralnik (4):
rdma: Update headers
rdma: Add resource FRMR pools show command
rdma: Add FRMR pools set aging command
rdma: Add FRMR pools set pinned command

man/man8/rdma-resource.8 | 51 +++-
rdma/Makefile | 2 +-
rdma/include/uapi/rdma/rdma_netlink.h | 22 ++
rdma/res-frmr-pools.c | 352 ++++++++++++++++++++++++++
rdma/res.c | 19 +-
rdma/res.h | 20 ++
6 files changed, 463 insertions(+), 3 deletions(-)
create mode 100644 rdma/res-frmr-pools.c

--
2.38.1