[GIT PULL] Please pull RDMA subsystem changes
From: Jason Gunthorpe
Date: Wed Jun 30 2021 - 21:30:47 EST
Hi Linus,
These are the proposed RDMA patches for 5.14.
This PR has a very huge diffstat due to finally merging the
replacement Intel RDMA driver. I first heard about this project at LPC
2018, which means it took about three years to do this (and at least
10 postings). The new driver is in many ways a rewrite of the old
driver and continues to support the old hardware but is now structured
to support the new Intel HW as well. Normally a rip and replace
shouldn't be done, but Intel believed that this was necessary and have
been shipping it already for several years out of tree. There will be
some followup patches for this next cycle(s) as several difficult
features were not included. Hopefully the several weeks in linux-next
cleaned out most of the static checker detections.
Otherwise the rest of the PR is fairly typical for RDMA, cleanups and
driver changes with HNS leading the pack this time.
Thanks,
Jason
The following changes since commit 13311e74253fe64329390df80bed3f07314ddd61:
Linux 5.13-rc7 (2021-06-20 15:03:15 -0700)
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 3d8287544223a3d2f37981c1f9ffd94d0b5e9ffc:
RDMA/core: Always release restrack object (2021-06-29 19:57:18 -0300)
----------------------------------------------------------------
RDMA v5.14 merge window Pull Request
This PR contains a replacement driver for Intel iWarp hardware. This new
driver supports the old ethernet hardware and also newer chips that can do
ROCE. Otherwise this contains the typical mix of patches:
- Driver updates and cleanups for bnxt_re, cxgb4, mlx4, and mlx5
- Many static checker driven code clean ups, including a wide refcount_t
conversion
- Several series for the hns driver, more HIP09 HW capabilities, migration
to new HW register manipulators, and code cleanups
- Minor fixes and improvements in srp, rts, and cm
- Improvements throughout for sysfs related code to use DEVICE_ATTR_*,
make the ib_port sysfs first-class, and overall use sysfs APIs properly
- Intel's new irdma driver replacing i40iw
- rxe general clean ups and Memory Window support
----------------------------------------------------------------
Aharon Landau (2):
RDMA/mlx5: Refactor get_ts_format functions to simplify code
RDMA/mlx5: Support real-time timestamp directly from the device
Anand Khoje (2):
IB/core: Removed port validity check from ib_get_cached_subnet_prefix
IB/core: Shuffle locks in ib_port_data to save memory
Avihai Horon (1):
RDMA/mlx5: Enable Relaxed Ordering by default for kernel ULPs
Baokun Li (1):
RDMA/irdma: Use list_move instead of list_del/list_add
Bart Van Assche (5):
IB/hfi1: Move a function from a header file into a .c file
RDMA/srp: Add more structure size checks
RDMA/srp: Apply the __packed attribute to members instead of structures
RDMA/srp: Fix a recently introduced memory leak
RDMA/srp: Make struct scsi_cmnd and struct srp_request adjacent
Bob Pearson (20):
RDMA/rxe: Add a type flag to rxe_queue structs
RDMA/rxe: Protect user space index loads/stores
RDMA/rxe: Protext kernel index from user space
RDMA/rxe: Fix qp reference counting for atomic ops
RDMA/rxe: Add bind MW fields to rxe_send_wr
RDMA/rxe: Return errors for add index and key
RDMA/rxe: Enable MW object pool
RDMA/rxe: Add ib_alloc_mw and ib_dealloc_mw verbs
RDMA/rxe: Replace WR_REG_MASK by WR_LOCAL_OP_MASK
RDMA/rxe: Move local ops to subroutine
RDMA/rxe: Add support for bind MW work requests
RDMA/rxe: Implement invalidate MW operations
RDMA/rxe: Implement memory access through MWs
RDMA/rxe: Disallow MR dereg and invalidate when bound
RDMA/rxe: Fix useless copy in send_atomic_ack
RDMA/rxe: Fix redundant call to ip_send_check
RDMA/rxe: Fix extra copies in build_rdma_network_hdr
RDMA/rxe: Fix over copying in get_srq_wqe
RDMA/rxe: Fix extra copy in prepare_ack_packet
RDMA/rxe: Fix redundant skb_put_zero
Colin Ian King (5):
RDMA/irdma: Fix issues with u8 left shift operation
RDMA/irdma: remove extraneous indentation on a statement
RDMA/irdma: remove redundant initialization of variable val
RDMA/irdma: Fix spelling mistake "Allocal" -> "Allocate"
RDMA/bnxt_re: Fix uninitialized struct bit field rsvd1
Dan Carpenter (1):
RDMA/rxe: Missing unlock on error in get_srq_wqe()
Devesh Sharma (3):
RDMA/bnxt_re: Enable global atomic ops if platform supports
RDMA/bnxt_re: Update maintainers list
RDMA/bnxt_re: Update ABI to pass wqe-mode to user space
Dima Stepanov (1):
RDMA/rtrs: Use strscpy instead of strlcpy
Gerd Rausch (1):
RDMA/cma: Fix rdma_resolve_route() memory leak
Gioh Kim (7):
RDMA/rtrs-clt: Remove MAX_SESS_QUEUE_DEPTH from rtrs_send_sess_info
RDMA/rtrs: Change MAX_SESS_QUEUE_DEPTH
RDMA/rtrs: Define MIN_CHUNK_SIZE
RDMA/rtrs: Do not reset hb_missed_max after re-connection
RDMA/rtrs-srv: Duplicated session name is not allowed
RDMA/rtrs-srv: Fix memory leak of unfreed rtrs_srv_stats object
RDMA/rtrs-clt: Fix memory leak of not-freed sess->stats and stats->pcpu_stats
Guenter Roeck (1):
RDMA/bnxt_re: Drop unnecessary NULL checks after container_of
Guoqing Jiang (7):
RDMA/rtrs-srv: Kill reject_w_econnreset label
RDMA/rtrs-srv: Clean up the code in __rtrs_srv_change_state
RDMA/rtrs-clt: Kill rtrs_clt_{start,stop}_hb
RDMA/rtrs-clt: Kill rtrs_clt_disconnect_from_sysfs
RDMA/rtrs-srv: Kill __rtrs_srv_change_state
RDMA/rtrs-clt: Remove redundant 'break'
RDMA/rtrs: Rename cq_size/queue_size to cq_num/queue_num
Håkon Bugge (5):
IB/core: Only update PKEY and GID caches on respective events
RDMA/cma: Remove unnecessary INIT->INIT transition
RDMA/cma: Protect RMW with qp_mutex
RDMA/cma: Fix incorrect Packet Lifetime calculation
RDMA/core/sa_query: Remove unused argument
Ira Weiny (2):
RDMA/irdma: Remove use of kmap()
RDMA/hfi1: Remove use of kmap()
Jack Wang (11):
RDMA/rtrs-srv: convert scnprintf to sysfs_emit
RDMA/rtrs-srv: Fix memory leak when having multiple sessions
RDMA/rtrs: Avoid Wtautological-constant-out-of-range-compare
RDMA/rtrs-srv: Set minimal max_send_wr and max_recv_wr
RDMA/rtrs-clt: Use minimal max_send_sge when create qp
RDMA/rtrs: Check device max_qp_wr limit when create QP
RDMA/rtrs: Introduce head/tail wr
RDMA/rtrs-clt: Write path fast memory registration
RDMA/rtrs_clt: Alloc less memory with write path fast memory registration
RDMA/rtrs-clt: Raise MAX_SEGMENTS
rnbd/rtrs-clt: Query and use max_segments from rtrs-clt.
Jason Gunthorpe (24):
IB/cm: Pair cm_alloc_response_msg() with a cm_free_response_msg()
IB/cm: Split cm_alloc_msg()
IB/cm: Call the correct message free functions in cm_send_handler()
IB/cm: Tidy remaining cm_msg free paths
Merge branch 'irdma' into rdma.git for-next
RDMA/core: Remove refcount from struct ib_mad_snoop_private
IB/cm: Remove dgid from the cm_id_priv av
RDMA: Split the alloc_hw_stats() ops to port and device variants
RDMA/core: Replace the ib_port_data hw_stats pointers with a ib_port pointer
RDMA/core: Split port and device counter sysfs attributes
RDMA/core: Split gid_attrs related sysfs from add_port()
RDMA/core: Simplify how the gid_attrs sysfs is created
RDMA/core: Simplify how the port sysfs is created
RDMA/core: Create the device hw_counters through the normal groups mechanism
RDMA/core: Remove the kobject_uevent() NOP
RDMA/core: Expose the ib port sysfs attribute machinery
RDMA/cm: Use an attribute_group on the ib_port_attribute intead of kobj's
RDMA/qib: Use attributes for the port sysfs
RDMA/hfi1: Use attributes for the port sysfs
RDMA: Change ops->init_port to ops->port_groups
RDMA/core: Allow port_groups to be used with namespaces
RDMA: Remove rdma_set_device_sysfs_group()
Merge tag 'v5.13-rc7' into rdma.git for-next
Merge branch 'mlx5_realtime_ts' into rdma.git for-next
Jiapeng Chong (1):
RDMA/cxgb4: Fix missing error code in create_qp()
Kamal Heib (3):
RDMA/rxe: Fix failure during driver load
RDMA/irdma: Fix return error sign from irdma_modify_qp
RDMA/irdma: Use the queried port attributes
Kees Cook (2):
IB/mlx4: Avoid field-overflowing memcpy()
RDMA/core: Use flexible array for mad data
Lang Cheng (13):
RDMA/hns: Remove unused parameter udata
RDMA/mlx4: Remove unused parameter udata
RDMA/mlx5: Remove unused parameter udata
RDMA/rxe: Remove unused parameter udata
RDMA/hns: Rename CMDQ head/tail pointer to PI/CI
RDMA/hns: Remove Receive Queue of CMDQ
RDMA/hns: Remove unused CMDQ member
RDMA/hns: Add hr_reg_write_bool()
RDMA/hns: Use new interface to modify QP context
RDMA/hns: Use new interface to get CQE fields
RDMA/hns: Force rewrite inline flag of WQE
RDMA/hns: Fix spelling mistakes of original
RDMA/hns: Add vendor_err info to error WC
Leon Romanovsky (6):
RDMA/core: Remove never used ib_modify_wq function call
RDMA/core: Sanitize WQ state received from the userspace
RDMA/mlx5: Don't add slave port to unaffiliated list
RDMA: Fix kernel-doc warnings about wrong comment
RDMA/mlx5: Don't access NULL-cleared mpi pointer
RDMA/core: Always release restrack object
Maor Gottlieb (1):
RDMA/mlx5: Take qp type from mlx5_ib_qp
Mark Zhang (4):
Revert "IB/cm: Mark stale CM id's whenever the mad agent was unregistered"
IB/cm: Simplify ib_cancel_mad() and ib_modify_mad() calls
IB/cm: Improve the calling of cm_init_av_for_lap and cm_init_av_by_path
IB/cm: Protect cm_dev, cm_ports and mad_agent with kref and lock
Max Gurtovoy (2):
IB/isert: set rdma cm afonly flag
IB/isert: Align target max I/O size to initiator size
Md Haris Iqbal (5):
RDMA/rtrs-srv: Add error messages for cases when failing RDMA connection
RDMA/rtrs-clt: Check state of the rtrs_clt_sess before reading its stats
RDMA/rtrs-srv: Replace atomic_t with percpu_ref for ids_inflight
RDMA/rtrs-clt: Check if the queue_depth has changed during a reconnection
RDMA/rtrs: RDMA_RXE requires more number of WR
Michael J. Ruhl (1):
RDMA/irdma: Add dynamic tracing for CM
Mustafa Ismail (13):
RDMA/irdma: Register auxiliary driver and implement private channel OPs
RDMA/irdma: Implement device initialization definitions
RDMA/irdma: Implement HW Admin Queue OPs
RDMA/irdma: Add HMC backing store setup functions
RDMA/irdma: Add privileged UDA queue implementation
RDMA/irdma: Add QoS definitions
RDMA/irdma: Add connection manager
RDMA/irdma: Add PBLE resource manager
RDMA/irdma: Implement device supported verb APIs
RDMA/irdma: Add RoCEv2 UD OP support
RDMA/irdma: Add user/kernel shared libraries
RDMA/irdma: Add miscellaneous utility definitions
RDMA/irdma: Add ABI definitions
Selvin Xavier (1):
MAINTAINERS: Update Broadcom RDMA maintainers
Sergey Gorenko (2):
RDMA/mlx5: Support SQD2RTS for modify QP
RDMA/mlx5: Add SQD2RTS bit to the alloc ucontext response
Shaokun Zhang (1):
IB/hfi1: Remove the repeated declaration
Shiraz Saleem (7):
RDMA/irdma: Add irdma Kconfig/Makefile and remove i40iw
RDMA/irdma: Update MAINTAINERS file
RDMA/irdma: Use list_last_entry/list_first_entry
RDMA/irdma: Store PBL info address a pointer type
RDMA/irdma: Check return value from ib_umem_find_best_pgsz
RDMA/irdma: Check contents of user-space irdma_mem_reg_req object
RDMA/irdma: Fix potential overflow expression in irdma_prm_get_pbles
Tian Tao (1):
RDMA/cxgb4: Remove useless assignments
Wan Jiabing (1):
RDMA: Remove unnecessary struct declaration
Weihang Li (14):
RDMA/hns: Use refcount_t APIs for HEM
RDMA/core: Use refcount_t instead of atomic_t on refcount of iwcm_id_private
RDMA/core: Use refcount_t instead of atomic_t on refcount of iwpm_admin_data
RDMA/core: Use refcount_t instead of atomic_t on refcount of mcast_member
RDMA/core: Use refcount_t instead of atomic_t on refcount of mcast_port
RDMA/hns: Use refcount_t instead of atomic_t for CQ reference counting
RDMA/hns: Use refcount_t instead of atomic_t for SRQ reference counting
RDMA/hns: Use refcount_t instead of atomic_t for QP reference counting
RDMA/cxgb4: Use refcount_t instead of atomic_t for reference counting
RDMA/ipoib: Use refcount_t instead of atomic_t for reference counting
RDMA/core: Use refcount_t instead of atomic_t on refcount of ib_uverbs_device
RDMA/hns: Do not use !! for values that are already bool when calling hr_reg_write()
RDMA/hns: Add a check to ensure integer mtu is positive
RDMA/hns: Fix incorrect vlan enable bit in QPC
Wenpeng Liang (2):
RDMA/core: Fix incorrect print format specifier
RDMA/hns: Encapsulate flushing CQE as a function
Xi Wang (10):
RDMA/hns: Refactor extend link table allocation
RDMA/hns: Optimize the base address table config for MTR
RDMA/hns: Refactor root BT allocation for MTR
RDMA/hns: Fix wrong timer context buffer page size
RDMA/hns: Clean the hardware related code for HEM
RDMA/hns: Refactor capability configuration flow of VF
RDMA/hns: Support getting max QP number from firmware
RDMA/hns: Clear extended doorbell info before using
RDMA/hns: Clean SRQC structure definition
RDMA/hns: Clean definitions of EQC structure
Xiao Yang (1):
RDMA/rxe: Don't overwrite errno from ib_umem_get()
Xiaofei Tan (1):
RDMA/ucma: Cleanup to reduce duplicate code
Yang Li (2):
RDMA/mlx5: Remove redundant assignment to ret
IB/srpt: Remove redundant assignment to ret
Yangyang Li (9):
RDMA/hns: Remove the unused hns_roce_bitmap_alloc_range function
RDMA/hns: Remove the unused hns_roce_bitmap_free_range function
RDMA/hns: Remove unused RR mechanism
RDMA/hns: Use IDA interface to manage mtpt index
RDMA/hns: Use IDA interface to manage pd index
RDMA/hns: Use IDA interface to manage xrcd index
RDMA/hns: Add member assignments for qp_init_attr
RDMA/hns: Delete unnecessary branch of hns_roce_v2_query_qp
RDMA/hns: Modify function return value type
Yixian Liu (1):
RDMA/hns: Remove the condition of light load for posting DWQE
Yixing Liu (7):
RDMA/hns: Use new interface to write CQ context.
RDMA/hns: Use new interface to write FRMR fields
RDMA/hns: Use new interface to write DB related fields
RDMA/hns: Fix uninitialized variable
RDMA/hns: Fix some print issues
RDMA/hns: Simplify the judgment in hns_roce_v2_post_send()
RDMA/hns: Add window selection field of congestion control
YueHaibing (3):
IB/ipoib: Use DEVICE_ATTR_*() macros
RDMA/core: Use the DEVICE_ATTR_RO macro
RDMA/srp: Use DEVICE_ATTR_*() macros
Zhen Lei (1):
IB/hfi1: Delete an unneeded bool conversion
Documentation/ABI/stable/sysfs-class-infiniband | 20 -
MAINTAINERS | 20 +-
drivers/block/rnbd/rnbd-clt.c | 5 +-
drivers/block/rnbd/rnbd-clt.h | 5 +-
drivers/infiniband/Kconfig | 2 +-
drivers/infiniband/core/cache.c | 40 +-
drivers/infiniband/core/cm.c | 863 ++-
drivers/infiniband/core/cma.c | 48 +-
drivers/infiniband/core/core_priv.h | 15 +-
drivers/infiniband/core/counters.c | 4 +-
drivers/infiniband/core/device.c | 41 +-
drivers/infiniband/core/iwcm.c | 9 +-
drivers/infiniband/core/iwcm.h | 2 +-
drivers/infiniband/core/iwpm_msg.c | 22 +-
drivers/infiniband/core/iwpm_util.c | 16 +-
drivers/infiniband/core/iwpm_util.h | 4 +-
drivers/infiniband/core/mad.c | 27 +-
drivers/infiniband/core/mad_priv.h | 1 -
drivers/infiniband/core/multicast.c | 20 +-
drivers/infiniband/core/netlink.c | 2 +-
drivers/infiniband/core/nldev.c | 10 +-
drivers/infiniband/core/roce_gid_mgmt.c | 5 +-
drivers/infiniband/core/rw.c | 8 +-
drivers/infiniband/core/sa_query.c | 10 +-
drivers/infiniband/core/security.c | 9 +-
drivers/infiniband/core/sysfs.c | 1110 ++--
drivers/infiniband/core/ucma.c | 11 +-
drivers/infiniband/core/ud_header.c | 8 +-
drivers/infiniband/core/umem_odp.c | 2 +-
drivers/infiniband/core/user_mad.c | 4 +-
drivers/infiniband/core/uverbs.h | 2 +-
drivers/infiniband/core/uverbs_cmd.c | 23 +-
drivers/infiniband/core/uverbs_main.c | 12 +-
drivers/infiniband/core/uverbs_uapi.c | 2 +-
drivers/infiniband/core/verbs.c | 23 +-
drivers/infiniband/hw/Makefile | 2 +-
drivers/infiniband/hw/bnxt_re/hw_counters.c | 7 +-
drivers/infiniband/hw/bnxt_re/hw_counters.h | 4 +-
drivers/infiniband/hw/bnxt_re/ib_verbs.c | 30 +-
drivers/infiniband/hw/bnxt_re/main.c | 19 +-
drivers/infiniband/hw/bnxt_re/qplib_fp.h | 2 +
drivers/infiniband/hw/bnxt_re/qplib_res.c | 17 +
drivers/infiniband/hw/bnxt_re/qplib_res.h | 7 +-
drivers/infiniband/hw/bnxt_re/qplib_sp.c | 13 +-
drivers/infiniband/hw/bnxt_re/qplib_sp.h | 2 -
drivers/infiniband/hw/cxgb4/cq.c | 6 +-
drivers/infiniband/hw/cxgb4/ev.c | 8 +-
drivers/infiniband/hw/cxgb4/iw_cxgb4.h | 2 +-
drivers/infiniband/hw/cxgb4/provider.c | 11 +-
drivers/infiniband/hw/cxgb4/qp.c | 2 +-
drivers/infiniband/hw/efa/efa.h | 3 +-
drivers/infiniband/hw/efa/efa_main.c | 3 +-
drivers/infiniband/hw/efa/efa_verbs.c | 11 +-
drivers/infiniband/hw/hfi1/chip.c | 4 +-
drivers/infiniband/hw/hfi1/file_ops.c | 6 +-
drivers/infiniband/hw/hfi1/hfi.h | 9 +-
drivers/infiniband/hw/hfi1/init.c | 4 +-
drivers/infiniband/hw/hfi1/pio.c | 2 +-
drivers/infiniband/hw/hfi1/pio.h | 2 -
drivers/infiniband/hw/hfi1/sdma.c | 4 +-
drivers/infiniband/hw/hfi1/sysfs.c | 530 +-
drivers/infiniband/hw/hfi1/tid_rdma.c | 2 +-
drivers/infiniband/hw/hfi1/trace.c | 5 +
drivers/infiniband/hw/hfi1/verbs.c | 92 +-
drivers/infiniband/hw/hns/hns_roce_alloc.c | 114 +-
drivers/infiniband/hw/hns/hns_roce_common.h | 12 +-
drivers/infiniband/hw/hns/hns_roce_cq.c | 15 +-
drivers/infiniband/hw/hns/hns_roce_db.c | 3 +-
drivers/infiniband/hw/hns/hns_roce_device.h | 72 +-
drivers/infiniband/hw/hns/hns_roce_hem.c | 371 +-
drivers/infiniband/hw/hns/hns_roce_hem.h | 13 +-
drivers/infiniband/hw/hns/hns_roce_hw_v1.c | 79 +-
drivers/infiniband/hw/hns/hns_roce_hw_v1.h | 5 +
drivers/infiniband/hw/hns/hns_roce_hw_v2.c | 1983 +++----
drivers/infiniband/hw/hns/hns_roce_hw_v2.h | 969 ++--
drivers/infiniband/hw/hns/hns_roce_main.c | 40 +-
drivers/infiniband/hw/hns/hns_roce_mr.c | 84 +-
drivers/infiniband/hw/hns/hns_roce_pd.c | 94 +-
drivers/infiniband/hw/hns/hns_roce_qp.c | 47 +-
drivers/infiniband/hw/hns/hns_roce_srq.c | 22 +-
drivers/infiniband/hw/i40iw/Kconfig | 9 -
drivers/infiniband/hw/i40iw/Makefile | 9 -
drivers/infiniband/hw/i40iw/i40iw.h | 602 ---
drivers/infiniband/hw/i40iw/i40iw_cm.c | 4419 ---------------
drivers/infiniband/hw/i40iw/i40iw_cm.h | 462 --
drivers/infiniband/hw/i40iw/i40iw_ctrl.c | 5243 ------------------
drivers/infiniband/hw/i40iw/i40iw_d.h | 1746 ------
drivers/infiniband/hw/i40iw/i40iw_hmc.c | 821 ---
drivers/infiniband/hw/i40iw/i40iw_hmc.h | 241 -
drivers/infiniband/hw/i40iw/i40iw_hw.c | 851 ---
drivers/infiniband/hw/i40iw/i40iw_main.c | 2064 -------
drivers/infiniband/hw/i40iw/i40iw_osdep.h | 195 -
drivers/infiniband/hw/i40iw/i40iw_p.h | 129 -
drivers/infiniband/hw/i40iw/i40iw_pble.c | 611 ---
drivers/infiniband/hw/i40iw/i40iw_pble.h | 131 -
drivers/infiniband/hw/i40iw/i40iw_puda.c | 1496 ------
drivers/infiniband/hw/i40iw/i40iw_puda.h | 188 -
drivers/infiniband/hw/i40iw/i40iw_register.h | 1030 ----
drivers/infiniband/hw/i40iw/i40iw_status.h | 101 -
drivers/infiniband/hw/i40iw/i40iw_type.h | 1358 -----
drivers/infiniband/hw/i40iw/i40iw_uk.c | 1200 -----
drivers/infiniband/hw/i40iw/i40iw_user.h | 422 --
drivers/infiniband/hw/i40iw/i40iw_utils.c | 1518 ------
drivers/infiniband/hw/i40iw/i40iw_verbs.c | 2652 ---------
drivers/infiniband/hw/i40iw/i40iw_verbs.h | 179 -
drivers/infiniband/hw/i40iw/i40iw_vf.c | 85 -
drivers/infiniband/hw/i40iw/i40iw_vf.h | 62 -
drivers/infiniband/hw/i40iw/i40iw_virtchnl.c | 759 ---
drivers/infiniband/hw/i40iw/i40iw_virtchnl.h | 124 -
drivers/infiniband/hw/irdma/Kconfig | 12 +
drivers/infiniband/hw/irdma/Makefile | 27 +
drivers/infiniband/hw/irdma/cm.c | 4421 +++++++++++++++
drivers/infiniband/hw/irdma/cm.h | 417 ++
drivers/infiniband/hw/irdma/ctrl.c | 5657 ++++++++++++++++++++
drivers/infiniband/hw/irdma/defs.h | 1155 ++++
drivers/infiniband/hw/irdma/hmc.c | 710 +++
drivers/infiniband/hw/irdma/hmc.h | 180 +
drivers/infiniband/hw/irdma/hw.c | 2725 ++++++++++
drivers/infiniband/hw/irdma/i40iw_hw.c | 216 +
drivers/infiniband/hw/irdma/i40iw_hw.h | 160 +
drivers/infiniband/hw/irdma/i40iw_if.c | 216 +
drivers/infiniband/hw/irdma/icrdma_hw.c | 149 +
drivers/infiniband/hw/irdma/icrdma_hw.h | 71 +
drivers/infiniband/hw/irdma/irdma.h | 153 +
drivers/infiniband/hw/irdma/main.c | 358 ++
drivers/infiniband/hw/irdma/main.h | 555 ++
drivers/infiniband/hw/irdma/osdep.h | 86 +
drivers/infiniband/hw/irdma/pble.c | 520 ++
drivers/infiniband/hw/irdma/pble.h | 136 +
drivers/infiniband/hw/irdma/protos.h | 116 +
drivers/infiniband/hw/irdma/puda.c | 1744 ++++++
drivers/infiniband/hw/irdma/puda.h | 194 +
drivers/infiniband/hw/irdma/status.h | 71 +
drivers/infiniband/hw/irdma/trace.c | 112 +
drivers/infiniband/hw/irdma/trace.h | 3 +
drivers/infiniband/hw/irdma/trace_cm.h | 458 ++
drivers/infiniband/hw/irdma/type.h | 1541 ++++++
drivers/infiniband/hw/irdma/uda.c | 271 +
drivers/infiniband/hw/irdma/uda.h | 89 +
drivers/infiniband/hw/irdma/uda_d.h | 128 +
drivers/infiniband/hw/irdma/uk.c | 1684 ++++++
drivers/infiniband/hw/irdma/user.h | 437 ++
drivers/infiniband/hw/irdma/utils.c | 2541 +++++++++
drivers/infiniband/hw/irdma/verbs.c | 4544 ++++++++++++++++
drivers/infiniband/hw/irdma/verbs.h | 225 +
drivers/infiniband/hw/irdma/ws.c | 406 ++
drivers/infiniband/hw/irdma/ws.h | 41 +
drivers/infiniband/hw/mlx4/cq.c | 8 +-
drivers/infiniband/hw/mlx4/main.c | 27 +-
drivers/infiniband/hw/mlx4/qp.c | 11 +-
drivers/infiniband/hw/mlx5/counters.c | 42 +-
drivers/infiniband/hw/mlx5/cq.c | 10 +-
drivers/infiniband/hw/mlx5/doorbell.c | 3 +-
drivers/infiniband/hw/mlx5/main.c | 19 +-
drivers/infiniband/hw/mlx5/mlx5_ib.h | 12 +-
drivers/infiniband/hw/mlx5/mr.c | 12 +-
drivers/infiniband/hw/mlx5/odp.c | 5 +-
drivers/infiniband/hw/mlx5/qp.c | 177 +-
drivers/infiniband/hw/mlx5/qpc.c | 6 +
drivers/infiniband/hw/mlx5/srq.c | 2 +-
drivers/infiniband/hw/mlx5/wr.c | 14 +-
drivers/infiniband/hw/mthca/mthca_provider.c | 2 +-
drivers/infiniband/hw/ocrdma/ocrdma_main.c | 2 +-
drivers/infiniband/hw/qedr/main.c | 2 +-
drivers/infiniband/hw/qib/qib.h | 8 +-
drivers/infiniband/hw/qib/qib_sysfs.c | 616 +--
drivers/infiniband/hw/qib/qib_verbs.c | 6 +-
drivers/infiniband/hw/usnic/usnic_ib_main.c | 3 +-
drivers/infiniband/hw/vmw_pvrdma/pvrdma_main.c | 2 +-
drivers/infiniband/sw/rdmavt/mr.c | 4 +-
drivers/infiniband/sw/rdmavt/qp.c | 3 +-
drivers/infiniband/sw/rdmavt/vt.c | 6 +-
drivers/infiniband/sw/rxe/Makefile | 1 +
drivers/infiniband/sw/rxe/rxe.c | 1 +
drivers/infiniband/sw/rxe/rxe_comp.c | 36 +-
drivers/infiniband/sw/rxe/rxe_cq.c | 32 +-
drivers/infiniband/sw/rxe/rxe_hw_counters.c | 7 +-
drivers/infiniband/sw/rxe/rxe_hw_counters.h | 4 +-
drivers/infiniband/sw/rxe/rxe_loc.h | 38 +-
drivers/infiniband/sw/rxe/rxe_mr.c | 130 +-
drivers/infiniband/sw/rxe/rxe_mw.c | 343 ++
drivers/infiniband/sw/rxe/rxe_net.c | 14 +-
drivers/infiniband/sw/rxe/rxe_opcode.c | 11 +-
drivers/infiniband/sw/rxe/rxe_opcode.h | 3 +-
drivers/infiniband/sw/rxe/rxe_param.h | 19 +-
drivers/infiniband/sw/rxe/rxe_pool.c | 45 +-
drivers/infiniband/sw/rxe/rxe_pool.h | 8 +-
drivers/infiniband/sw/rxe/rxe_qp.c | 23 +-
drivers/infiniband/sw/rxe/rxe_queue.c | 21 +-
drivers/infiniband/sw/rxe/rxe_queue.h | 272 +-
drivers/infiniband/sw/rxe/rxe_req.c | 159 +-
drivers/infiniband/sw/rxe/rxe_resp.c | 208 +-
drivers/infiniband/sw/rxe/rxe_srq.c | 5 +-
drivers/infiniband/sw/rxe/rxe_verbs.c | 101 +-
drivers/infiniband/sw/rxe/rxe_verbs.h | 53 +-
drivers/infiniband/ulp/ipoib/ipoib.h | 4 +-
drivers/infiniband/ulp/ipoib/ipoib_cm.c | 8 +-
drivers/infiniband/ulp/ipoib/ipoib_main.c | 48 +-
drivers/infiniband/ulp/ipoib/ipoib_vlan.c | 4 +-
drivers/infiniband/ulp/iser/iser_verbs.c | 2 +-
drivers/infiniband/ulp/isert/ib_isert.c | 18 +-
drivers/infiniband/ulp/isert/ib_isert.h | 3 -
drivers/infiniband/ulp/rtrs/rtrs-clt-sysfs.c | 5 +-
drivers/infiniband/ulp/rtrs/rtrs-clt.c | 254 +-
drivers/infiniband/ulp/rtrs/rtrs-clt.h | 6 +-
drivers/infiniband/ulp/rtrs/rtrs-pri.h | 27 +-
drivers/infiniband/ulp/rtrs/rtrs-srv-stats.c | 12 +-
drivers/infiniband/ulp/rtrs/rtrs-srv-sysfs.c | 1 +
drivers/infiniband/ulp/rtrs/rtrs-srv.c | 199 +-
drivers/infiniband/ulp/rtrs/rtrs-srv.h | 4 +-
drivers/infiniband/ulp/rtrs/rtrs.c | 53 +-
drivers/infiniband/ulp/rtrs/rtrs.h | 2 +-
drivers/infiniband/ulp/srp/ib_srp.c | 256 +-
drivers/infiniband/ulp/srp/ib_srp.h | 2 -
drivers/infiniband/ulp/srpt/ib_srpt.c | 1 -
drivers/net/ethernet/intel/i40e/i40e_client.c | 149 -
drivers/net/ethernet/mellanox/mlx5/core/en_main.c | 8 +-
.../net/ethernet/mellanox/mlx5/core/lib/clock.h | 10 +-
include/linux/mlx5/mlx5_ifc.h | 36 +-
include/linux/mlx5/qp.h | 4 +-
include/linux/net/intel/i40e_client.h | 3 -
include/rdma/ib_hdrs.h | 5 -
include/rdma/ib_mad.h | 27 +-
include/rdma/ib_sysfs.h | 37 +
include/rdma/ib_verbs.h | 83 +-
include/scsi/srp.h | 26 +-
include/uapi/rdma/bnxt_re-abi.h | 11 +-
include/uapi/rdma/i40iw-abi.h | 107 -
include/uapi/rdma/ib_user_ioctl_verbs.h | 1 +
include/uapi/rdma/ib_user_mad.h | 2 +-
include/uapi/rdma/irdma-abi.h | 111 +
include/uapi/rdma/mlx5-abi.h | 3 +
include/uapi/rdma/rdma_user_rxe.h | 10 +
233 files changed, 38023 insertions(+), 34428 deletions(-)
(diffstat from tag for-linus-merged)
Attachment:
signature.asc
Description: PGP signature