mbox series

[GIT,PULL] Please pull RDMA subsystem changes

Message ID 20200131151622.GA1392@ziepe.ca (mailing list archive)
State Superseded
Commit 8fdd4019bcb2d824c5ab45c6fc340293cfed843f
Headers show
Series [GIT,PULL] Please pull RDMA subsystem changes | expand

Pull-request

git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma.git tags/for-linus

Message

Jason Gunthorpe Jan. 31, 2020, 3:16 p.m. UTC
Hi Linus,

These are the proposed RDMA patches for 5.6.

A very quiet cycle with few notable changes. Mostly the usual list of one or
two patches to drivers changing something that isn't quite rc worthy. The
subsystem seems to be seeing a larger number of rework and cleanup style
patches right now, I feel that several vendors are prepping their drivers for
new silicon.

Thanks,
Jason

The following changes since commit b2dfc6765e45a3154800333234e4952b5412d792:

  net/rds: Use prefetch for On-Demand-Paging MR (2020-01-18 11:48:19 +0200)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma.git tags/for-linus

for you to fetch changes up to 8889f6fa35884d09f24734e10fea0c9ddcbc6429:

  RDMA/core: Make the entire API tree static (2020-01-30 16:28:52 -0400)

----------------------------------------------------------------
RDMA subsystem updates for 5.6

- Driver updates and cleanup for qedr, bnxt_re, hns, siw, mlx5, mlx4, rxe,
  i40iw

- Larger series doing cleanup and rework for hns and hfi1.

- Some general reworking of the CM code to make it a little more
  understandable

- Unify the different code paths connected to the uverbs FD scheme

- New UAPI ioctls conversions for get context and get async fd

- Trace points for CQ and CM portions of the RDMA stack

- mlx5 driver support for virtio-net formatted rings as RDMA raw ethernet QPs

- verbs support for setting the PCI-E relaxed ordering bit on DMA traffic
  connected to a MR

- A couple of bug fixes that came too late to make rc7

----------------------------------------------------------------
Aditya Pakki (1):
      RDMA/srpt: Remove unnecessary assertion in srpt_queue_response

Arnd Bergmann (1):
      IB/core: Fix build failure without hugepages

Artemy Kovalyov (2):
      IB/mlx5: Unify ODP MR code paths to allow extra flexibility
      RDMA/umem: Fix ib_umem_find_best_pgsz()

Avihai Horon (1):
      IB/mlx5: Expose RoCE accelerator counters

Bernard Metzler (1):
      RDMA/siw: Simplify QP representation

Chuck Lever (3):
      RDMA/cma: Add trace points in RDMA Connection Manager
      RDMA/core: Trace points for diagnosing completion queue issues
      RDMA/core: Add trace points to follow MR allocation

Danit Goldberg (2):
      RDMA/cm: Use RCU synchronization mechanism to protect cm_id_private xa_load()
      IB/mlx5: Return the administrative GUID if exists

Dillon Brock (1):
      IB/opa_vnic: Spelling correction of 'erorr' to 'error'

Eugene Crosser (1):
      RDMA/mlx4: Redo TX checksum offload in line with docs

Gal Pressman (4):
      RDMA/efa: Device definitions documentation updates
      RDMA/efa: Remove {} brackets from single statement if
      RDMA/efa: Remove unused ucontext parameter from efa_qp_user_mmap_entries_remove
      RDMA/efa: Mask access flags with the correct optional range

Grzegorz Andrejczuk (3):
      IB/hfi1: Move common receive IRQ code to function
      IB/hfi1: Decouple IRQ name from type
      IB/hfi1: Return void in packet receiving functions

Guoqing Jiang (1):
      RDMA/core: Remove err in iw_query_port

HÃ¥kon Bugge (2):
      RDMA/netlink: Do not always generate an ACK for some netlink operations
      IB/mlx4: Fix leak in id_map_find_del

Jack Morgenstein (1):
      IB/mlx4: Fix memory leak in add_gid error flow

