Skip to content

RDMA: update to v5.17

Kamal Heib requested to merge kheib/centos-stream-9:9.1-bz2056771-5.17 into main

Description:

This patch set updates the RDMA core and RDMA drivers (without a
maintainer) to upstream kernel v5.17.

BZs:

Bugzilla: http://bugzilla.redhat.com/2056769
Bugzilla: http://bugzilla.redhat.com/2056770
Bugzilla: http://bugzilla.redhat.com/2056771
Bugzilla: http://bugzilla.redhat.com/2037988
Bugzilla: http://bugzilla.redhat.com/2049164

Upstream:

Linus's master tree.

Brew:

https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=44014436

Testing:

I did regression testing over all the available devices and
configurations in the RDMA cluster and the testing effort passed
with known issues.

Signed-off-by: Kamal Heib kheib@redhat.com

0443531e (Kamal Heib)
RDMA/cma: Do not change route.addr.src_addr outside state checks

0f74f1e3 (Kamal Heib)
RDMA/ib_srp: Fix a deadlock

aba3c66c (Kamal Heib)
RDMA/siw: Fix broken RDMA Read Fence/Resume logic.

f57fff0e (Kamal Heib)
IB/cm: Release previously acquired reference counter in the cm_id_priv

55d56cc9 (Kamal Heib)
RDMA/siw: Fix refcounting leak in siw_create_qp()

9cd4df10 (Kamal Heib)
RDMA/ucma: Protect mc during concurrent multicast leaves

678d7a5e (Kamal Heib)
RDMA/cma: Use correct address when leaving multicast group

1c9d5057 (Kamal Heib)
IB/hfi1: Fix tstats alloc and dealloc

e50db733 (Kamal Heib)
IB/hfi1: Fix AIP early init panic

fb7eeac6 (Kamal Heib)
IB/hfi1: Fix alloc failure with larger txqueuelen

55664efa (Kamal Heib)
IB/hfi1: Fix panic with larger ipoib send_queue_size

93359eb8 (Kamal Heib)
all: replace find_next{,_zero}_bit with find_first{,_zero}_bit where
appropriate

0d03417d (Kamal Heib)
RDMA/irdma: Remove the redundant return

dd912761 (Kamal Heib)
RDMA/irdma: Make the source udp port vary

aa44b201 (Kamal Heib)
RDMA/core: Calculate UDP source port based on flow label or lqpn/rqpn

db13dcd0 (Kamal Heib)
IB/iser: Align coding style across driver

2499e5c3 (Kamal Heib)
IB/iser: Remove un-needed casting to/from void pointer

fd74ec55 (Kamal Heib)
IB/iser: Don't suppress send completions

761e98a2 (Kamal Heib)
IB/iser: Rename ib_ret local variable

ac70aedd (Kamal Heib)
IB/iser: Fix RNR errors

d4c35843 (Kamal Heib)
IB/iser: Remove deprecated pi_guard module param

6320194b (Kamal Heib)
IB/mlx5: Expose NDR speed through MAD

9aef24bd (Kamal Heib)
RDMA/mad: Delete duplicated init_query_mad functions

3fbc3171 (Kamal Heib)
RDMA: Use default_groups in kobj_type

6c1acbeb (Kamal Heib)
RDMA/irdma: Use auxiliary_device driver data helpers

283f9229 (Kamal Heib)
driver core: auxiliary bus: Add driver data helpers

e6a78a31 (Kamal Heib)
RDMA/cma: Let cma_resolve_ib_dev() continue search even after empty entry

3724fee0 (Kamal Heib)
RDMA/core: Let ib_find_gid() continue search even after empty entry

aa5bd0c2 (Kamal Heib)
RDMA/core: Modify rdma_query_gid() to return accurate error codes

0f813834 (Kamal Heib)
RDMA/irdma: Fix the type used to declare a bitmap

52d2f876 (Kamal Heib)
IB/core: Remove redundant pointer mm

d05ee05e (Kamal Heib)
RDMA/uverbs: Remove the unnecessary assignment

ad1a2d1d (Kamal Heib)
RDMA/siw: Use max() instead of doing it manually

92e9000b (Kamal Heib)
RDMA/pvrdma: Use non-atomic bitmap functions when possible

