On Thu, Sep 01, 2022 at 11:20:52AM -0300, Jason Gunthorpe wrote: > This series adds support for DMABUF when creating a devx umem. devx umems > are quite similar to MR's execpt they cannot be revoked, so this uses the > dmabuf pinned memory flow. Several mlx5dv flows require umem and cannot > work with MR. > > The intended use case is primarily for P2P transfers using dmabuf as a > handle to the underlying PCI BAR memory from the exporter. When a PCI > switch is present the P2P transfers can bypass the host bridge completely > and go directly through the switch. ATS allows this bypass to function in > more cases as translated TLPs issued after an ATS query allows the request > redirect setting to be bypassed in the switch. > > Have mlx5 automatically use ATS in places where it makes sense. > > Jason Gunthorpe (4): > net/mlx5: Add IFC bits for mkey ATS > RDMA/core: Add UVERBS_ATTR_RAW_FD > RDMA/mlx5: Add support for dmabuf to devx umem > RDMA/mlx5: Enable ATS support for MRs and umems > > drivers/infiniband/core/uverbs_ioctl.c | 8 ++++ > drivers/infiniband/hw/mlx5/devx.c | 55 +++++++++++++++++------- > drivers/infiniband/hw/mlx5/mlx5_ib.h | 36 ++++++++++++++++ > drivers/infiniband/hw/mlx5/mr.c | 5 ++- > include/linux/mlx5/mlx5_ifc.h | 11 +++-- > include/rdma/uverbs_ioctl.h | 13 ++++++ > include/uapi/rdma/mlx5_user_ioctl_cmds.h | 1 + > 7 files changed, 109 insertions(+), 20 deletions(-) Applied to for-next, thanks Jason