Jason Gunthorpe (29):
      RDMA/core: Fix locking in ib_uverbs_event_read
      Merge branch 'mlx5_vdpa' into rdma.git for-next
      RDMA/uverbs: Remove needs_kfree_rcu from uverbs_obj_type_class
      RDMA/mlx5: Use RCU and direct refcounts to keep memory alive
      RDMA/core: Simplify destruction of FD uobjects
      RDMA/mlx5: Simplify devx async commands
      RDMA/core: Do not allow alloc_commit to fail
      RDMA/core: Make ib_ucq_object use ib_uevent_object
      RDMA/core: Do not erase the type of ib_cq.uobject
      RDMA/core: Do not erase the type of ib_qp.uobject
      RDMA/core: Do not erase the type of ib_srq.uobject
      RDMA/core: Do not erase the type of ib_wq.uobject
      RDMA/core: Simplify type usage for ib_uverbs_async_handler()
      RDMA/core: Remove the ufile arg from rdma_alloc_begin_uobject
      RDMA/core: Make ib_uverbs_async_event_file into a uobject
      RDMA/core: Use READ_ONCE for ib_ufile.async_file
      Merge branch 'mlx5-next' into rdma.git for-next
      RDMA/core: Add UVERBS_METHOD_ASYNC_EVENT_ALLOC
      RDMA/core: Remove ucontext_lock from the uverbs_destry_ufile_hw() path
      RDMA/uverbs: Add ioctl command to get a device context
      Merge tag 'rds-odp-for-5.5' into rdma.git for-next
      RDMA/core: Ensure that rdma_user_mmap_entry_remove() is a fence
      RDMA/cm: Add accessors for CM_REQ transport_type
      RDMA/cm: Use IBA functions for simple get/set acessors
      RDMA/cm: Use IBA functions for swapping get/set acessors
      RDMA/cm: Use IBA functions for simple structure members
      RDMA/cm: Use IBA functions for complex structure members
      RDMA/cm: Remove CM message structs
      RDMA/core: Make the entire API tree static

Jiaran Zhang (1):
      RDMA/hns: Add support for extended atomic in userspace

Jiewei Ke (1):
      RDMA/rxe: Fix error type of mmap_offset

Leon Romanovsky (4):
      RDMA/cm: Delete unused CM LAP functions
      RDMA/cm: Delete unused CM ARP functions
      net/mlx5: Add RoCE accelerator counters
      RDMA/cm: Add SET/GET implementations to hide IBA wire format

Lijun Ou (7):
      RDMA/hns: Remove unused function hns_roce_init_eq_table()
      RDMA/hns: Update the value of qp type
      RDMA/hns: Delete unnessary parameters in hns_roce_v2_qp_modify()
      RDMA/hns: Fix coding style issues
      RDMA/hns: Bugfix for posting a wqe with sge
      RDMA/hns: Add interfaces to get pf capabilities from firmware
      RDMA/hns: Get pf capabilities from firmware

Michael Guralnik (7):
      net/mlx5: Expose relaxed ordering bits
      RDMA/uverbs: Verify MR access flags
      RDMA/core: Add optional access flags range
      RDMA/efa: Allow passing of optional access flags for MR registration
      RDMA/uverbs: Add new relaxed ordering memory region access flag
      RDMA/core: Add the core support field to METHOD_GET_CONTEXT
      RDMA/mlx5: Set relaxed ordering when requested

Michael J. Ruhl (1):
      IB/hfi1: List all receive contexts from debugfs

Michal Kalderon (1):
      RDMA/qedr: Add kernel capability flags for dpm enabled mode

Mike Marciniszyn (8):
      IB/hfi1: Add accessor API routines to access context members
      IB/rdmavt: Correct comments in rdmavt_qp.h header
      IB/hfi1: Move chip specific functions to chip.c
      IB/hfi1: Add fast and slow handlers for receive context
      IB/hfi1: IB/hfi1: Add an API to handle special case drop
      IB/hfi1: Create API for auto activate
      IB/hfi1: Add software counter for ctxt0 seq drop
      IB/hfi1: Add RcvShortLengthErrCnt to hfi1stats

Nathan Chancellor (1):
      IB/hfi1: Fix logical condition in msix_request_irq

Parav Pandit (5):
      IB/mlx5: Do reverse sequence during device removal
      IB/core: Let IB core distribute cache update events
      IB/core: Cut down single member ib_cache structure
      IB/core: Rename event_handler_lock to qp_open_list_lock
      RDMA/cma: Fix unbalanced cm_id reference count during address resolve

Prabhath Sajeepa (1):
      IB/mlx5: Fix outstanding_pi index for GSI qps

Rao Shoaib (2):
      Introduce maximum WQE size to check limits
      RDMA/rxe: Compute the maximum sges and inline size based on the WQE size

Selvin Xavier (1):
      RDMA/bnxt_re: Report more number of completion vectors

Sergey Gorenko (1):
      IB/srp: Never use immediate data if it is disabled by a user

Weihang Li (1):
      RDMA/hns: Remove some redundant variables related to capabilities

Wenpeng Liang (2):
      RDMA/hns: Avoid printing address of mtt page
      RDMA/hns: Replace custom macros HNS_ROCE_ALIGN_UP