b019d84a (Kamal Heib)
RDMA/pvrdma: Use bitmap_zalloc() when applicable

0d6e1fdf (Kamal Heib)
IB/hfi1: Use bitmap_zalloc() when applicable

22a72175 (Kamal Heib)
RDMA/siw: Use helper function to set sys_image_guid

f8a9008c (Kamal Heib)
RDMA/cma: Remove open coding of overflow checking for private_data_len

07902b43 (Kamal Heib)
RDMA/usnic: Clean up usnic_ib_alloc_pd()

26d2cc5e (Kamal Heib)
RDMA/irdma: Use helper function to set GUIDs

6beadb6c (Kamal Heib)
IB/hfi1: Fix leak of rcvhdrtail_dummy_kvaddr

a90861f4 (Kamal Heib)
IB/hfi1: Fix early init panic

27ce0632 (Kamal Heib)
IB/hfi1: Insure use of smp_processor_id() is preempt disabled

e8fd9362 (Kamal Heib)
IB/hfi1: Correct guard on eager buffer deallocation

a51886bf (Kamal Heib)
RDMA/nldev: Check stat attribute before accessing it

1425e0af (Kamal Heib)
IB/hfi1: Properly allocate rdma counter desc memory

6ea9d252 (Kamal Heib)
RDMA/core: Set send and receive CQ before forwarding to the driver

482dd52f (Kamal Heib)
RDMA/netlink: Add __maybe_unused to static inline in C file

8ea7d232 (Kamal Heib)
RDMA/core: Require the driver to set the IOVA correctly during rereg_mr

66b0d21b (Kamal Heib)
RDMA/irdma: optimize rx path by removing unnecessary copy

1481e54d (Kamal Heib)
IB/opa_vnic: Rebranding of OPA VNIC driver to Cornelis Networks

a5c8fdd8 (Kamal Heib)
IB/hfi1: Rebranding of hfi1 driver to Cornelis Networks

f3865c5e (Kamal Heib)
RDMA/irdma: Remove the unused variable local_qp

951d17f4 (Kamal Heib)
RDMA/core: Fix missed initialization of rdma_hw_stats::lock

06cfc9b9 (Kamal Heib)
RDMA/efa: Add support for dmabuf memory regions

b80228d7 (Kamal Heib)
RDMA/umem: Allow pinned dmabuf umem usage

2847a6fc (Kamal Heib)
RDMA/irdma: Remove the unused spin lock in struct irdma_qp_uk

16f56fc2 (Kamal Heib)
RDMA: Constify netdev->dev_addr accesses

7a82d1e7 (Kamal Heib)
RDMA/ipoib: Use dev_addr_mod()

4ee5b5f7 (Kamal Heib)
RDMA/core: Use kvzalloc when allocating the struct ib_port

21f3d02f (Kamal Heib)
RDMA/irdma: Make irdma_uk_cq_init() return a void

d035b66f (Kamal Heib)
RDMA/core: Set sgtable nents when using ib_dma_virt_map_sg()

ba49b215 (Kamal Heib)
RDMA/irdma: Remove irdma_cqp_up_map_cmd()

a5741de6 (Kamal Heib)
RDMA/irdma: Remove irdma_get_hw_addr()

b697086b (Kamal Heib)
RDMA/irdma: Remove irdma_sc_send_lsmm_nostag()

eb544ae1 (Kamal Heib)
RDMA/irdma: Remove irdma_uk_mw_bind()

31861e34 (Kamal Heib)
RDMA: Remove redundant 'flush_workqueue()' calls

f4c6bf6f (Kamal Heib)
RDMA/iwpm: Remove redundant initialization of pointer err_str

d2cb4389 (Kamal Heib)
RDMA/nldev: Allow optional-counter status configuration through RDMA
netlink

56b22c0b (Kamal Heib)
RDMA/nldev: Split nldev_stat_set_mode_doit out of nldev_stat_set_doit

142ed1dc (Kamal Heib)
RDMA/nldev: Add support to get status of all counters

52d56164 (Kamal Heib)
RDMA/counter: Add optional counter support

e15d8889 (Kamal Heib)
RDMA/counter: Add an is_disabled field in struct rdma_hw_stats

450af51a (Kamal Heib)
RDMA/core: Add a helper API rdma_free_hw_stats_struct

