[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20200324060143.1569116-1-leon@kernel.org>
Date: Tue, 24 Mar 2020 08:01:38 +0200
From: Leon Romanovsky <leon@...nel.org>
To: Doug Ledford <dledford@...hat.com>,
Jason Gunthorpe <jgg@...lanox.com>
Cc: Leon Romanovsky <leonro@...lanox.com>, linux-rdma@...r.kernel.org,
Michael Guralnik <michaelgur@...lanox.com>,
netdev@...r.kernel.org, Saeed Mahameed <saeedm@...lanox.com>,
Yishai Hadas <yishaih@...lanox.com>
Subject: [PATCH rdma-next v1 0/5] Introduce dynamic UAR allocation mode
From: Leon Romanovsky <leonro@...lanox.com>
Changelog:
v1: * Added patch that moved mlx5_bfreg_info from global header to the mlx5_ib.h
* No other changes.
v0: * https://lore.kernel.org/linux-rdma/20200318124329.52111-1-leon@kernel.org
----------------------------------------------------------------------------------
>From Yishai,
This series exposes API to enable a dynamic allocation and management of a
UAR which now becomes to be a regular uobject.
Moving to that mode enables allocating a UAR only upon demand and drop the
redundant static allocation of UARs upon context creation.
In addition, it allows master and secondary processes that own the same command
FD to allocate and manage UARs according to their needs, this can’t be achieved
today.
As part of this option, QP & CQ creation flows were adapted to support this
dynamic UAR mode once asked by user space.
Once this mode is asked by mlx5 user space driver on a given context, it will
be mutual exclusive, means both the static and legacy dynamic modes for using
UARs will be blocked.
The legacy modes are supported for backward compatible reasons, looking
forward we expect this new mode to be the default.
Thanks
Leon Romanovsky (1):
IB/mlx5: Limit the scope of struct mlx5_bfreg_info to mlx5_ib
Yishai Hadas (4):
IB/mlx5: Expose UAR object and its alloc/destroy commands
IB/mlx5: Extend CQ creation to get uar page index from user space
IB/mlx5: Extend QP creation to get uar page index from user space
IB/mlx5: Move to fully dynamic UAR mode once user space supports it
drivers/infiniband/hw/mlx5/cq.c | 21 ++-
drivers/infiniband/hw/mlx5/main.c | 185 ++++++++++++++++++++--
drivers/infiniband/hw/mlx5/mlx5_ib.h | 20 +++
drivers/infiniband/hw/mlx5/qp.c | 33 ++--
include/linux/mlx5/driver.h | 17 --
include/rdma/uverbs_ioctl.h | 2 +-
include/uapi/rdma/mlx5-abi.h | 6 +
include/uapi/rdma/mlx5_user_ioctl_cmds.h | 18 +++
include/uapi/rdma/mlx5_user_ioctl_verbs.h | 5 +
9 files changed, 263 insertions(+), 44 deletions(-)
--
2.24.1
Powered by blists - more mailing lists