Xi Wang (1):
      RDMA/hns: Add support for reporting wc as software mode

Xiyu Yang (1):
      RDMA/i40iw: fix a potential NULL pointer dereference

Yishai Hadas (5):
      IB/core: Fix ODP get user pages flow
      IB/core: Fix ODP with IB_ACCESS_HUGETLB handling
      IB/mlx5: Extend caps stage to handle VAR capabilities
      IB/mlx5: Introduce VAR object and its alloc/destroy methods
      IB/mlx5: Add mmap support for VAR

Yixian Liu (1):
      RDMA/hns: Simplify the calculation and usage of wqe idx for post verbs

Yixing Liu (1):
      RDMA/hns: Remove redundant print information

zhengbin (5):
      RDMA/siw: use true,false for bool variable
      IB/hfi1: use true,false for bool variable
      IB/iser: use true,false for bool variable
      RDMA/mlx4: use true,false for bool variable
      RDMA/mlx5: use true,false for bool variable

 drivers/infiniband/core/Makefile                   |    9 +-
 drivers/infiniband/core/addr.c                     |    2 +-
 drivers/infiniband/core/cache.c                    |  151 +--
 drivers/infiniband/core/cm.c                       | 1000 ++++++++++----------
 drivers/infiniband/core/cm_msgs.h                  |  755 +--------------
 drivers/infiniband/core/cma.c                      |   90 +-
 drivers/infiniband/core/cma_trace.c                |   16 +
 drivers/infiniband/core/cma_trace.h                |  391 ++++++++
 drivers/infiniband/core/core_priv.h                |    3 +-
 drivers/infiniband/core/cq.c                       |   27 +-
 drivers/infiniband/core/device.c                   |   42 +-
 drivers/infiniband/core/ib_core_uverbs.c           |    2 +
 drivers/infiniband/core/nldev.c                    |    3 +-
 drivers/infiniband/core/rdma_core.c                |  235 ++---
 drivers/infiniband/core/rdma_core.h                |   45 +-
 drivers/infiniband/core/sa_query.c                 |    4 +-
 drivers/infiniband/core/trace.c                    |   14 +
 drivers/infiniband/core/umem.c                     |    9 +-
 drivers/infiniband/core/umem_odp.c                 |   22 +-
 drivers/infiniband/core/uverbs.h                   |   48 +-
 drivers/infiniband/core/uverbs_cmd.c               |  320 ++++---
 drivers/infiniband/core/uverbs_ioctl.c             |   45 +-
 drivers/infiniband/core/uverbs_main.c              |  301 ++----
 drivers/infiniband/core/uverbs_std_types.c         |   44 +-
 .../infiniband/core/uverbs_std_types_async_fd.c    |   52 +
 drivers/infiniband/core/uverbs_std_types_cq.c      |   19 +-
 drivers/infiniband/core/uverbs_std_types_device.c  |   38 +
 drivers/infiniband/core/uverbs_uapi.c              |    7 +-
 drivers/infiniband/core/verbs.c                    |   55 +-
 drivers/infiniband/hw/bnxt_re/main.c               |    2 +-
 drivers/infiniband/hw/efa/efa_admin_cmds_defs.h    |   37 +-
 drivers/infiniband/hw/efa/efa_verbs.c              |   15 +-
 drivers/infiniband/hw/hfi1/chip.c                  |  198 +++-
 drivers/infiniband/hw/hfi1/chip.h                  |    8 +
 drivers/infiniband/hw/hfi1/chip_registers.h        |    1 +
 drivers/infiniband/hw/hfi1/common.h                |    3 +
 drivers/infiniband/hw/hfi1/debugfs.c               |    2 +-
 drivers/infiniband/hw/hfi1/driver.c                |  237 ++---
 drivers/infiniband/hw/hfi1/file_ops.c              |   12 +-
 drivers/infiniband/hw/hfi1/hfi.h                   |  195 +++-
 drivers/infiniband/hw/hfi1/init.c                  |   87 +-
 drivers/infiniband/hw/hfi1/msix.c                  |  106 ++-
 drivers/infiniband/hw/hfi1/msix.h                  |    1 +
 drivers/infiniband/hw/hfi1/rc.c                    |    2 +-
 drivers/infiniband/hw/hfi1/trace_ctxts.h           |    2 +-
 drivers/infiniband/hw/hfi1/trace_rx.h              |   15 +-
 drivers/infiniband/hw/hfi1/vnic_main.c             |    2 +-
 drivers/infiniband/hw/hns/hns_roce_cq.c            |    2 +
 drivers/infiniband/hw/hns/hns_roce_device.h        |   44 +-
 drivers/infiniband/hw/hns/hns_roce_hw_v1.c         |   51 +-
 drivers/infiniband/hw/hns/hns_roce_hw_v2.c         |  874 +++++++++++------
 drivers/infiniband/hw/hns/hns_roce_hw_v2.h         |  159 +++-
 drivers/infiniband/hw/hns/hns_roce_main.c          |  106 ++-
 drivers/infiniband/hw/hns/hns_roce_mr.c            |    4 +-
 drivers/infiniband/hw/hns/hns_roce_qp.c            |   92 +-
 drivers/infiniband/hw/i40iw/i40iw_main.c           |    2 +
 drivers/infiniband/hw/mlx4/cm.c                    |   29 +-
 drivers/infiniband/hw/mlx4/cq.c                    |   18 +-
 drivers/infiniband/hw/mlx4/main.c                  |   20 +-
 drivers/infiniband/hw/mlx4/qp.c                    |    4 +-
 drivers/infiniband/hw/mlx5/devx.c                  |  159 ++--
 drivers/infiniband/hw/mlx5/gsi.c                   |    3 +-
 drivers/infiniband/hw/mlx5/ib_virt.c               |   28 +-
 drivers/infiniband/hw/mlx5/main.c                  |  224 ++++-
 drivers/infiniband/hw/mlx5/mem.c                   |   25 -
 drivers/infiniband/hw/mlx5/mlx5_ib.h               |   38 +-
 drivers/infiniband/hw/mlx5/mr.c                    |   81 +-
 drivers/infiniband/hw/mlx5/odp.c                   |   44 +-
 drivers/infiniband/hw/mlx5/qp.c                    |    4 +-
 drivers/infiniband/hw/qedr/verbs.c                 |   13 +-
 drivers/infiniband/sw/rdmavt/rc.c                  |    9 +-
 drivers/infiniband/sw/rxe/rxe_param.h              |    7 +-
 drivers/infiniband/sw/rxe/rxe_qp.c                 |   18 +-
 drivers/infiniband/sw/rxe/rxe_verbs.h              |    2 +-
 drivers/infiniband/sw/siw/siw.h                    |   26 +-
 drivers/infiniband/sw/siw/siw_cm.c                 |    2 +-
 drivers/infiniband/sw/siw/siw_cq.c                 |    2 +-
 drivers/infiniband/sw/siw/siw_main.c               |    2 +-
 drivers/infiniband/sw/siw/siw_qp.c                 |   13 +-
 drivers/infiniband/sw/siw/siw_qp_rx.c              |    6 +-
 drivers/infiniband/sw/siw/siw_qp_tx.c              |    2 +-
 drivers/infiniband/sw/siw/siw_verbs.c              |   61 +-
 drivers/infiniband/ulp/iser/iser_memory.c          |    2 +-
 drivers/infiniband/ulp/iser/iser_verbs.c           |    2 +-
 drivers/infiniband/ulp/opa_vnic/opa_vnic_encap.h   |    2 +-
 drivers/infiniband/ulp/srp/ib_srp.c                |    3 +-
 drivers/infiniband/ulp/srpt/ib_srpt.c              |    2 -
 include/linux/mlx4/cq.h                            |    5 +
 include/linux/mlx5/driver.h                        |    5 +
 include/linux/mlx5/mlx5_ifc.h                      |   24 +-
 include/rdma/ib_cm.h                               |   34 -
 include/rdma/ib_verbs.h                            |   42 +-
 include/rdma/iba.h                                 |  146 +++
 include/rdma/ibta_vol1_c12.h                       |  213 +++++
 include/rdma/rdmavt_qp.h                           |   22 +-
 include/rdma/uverbs_named_ioctl.h                  |    6 +-
 include/rdma/uverbs_std_types.h                    |   13 +-
 include/rdma/uverbs_types.h                        |   34 +-
 include/trace/events/rdma_core.h                   |  394 ++++++++
 include/uapi/rdma/ib_user_ioctl_cmds.h             |   15 +
 include/uapi/rdma/ib_user_ioctl_verbs.h            |   12 +
 include/uapi/rdma/mlx5_user_ioctl_cmds.h           |   17 +
 include/uapi/rdma/qedr-abi.h                       |   18 +-
 103 files changed, 4659 insertions(+), 3200 deletions(-)
(diffstat from tag for-linus-merged)

Comments

pr-tracker-bot@kernel.org Jan. 31, 2020, 11:10 p.m. UTC | #1
The pull request you sent on Fri, 31 Jan 2020 11:16:22 -0400:

> git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma.git tags/for-linus

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/8fdd4019bcb2d824c5ab45c6fc340293cfed843f

Thank you!