f847e84a (Kamal Heib)
RDMA/bnxt_re: Fix kernel panic when trying to access bnxt_re_stat_descs

80da9a9c (Kamal Heib)
RDMA/counter: Add a descriptor in struct rdma_hw_stats

d76e85a4 (Kamal Heib)
RDMA/bnxt_re: Update statistics counter name

992bb9c6 (Kamal Heib)
RDMA/bnxt_re: Add extended statistics counters

4f3d5f2d (Kamal Heib)
RDMA/efa: CQ notifications

d1fc2f9e (Kamal Heib)
RDMA/irdma: Delete unused struct irdma_bth

758e21a2 (Kamal Heib)
IB/hf1: Use string_upper() instead of an open coded variant

b868541e (Kamal Heib)
RDMA/rw: switch to dma_map_sgtable()

93e15cdd (Kamal Heib)
RDMA/cma: Split apart the multiple uses of the same list heads

62b6f7c4 (Kamal Heib)
RDMA/hfi1: Use struct_size() and flex_array_size() helpers

c1d91360 (Kamal Heib)
IB/hfi1: Add ring consumer and producers traces

5546f0b6 (Kamal Heib)
IB/hfi1: Remove atomic completion count

ce3ca5b3 (Kamal Heib)
IB/hfi1: Tune netdev xmit cachelines

bbb3f62a (Kamal Heib)
IB/hfi1: Get rid of tx priv backpointer

1a8182e4 (Kamal Heib)
IB/hfi1: Get rid of hot path divide

9340c637 (Kamal Heib)
IB/hfi1: Remove cache and embed txreq in ring

abc0bbd9 (Kamal Heib)
RDMA/rdmavt: Fix error code in rvt_create_qp()

f2883b10 (Kamal Heib)
IB/hfi1: Fix abba locking issue with sc_disable()

4a126a51 (Kamal Heib)
RDMA/hfi1: Fix kernel pointer leak

254efb47 (Kamal Heib)
RDMA/usnic: Lock VF with mutex instead of spinlock

a95577fe (Kamal Heib)
IB/hfi1: make hist static

d823577c (Kamal Heib)
RDMA/hfi1: Convert to SPDX identifier

6a0d13f7 (Kamal Heib)
IB/rdmavt: Convert to SPDX identifier

85a91daf (Kamal Heib)
RDMA/irdma: Remove the repeated declaration

613fc9cd (Kamal Heib)
RDMA/core/sa_query: Retry SA queries

e5cac826 (Kamal Heib)
RDMA: Use the sg_table directly and remove the opencoded version from umem

24164cb6 (Kamal Heib)
RDMA: switch from 'pci_' to 'dma_' API

67768e19 (Kamal Heib)
RDMA/efa: Rename vector field in efa_irq struct to irqn

ecce3f2c (Kamal Heib)
RDMA/efa: Remove unused cpu field from irq struct

3b089ae7 (Kamal Heib)
RDMA/core/sa_query: Remove unused function

ce0e2c3d (Kamal Heib)
RDMA/hfi1: Stop using seq_get_buf in _driver_stats_seq_show

0e7b145a (Kamal Heib)
RDMA/core: Create clean QP creations interface for uverbs

6a87b854 (Kamal Heib)
RDMA/core: Properly increment and decrement QP usecnts

97fb76b2 (Kamal Heib)
RDMA/core: Configure selinux QP during creation

2c681341 (Kamal Heib)
RDMA/core: Reorganize create QP low-level functions

b690efba (Kamal Heib)
RDMA/core: Remove protection from wrong in-kernel API usage

6f485ef6 (Kamal Heib)
RDMA/core: Delete duplicated and unreachable code

f283fae4 (Kamal Heib)
rdma/qedr: Fix crash due to redundant release of device's qp memory

de193c65 (Kamal Heib)
RDMA: Globally allocate and release QP memory

f4f71ed2 (Kamal Heib)
RDMA/mlx5: Rework custom driver QP type creation

44141c20 (Kamal Heib)
RDMA/rdmavt: Decouple QP and SGE lists allocations

b4dd5b72 (Kamal Heib)
RDMA/efa: Remove double QP type assignment

3ae0a0c2 (Kamal Heib)
RDMA/hfi1: Fix typo in comments

20f33331 (Kamal Heib)
RDMA/iwpm: Rely on the rdma_nl_[un]register() to ensure that requests are
valid

86ad5f11 (Kamal Heib)
RDMA/iwpm: Remove not-needed reference counting

ede21036 (Kamal Heib)
RDMA/hfi1: Convert from atomic_t to refcount_t on
hfi1_devdata->user_refcount

d50f6be1 (Kamal Heib)
IB/hfi1: Adjust pkey entry in index 0

d78a29d1 (Kamal Heib)
IB/hfi1: Indicate DMA wait when txq is queued for wakeup

485b7caf (Kamal Heib)
IB/core: Read subnet_prefix in ib_query_port via cache.

8b23e19f (Kamal Heib)
IB/core: Shifting initialization of device->cache_lock

1b6755d6 (Kamal Heib)
IB/core: Updating cache for subnet_prefix in config_non_roce_gid_cache()

9744a3d9 (Kamal Heib)
RDMA/efa: Split hardware stats to device and port stats

35dfb54b (Kamal Heib)
RDMA/siw: Convert siw_tx_hdt() to kmap_local_page()

f28c6e5a (Kamal Heib)
RDMA/siw: Remove kmap()

e686bfdb (Kamal Heib)
lib/scatterlist: Fix wrong update of orig_nents

4091785f (Kamal Heib)
lib/scatterlist: Provide a dedicated function to support table append

drivers/gpu/drm/drm_prime.c | 13 +-
drivers/gpu/drm/i915/gem/i915_gem_userptr.c | 11 +-
drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c | 14 +-
drivers/infiniband/core/cache.c | 22 +-
drivers/infiniband/core/cm.c | 2 +-
drivers/infiniband/core/cma.c | 115 ++++---
drivers/infiniband/core/cma_priv.h | 11 +-
drivers/infiniband/core/core_priv.h | 46 +--
drivers/infiniband/core/counters.c | 40 ++-
drivers/infiniband/core/device.c | 16 +-
drivers/infiniband/core/iwpm_msg.c | 34 +-
drivers/infiniband/core/iwpm_util.c | 80 +----
drivers/infiniband/core/iwpm_util.h | 18 -
drivers/infiniband/core/nldev.c | 279 ++++++++++++---
drivers/infiniband/core/restrack.c | 2 +-
drivers/infiniband/core/rw.c | 66 ++--
drivers/infiniband/core/sa_query.c | 187 +---------
drivers/infiniband/core/sysfs.c | 61 ++--
drivers/infiniband/core/ucma.c | 34 +-
drivers/infiniband/core/umem.c | 56 ++-
drivers/infiniband/core/umem_dmabuf.c | 56 ++-
drivers/infiniband/core/umem_odp.c | 3 +-
drivers/infiniband/core/uverbs_cmd.c | 35 +-
drivers/infiniband/core/uverbs_std_types_qp.c | 29 +-
drivers/infiniband/core/verbs.c | 279 ++++++++++-----
drivers/infiniband/hw/bnxt_re/bnxt_re.h | 5 +-
drivers/infiniband/hw/bnxt_re/hw_counters.c | 380 +++++++++++++--------
drivers/infiniband/hw/bnxt_re/hw_counters.h | 30 +-
drivers/infiniband/hw/bnxt_re/ib_verbs.c | 42 +--
drivers/infiniband/hw/bnxt_re/ib_verbs.h | 7 +-
drivers/infiniband/hw/bnxt_re/main.c | 5 +
drivers/infiniband/hw/bnxt_re/qplib_fp.c | 3 +
drivers/infiniband/hw/bnxt_re/qplib_res.c | 2 +-
drivers/infiniband/hw/bnxt_re/qplib_res.h | 11 +-
drivers/infiniband/hw/bnxt_re/qplib_sp.c | 57 +++-
drivers/infiniband/hw/bnxt_re/qplib_sp.h | 33 +-
drivers/infiniband/hw/bnxt_re/roce_hsi.h | 85 +++++
drivers/infiniband/hw/cxgb4/cm.c | 1 -
drivers/infiniband/hw/cxgb4/device.c | 1 -
drivers/infiniband/hw/cxgb4/iw_cxgb4.h | 5 +-
drivers/infiniband/hw/cxgb4/provider.c | 23 +-
drivers/infiniband/hw/cxgb4/qp.c | 37 +-
drivers/infiniband/hw/efa/efa.h | 31 +-
drivers/infiniband/hw/efa/efa_admin_cmds_defs.h | 100 +++++-
drivers/infiniband/hw/efa/efa_admin_defs.h | 41 +++
drivers/infiniband/hw/efa/efa_com.c | 164 +++++++++
drivers/infiniband/hw/efa/efa_com.h | 38 ++-
drivers/infiniband/hw/efa/efa_com_cmd.c | 35 +-
drivers/infiniband/hw/efa/efa_com_cmd.h | 10 +-
drivers/infiniband/hw/efa/efa_main.c | 194 +++++++++--
drivers/infiniband/hw/efa/efa_regs_defs.h | 7 +-
drivers/infiniband/hw/efa/efa_verbs.c | 344 +++++++++++++------
drivers/infiniband/hw/hfi1/Kconfig | 4 +-
drivers/infiniband/hw/hfi1/affinity.c | 45 +--
drivers/infiniband/hw/hfi1/affinity.h | 45 +--
drivers/infiniband/hw/hfi1/aspm.h | 45 +--
drivers/infiniband/hw/hfi1/chip.c | 55 +--
drivers/infiniband/hw/hfi1/chip.h | 48 +--
drivers/infiniband/hw/hfi1/chip_registers.h | 50 +--
drivers/infiniband/hw/hfi1/common.h | 44 +--
drivers/infiniband/hw/hfi1/debugfs.c | 58 +---
drivers/infiniband/hw/hfi1/debugfs.h | 49 +--
drivers/infiniband/hw/hfi1/device.c | 44 +--
drivers/infiniband/hw/hfi1/device.h | 49 +--
drivers/infiniband/hw/hfi1/driver.c | 49 +--
drivers/infiniband/hw/hfi1/efivar.c | 54 +--
drivers/infiniband/hw/hfi1/efivar.h | 45 +--
drivers/infiniband/hw/hfi1/eprom.c | 45 +--
drivers/infiniband/hw/hfi1/eprom.h | 44 +--
drivers/infiniband/hw/hfi1/exp_rcv.c | 44 +--
drivers/infiniband/hw/hfi1/exp_rcv.h | 48 +--
drivers/infiniband/hw/hfi1/fault.c | 45 +--
drivers/infiniband/hw/hfi1/fault.h | 50 +--
drivers/infiniband/hw/hfi1/file_ops.c | 51 +--
drivers/infiniband/hw/hfi1/firmware.c | 44 +--
drivers/infiniband/hw/hfi1/hfi.h | 54 +--
drivers/infiniband/hw/hfi1/init.c | 96 ++----
drivers/infiniband/hw/hfi1/intr.c | 44 +--
drivers/infiniband/hw/hfi1/iowait.h | 49 +--
drivers/infiniband/hw/hfi1/ipoib.h | 76 +++--
drivers/infiniband/hw/hfi1/ipoib_main.c | 29 +-
drivers/infiniband/hw/hfi1/ipoib_tx.c | 361 +++++++++-----------
drivers/infiniband/hw/hfi1/mad.c | 44 +--
drivers/infiniband/hw/hfi1/mad.h | 45 +--
drivers/infiniband/hw/hfi1/mmu_rb.c | 45 +--
drivers/infiniband/hw/hfi1/mmu_rb.h | 45 +--
drivers/infiniband/hw/hfi1/msix.c | 43 ---
drivers/infiniband/hw/hfi1/msix.h | 44 +--
drivers/infiniband/hw/hfi1/opa_compat.h | 48 +--
drivers/infiniband/hw/hfi1/pcie.c | 55 +--
drivers/infiniband/hw/hfi1/pio.c | 53 +--
drivers/infiniband/hw/hfi1/pio.h | 48 +--
drivers/infiniband/hw/hfi1/pio_copy.c | 44 +--
drivers/infiniband/hw/hfi1/platform.c | 44 +--
drivers/infiniband/hw/hfi1/platform.h | 45 +--
drivers/infiniband/hw/hfi1/qp.c | 44 +--
drivers/infiniband/hw/hfi1/qp.h | 48 +--
drivers/infiniband/hw/hfi1/qsfp.c | 44 +--
drivers/infiniband/hw/hfi1/qsfp.h | 44 +--
drivers/infiniband/hw/hfi1/rc.c | 44 +--
drivers/infiniband/hw/hfi1/ruc.c | 46 +--
drivers/infiniband/hw/hfi1/sdma.c | 48 +--
drivers/infiniband/hw/hfi1/sdma.h | 49 +--
drivers/infiniband/hw/hfi1/sdma_txreq.h | 44 +--
drivers/infiniband/hw/hfi1/sysfs.c | 45 +--
drivers/infiniband/hw/hfi1/tid_rdma.c | 4 +-
drivers/infiniband/hw/hfi1/trace.c | 46 +--
drivers/infiniband/hw/hfi1/trace.h | 44 +--
drivers/infiniband/hw/hfi1/trace_ctxts.h | 45 +--
drivers/infiniband/hw/hfi1/trace_dbg.h | 45 +--
drivers/infiniband/hw/hfi1/trace_ibhdrs.h | 45 +--
drivers/infiniband/hw/hfi1/trace_misc.h | 45 +--
drivers/infiniband/hw/hfi1/trace_mmu.h | 45 +--
drivers/infiniband/hw/hfi1/trace_rc.h | 45 +--
drivers/infiniband/hw/hfi1/trace_rx.h | 45 +--
drivers/infiniband/hw/hfi1/trace_tx.h | 115 ++++---
drivers/infiniband/hw/hfi1/uc.c | 44 +--
drivers/infiniband/hw/hfi1/ud.c | 44 +--
drivers/infiniband/hw/hfi1/user_exp_rcv.c | 62 +---
drivers/infiniband/hw/hfi1/user_exp_rcv.h | 49 +--
drivers/infiniband/hw/hfi1/user_pages.c | 44 +--
drivers/infiniband/hw/hfi1/user_sdma.c | 53 +--
drivers/infiniband/hw/hfi1/user_sdma.h | 49 +--
drivers/infiniband/hw/hfi1/verbs.c | 96 ++----
drivers/infiniband/hw/hfi1/verbs.h | 44 +--
drivers/infiniband/hw/hfi1/verbs_txreq.c | 44 +--
drivers/infiniband/hw/hfi1/verbs_txreq.h | 44 +--
drivers/infiniband/hw/hfi1/vnic.h | 48 +--
drivers/infiniband/hw/hfi1/vnic_main.c | 44 +--
drivers/infiniband/hw/hfi1/vnic_sdma.c | 44 +--
drivers/infiniband/hw/hns/hns_roce_db.c | 4 +-
drivers/infiniband/hw/hns/hns_roce_device.h | 8 +-
drivers/infiniband/hw/hns/hns_roce_hw_v1.c | 10 +-
drivers/infiniband/hw/hns/hns_roce_hw_v2.c | 6 +-
drivers/infiniband/hw/hns/hns_roce_main.c | 4 +-
drivers/infiniband/hw/hns/hns_roce_qp.c | 28 +-
drivers/infiniband/hw/irdma/cm.h | 12 +-
drivers/infiniband/hw/irdma/ctrl.c | 43 +--
drivers/infiniband/hw/irdma/hw.c | 23 +-
drivers/infiniband/hw/irdma/i40iw_if.c | 2 +-
drivers/infiniband/hw/irdma/main.c | 4 +-
drivers/infiniband/hw/irdma/main.h | 5 +-
drivers/infiniband/hw/irdma/osdep.h | 1 -
drivers/infiniband/hw/irdma/pble.h | 2 +-
drivers/infiniband/hw/irdma/protos.h | 4 -
drivers/infiniband/hw/irdma/trace_cm.h | 8 +-
drivers/infiniband/hw/irdma/type.h | 3 +-
drivers/infiniband/hw/irdma/uk.c | 101 ++----
drivers/infiniband/hw/irdma/user.h | 32 +-
drivers/infiniband/hw/irdma/utils.c | 52 +--
drivers/infiniband/hw/irdma/verbs.c | 208 +++++------
drivers/infiniband/hw/mlx4/alias_GUID.c | 4 +-
drivers/infiniband/hw/mlx4/doorbell.c | 3 +-
drivers/infiniband/hw/mlx4/main.c | 69 ++--
drivers/infiniband/hw/mlx4/mlx4_ib.h | 7 +-
drivers/infiniband/hw/mlx4/mr.c | 4 +-
drivers/infiniband/hw/mlx4/qp.c | 25 +-
drivers/infiniband/hw/mlx5/counters.c | 41 ++-
drivers/infiniband/hw/mlx5/doorbell.c | 3 +-
drivers/infiniband/hw/mlx5/gsi.c | 17 +-
drivers/infiniband/hw/mlx5/mad.c | 23 +-
drivers/infiniband/hw/mlx5/main.c | 29 +-
drivers/infiniband/hw/mlx5/mlx5_ib.h | 15 +-
drivers/infiniband/hw/mlx5/mr.c | 3 +-
drivers/infiniband/hw/mlx5/qp.c | 62 ++--
drivers/infiniband/hw/mthca/mthca_eq.c | 21 +-
drivers/infiniband/hw/mthca/mthca_main.c | 15 +-
drivers/infiniband/hw/mthca/mthca_memfree.c | 25 +-
drivers/infiniband/hw/mthca/mthca_provider.c | 97 ++----
drivers/infiniband/hw/ocrdma/ocrdma_main.c | 1 +
drivers/infiniband/hw/ocrdma/ocrdma_verbs.c | 25 +-
drivers/infiniband/hw/ocrdma/ocrdma_verbs.h | 5 +-
drivers/infiniband/hw/qedr/main.c | 1 +
drivers/infiniband/hw/qedr/qedr.h | 1 +
drivers/infiniband/hw/qedr/qedr_iw_cm.c | 2 +-
drivers/infiniband/hw/qedr/qedr_roce_cm.c | 13 +-
drivers/infiniband/hw/qedr/qedr_roce_cm.h | 5 +-
drivers/infiniband/hw/qedr/verbs.c | 56 ++-
drivers/infiniband/hw/qedr/verbs.h | 4 +-
drivers/infiniband/hw/qib/qib_file_ops.c | 12 +-
drivers/infiniband/hw/qib/qib_init.c | 4 +-
drivers/infiniband/hw/qib/qib_user_pages.c | 12 +-
drivers/infiniband/hw/usnic/usnic_fwd.c | 2 +-
drivers/infiniband/hw/usnic/usnic_fwd.h | 2 +-
drivers/infiniband/hw/usnic/usnic_ib.h | 2 +-
drivers/infiniband/hw/usnic/usnic_ib_main.c | 3 +-
drivers/infiniband/hw/usnic/usnic_ib_qp_grp.c | 34 +-
drivers/infiniband/hw/usnic/usnic_ib_qp_grp.h | 10 +-
drivers/infiniband/hw/usnic/usnic_ib_sysfs.c | 3 +-
drivers/infiniband/hw/usnic/usnic_ib_verbs.c | 93 +++--
drivers/infiniband/hw/usnic/usnic_ib_verbs.h | 5 +-
drivers/infiniband/hw/vmw_pvrdma/pvrdma_doorbell.c | 10 +-
drivers/infiniband/hw/vmw_pvrdma/pvrdma_main.c | 15 +-
drivers/infiniband/hw/vmw_pvrdma/pvrdma_qp.c | 53 ++-
drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.h | 5 +-
drivers/infiniband/sw/rdmavt/ah.c | 44 +--
drivers/infiniband/sw/rdmavt/ah.h | 50 +--
drivers/infiniband/sw/rdmavt/cq.c | 44 +--
drivers/infiniband/sw/rdmavt/cq.h | 50 +--
drivers/infiniband/sw/rdmavt/mad.c | 44 +--
drivers/infiniband/sw/rdmavt/mad.h | 50 +--
drivers/infiniband/sw/rdmavt/mcast.c | 44 +--
drivers/infiniband/sw/rdmavt/mcast.h | 50 +--
drivers/infiniband/sw/rdmavt/mmap.c | 44 +--
drivers/infiniband/sw/rdmavt/mmap.h | 50 +--
drivers/infiniband/sw/rdmavt/mr.c | 46 +--
drivers/infiniband/sw/rdmavt/mr.h | 50 +--
drivers/infiniband/sw/rdmavt/pd.c | 44 +--
drivers/infiniband/sw/rdmavt/pd.h | 50 +--
drivers/infiniband/sw/rdmavt/qp.c | 146 +++-----
drivers/infiniband/sw/rdmavt/qp.h | 55 +--
drivers/infiniband/sw/rdmavt/rc.c | 44 +--
drivers/infiniband/sw/rdmavt/srq.c | 44 +--
drivers/infiniband/sw/rdmavt/srq.h | 50 +--
drivers/infiniband/sw/rdmavt/trace.c | 44 +--
drivers/infiniband/sw/rdmavt/trace.h | 44 +--
drivers/infiniband/sw/rdmavt/trace_cq.h | 44 +--
drivers/infiniband/sw/rdmavt/trace_mr.h | 44 +--
drivers/infiniband/sw/rdmavt/trace_qp.h | 44 +--
drivers/infiniband/sw/rdmavt/trace_rc.h | 44 +--
drivers/infiniband/sw/rdmavt/trace_rvt.h | 44 +--
drivers/infiniband/sw/rdmavt/trace_tx.h | 44 +--
drivers/infiniband/sw/rdmavt/vt.c | 53 +--
drivers/infiniband/sw/rdmavt/vt.h | 50 +--
drivers/infiniband/sw/rxe/rxe_hw_counters.c | 42 +--
drivers/infiniband/sw/rxe/rxe_mr.c | 2 +-
drivers/infiniband/sw/rxe/rxe_pool.c | 2 +-
drivers/infiniband/sw/rxe/rxe_verbs.c | 48 ++-
drivers/infiniband/sw/rxe/rxe_verbs.h | 2 +-
drivers/infiniband/sw/siw/siw.h | 7 +-
drivers/infiniband/sw/siw/siw_cm.c | 4 +-
drivers/infiniband/sw/siw/siw_main.c | 1 +
drivers/infiniband/sw/siw/siw_qp.c | 2 -
drivers/infiniband/sw/siw/siw_qp_rx.c | 20 +-
drivers/infiniband/sw/siw/siw_qp_tx.c | 44 ++-
drivers/infiniband/sw/siw/siw_verbs.c | 59 ++--
drivers/infiniband/sw/siw/siw_verbs.h | 5 +-
drivers/infiniband/ulp/ipoib/ipoib_cm.c | 4 +-
drivers/infiniband/ulp/ipoib/ipoib_ib.c | 9 +-
drivers/infiniband/ulp/ipoib/ipoib_main.c | 18 +-
drivers/infiniband/ulp/iser/iscsi_iser.c | 76 ++---
drivers/infiniband/ulp/iser/iscsi_iser.h | 23 +-
drivers/infiniband/ulp/iser/iser_initiator.c | 106 +++---
drivers/infiniband/ulp/iser/iser_memory.c | 58 ++--
drivers/infiniband/ulp/iser/iser_verbs.c | 138 ++++----
drivers/infiniband/ulp/opa_vnic/Kconfig | 4 +-
drivers/infiniband/ulp/opa_vnic/Makefile | 3 +-
drivers/infiniband/ulp/opa_vnic/opa_vnic_vema.c | 7 +-
drivers/infiniband/ulp/srp/ib_srp.c | 6 +-
include/linux/auxiliary_bus.h | 10 +
include/linux/scatterlist.h | 56 ++-
include/rdma/ib_mad.h | 1 +
include/rdma/ib_sa.h | 24 --
include/rdma/ib_smi.h | 12 +-
include/rdma/ib_umem.h | 22 +-
include/rdma/ib_verbs.h | 152 +++++++--
include/rdma/rdma_counter.h | 2 +
include/rdma/rdma_netlink.h | 2 +-
include/rdma/rdmavt_qp.h | 2 +-
include/uapi/rdma/efa-abi.h | 18 +-
include/uapi/rdma/rdma_netlink.h | 5 +
lib/scatterlist.c | 155 +++++----
lib/sg_pool.c | 3 +-
tools/testing/scatterlist/main.c | 38 ++-
264 files changed, 3903 insertions(+), 7400 deletions(-)

Edited by Kamal Heib

Merge request reports