ACK/cmt: [SRU][bionic:linux-bluefield][PULL] Integrate Fixes from Mellanox 2019-10-16
Khaled Elmously
khalid.elmously at canonical.com
Mon Oct 21 16:41:36 UTC 2019
On 2019-10-18 20:57:02 , Jesse Sung wrote:
> Buglink: https://launchpad.net/bugs/1848324
>
> SRU Justification
>
> * Impact:
> Some issues found while Mellanox verifying linux-bluefield. These are
> the patches they sent to address those issues.
>
> * Risk of Regression:
> Low. Patches are from Mellanox and will be only apply to linux-bluefield.
>
> ----------------------------------------------------------------
> The following changes since commit e73b251209f5e1de8daf75941af6ac1f7cbf230f:
>
> UBUNTU: Ubuntu-bluefield-5.0.0-1003.12 (2019-10-03 11:06:04 -0700)
>
> are available in the Git repository at:
>
> git://git.launchpad.net/~wenchien/+git/ubuntu-kernel bluefield-20191016
>
> for you to fetch changes up to c42e649a6e6cca5d06207682e1f009ec7dfa24bc:
>
> UBUNTU: [Config] updates for linux-bluefield (2019-10-18 20:38:45 +0800)
>
> ----------------------------------------------------------------
> Ariel Levkovich (8):
> net/mlx5: Expose SW ICM related device memory capabilities
> net/mlx5: Expose TIR ICM address in command outbox
> net/mlx5: Introduce new TIR creation core API
> IB/mlx5: Expose TIR ICM address to user space
> IB/mlx5: Support device memory type attribute
> IB/mlx5: Warn on allocated MEMIC buffers during cleanup
> IB/mlx5: Add steering SW ICM device memory type
> IB/mlx5: Device resource control for privileged DEVX user
>
> Aya Levin (15):
> devlink: Add Documentation/networking/devlink-health.txt
> net/mlx5: Refactor queries to speed fields in Port Type and Speed register
> net/mlx5: Add new fields to Port Type and Speed register
> net/mlx5: Add support to ext_* fields introduced in Port Type
> and Speed register
> IB/mlx5: Add support for 50Gbps per lane link modes
> net/mlx5: ethtool, Add ethtool support for 50Gbps per lane link modes
> devlink: Rename devlink health attributes
> devlink: Modify reply of DEVLINK_CMD_HEALTH_REPORTER_GET
> IB/mlx5: Fix mapping of link-mode to IB width and speed
> net/mlx5: ethtool, Fix type analysis of advertised link-mode
> net/mlx5: ethtool, Allow legacy link-modes configuration via
> non-extended ptys
> net/mlx5: Expose MPEIN (Management PCIE INfo) register layout
> net/mlx5: Handle event of power detection in the PCIE slot
> IB/mlx5: Restrict 'DELAY_DROP_TIMEOUT' subtype to Ethernet interfaces
> net/mlx5: Enable general events on all interfaces
>
> Bodong Wang (4):
> UBUNTU: SAUCE: IB/mlx5: Check both CONFIG_ARM and CONFIG_ARM64
> net/mlx5: Fix peer pf disable hca command
> UBUNTU: SAUCE: net/mlx5: Check eswitch manager for all relevant FS command
> UBUNTU: SAUCE: net/mlx5: E-Switch, Have vport placeholder for
> ECPF eswich manager
>
> Eli Britstein (1):
> flow_offload: Fix flow action infrastructure
>
> Eran Ben Elisha (10):
> devlink: Add health buffer support
> devlink: Add health reporter create/destroy functionality
> devlink: Add health report functionality
> devlink: Add health get command
> devlink: Add health set command
> devlink: Add health recover command
> devlink: Add health diagnose command
> devlink: Add health dump {get,clear} commands
> net/mlx5e: Add TX reporter support
> net/mlx5e: Add TX timeout support for mlx5e TX reporter
>
> Gal Pressman (1):
> RDMA: Add indication for in kernel API support to IB device
>
> Greg Kroah-Hartman (1):
> infiniband: mlx5: no need to check return value of
> debugfs_create functions
>
> Huy Nguyen (1):
> net/mlx5: Support ndo bridge_setlink and getlink
>
> Jakub Kicinski (4):
> ethtool: add compat for devlink info
> devlink: fix condition for compat device info
> devlink: don't allocate attrs on the stack
> devlink: add device information API
>
> Jason Gunthorpe (29):
> IB/{core,hw}: Have ib_umem_get extract the ib_ucontext from ib_udata
> RDMA/device: Use __ib_device_get_by_name() in ib_device_rename()
> coding-style: Clarify the expectations around bool
> net/mlx5: Make mlx5_cmd_exec_cb() a safe API
> RDMA/device: Check that the rename is nop under the lock
> RDMA/device: Ensure that security memory is always freed
> RDMA/device: Call ib_cache_release_one() only from ib_device_release()
> RDMA/device: Get rid of reg_state
> RDMA/device: Use an ida instead of a free page in alloc_name
> RDMA/devices: Use xarray to store the clients
> RDMA/devices: Use xarray to store the client_data
> RDMA/devices: Re-organize device.c locking
> lib/scatterlist: Provide a DMA page iterator
> RDMA/uverbs: Fix an error flow in ib_uverbs_poll_cq
> RDMA: Add and use rdma_for_each_port
> RDMA/device: Consolidate ib_device per_port data into one place
> RDMA/cache: Move the cache per-port data into the main ib_port_data
> RDMA/device: Add ib_device_set_netdev() as an alternative to get_netdev
> RDMA/device: Add ib_device_get_by_netdev()
> RDMA/rxe: Use ib_device_get_by_netdev() instead of open coding
> RDMA/device: Provide APIs from the core code to help unregistration
> RDMA/rxe: Use driver_unregister and new unregistration API
> RDMA/rxe: Add ib_device_get_by_name() and use it in rxe
> RDMA/rxe: Close a race after ib_register_device
> IB/mlx5: Remove references to uboject->context
> IB: When attrs.udata/ufile is available use that instead of uobject
> RDMA/drivers: Convert easy drivers to use ib_device_set_netdev()
> RDMA: Remove rdma_user_mmap_page
> RDMA/core: Clear out the udata before error unwind
>
> Jianbo Liu (1):
> UBUNTU: SAUCE: RDMA/mlx5: Add vport metadata matching for IB representors
>
> Leon Romanovsky (49):
> RDMA: Clean structures from CONFIG_INFINIBAND_ON_DEMAND_PAGING
> RDMA/core: Don't depend device ODP capabilities on kconfig option
> RDMA/mlx5: Introduce and reuse helper to identify ODP MR
> RDMA/mlx5: Embed into the code flow the ODP config option
> RDMA/mlx5: Delete declaration of already removed function
> RDMA: Clear PD objects during their allocation
> RDMA: Clear CQ objects during their allocation
> RDMA: Clear CTX objects during their allocation
> RDMA/mad: Reduce MAD scope to mlx5_ib only
> RDMA: Provide safe ib_alloc_device() function
> RDMA/nldev: Dynamically generate restrack dumpit callbacks
> RDMA/nldev: Factor out the PID namespace check
> RDMA/nldev: Prepare CAP_NET_ADMIN checks for .doit callbacks
> RDMA/core: Simplify restrack interface
> RDMA/restrack: Refactor user/kernel restrack additions
> RDMA/core: Use the ops infrastructure to keep all callbacks in one place
> RDMA/cma: Remove CM_ID statistics provided by rdma-cm module
> RDMA/core: Share driver structure size with core
> RDMA: Handle PD allocations by IB/core
> net/mlx5: Align ODP capability function with netdev coding style
> RDMA/restrack: Convert internal DB from hash to XArray
> RDMA/restrack: Translate from ID to restrack object
> RDMA/nldev: Add resource tracker doit callback
> RDMA/restrack: Reduce scope of synchronization lock while updating DB
> RDMA/restrack: Hide restrack DB from IB/core
> net/mlx5: Factor out HCA capabilities functions
> RDMA/restrack: Prepare restrack_root to addition of extra fields per-type
> RDMA/nldev: Share with user-space object IDs
> RDMA/nldev: Provide parent IDs for PD, MR and QP objects
> RDMA/nldev: Connect QP number to .doit callback
> RDMA/nldev: Don't expose number of not-visible entries
> net/mlx5e: Add missing static function annotation
> net/mlx5: Delete unused FPGA QPN variable
> RDMA/iwcm: Fix string truncation error
> RDMA: Handle ucontext allocations by IB/core
> RDMA/uverbs: Don't do double free of allocated PD
> RDMA/netlink: Remove unused data structure
> RDMA/core: Don't compare specific bit after boolean AND
> RDMA/cma: Set proper port number as index
> RDMA/mlx5: Cleanup WQE page fault handler
> RDMA/cm: Remove useless zeroing of static global variable
> RDMA/cm: Move debug counters to be under relevant IB device
> RDMA/nldev: Return device protocol
> RDMA/core: Support object allocation in atomic context
> RDMA: Handle AH allocations by IB/core
> RDMA: Handle SRQ allocations by IB/core
> RDMA/rdmavt: Catch use-after-free access of AH structures
> RDMA/mlx5: Remove MAYEXEC flag
> RDMA/device: Don't fire uevent before device is fully initialized
>
> Maor Gottlieb (3):
> IB/mlx5: Don't override existing ip_protocol
> RDMA/mlx5: Add query e-switch vport context to devx white list
> UBUNTU: SAUCE: RDMA/mlx5: Consider eswitch encap mode
>
> Mark Bloch (18):
> RDMA/mlx5: Fix memory leak in case we fail to add an IB device
> net/mlx5: E-Switch, add a new prio to be used by the RDMA side
> RDMA/mlx5: Move netdev info into the port struct
> RDMA/mlx5: Free IB device on remove
> RDMA/mlx5: Move ports allocation to outside of INIT stage
> RDMA/mlx5: Use correct size for device resources
> RDMA/mlx5: Move rep into port struct
> RDMA/mlx5: Move default representors SQ steering to rule to modify QP
> RDMA/mlx5: Refactor netdev affinity code
> RDMA/mlx5: Move SMI caps logic
> RDMA/mlx5: Move to single device multiport ports in switchdev mode
> RDMA/mlx5: Remove VF representor profile
> RDMA/mlx5: Access the prio bypass inside the FDB flow table namespace
> RDMA/mlx5: Create flow table with max size supported
> RDMA/mlx5: Allow inserting a steering rule to the FDB
> RDMA/mlx5: Allow DEVX and raw creation flow on reps
> RDMA/mlx5: Initialize roce port info before multiport master init
> RDMA/mlx5: Don't create IB representors when in multiport RoCE mode
>
> Mark Zhang (2):
> UBUNTU: SAUCE: net/mlx5: Add rts2rts_qp_counters_set_id field in hca cap
> UBUNTU: SAUCE: IB/core: udp_sport support for sa_path and rdma_ah
>
> Moni Shoua (17):
> net/mlx5: Add XRC transport to ODP device capabilities layout
> net/mlx5: Set ODP SRQ support in firmware
> IB/mlx5: Fix the locking of SRQ objects in ODP events
> IB/core: Allocate a bit for SRQ ODP support
> IB/uverbs: Expose XRC ODP device capabilities
> IB/mlx5: Remove useless check in ODP handler
> IB/mlx5: Clean mlx5_ib_mr_responder_pfault_handler() signature
> IB/mlx5: Add XRC initiator ODP support
> IB/mlx5: Let read user wqe also from SRQ buffer
> IB/mlx5: Add ODP SRQ support
> IB/mlx5: Advertise SRQ ODP support for supported transports
> IB/mlx5: Advertise XRC ODP support
> IB/mlx5: Protect against prefetch of invalid MR
> IB/mlx5: Validate correct PD before prefetch MR
> IB/core: Abort page fault handler silently during owning process exit
> IB/mlx5: Set correct write permissions for implicit ODP MR
> net/mlx5: ODP support for XRC transport is not enabled by default in FW
>
> Parav Pandit (40):
> RDMA: Rename port_callback to init_port
> RDMA: Introduce and use rdma_device_to_ibdev()
> IB/core: Simplify rdma cgroup registration
> IB/umad: Avoid additional device reference during open()/close()
> IB/umad: Do not check status of nonseekable_open()
> IB/mlx5: Consider vlan of lower netdev for macvlan GID entries
> devlink: Add WARN_ON to catch errors of not cleaning devlink objects
> devlink: Return right error code in case of errors for region read
> devlink: Fix list access without lock while reading region
> RDMA/core: Use simpler device_del() instead of device_unregister()
> RDMA/core: Introduce and use ib_setup_port_attrs()
> RDMA/core: Move device addition deletion to device.c
> net/mlx5: Simplify sriov enable/disable flow
> net/mlx5: Simplify mlx5_sriov_is_enabled() by using pci core API
> RDMA/core: Introduce ib_core_device to hold device
> RDMA/core: Restrict sysfs entries view to init_net
> RDMA/core: Implement compat device/sysfs tree in net namespace
> RDMA/core: Support core port attributes in non init_net
> RDMA/core: Add module param to disable device sharing among net ns
> RDMA: Check net namespace access for uverbs, umad, cma and nldev
> RDMA/core: Extend ib_device_get_by_index for net namespace
> RDMA/core: Add interface to read device namespace sharing mode
> RDMA/core: Add command to set ib_core device net namspace sharing mode
> RDMA/core: Avoid freeing netdevs in disable_device()
> RDMA/core: Introduce a helper function to change net namespace
> of rdma device
> RDMA/core: Add a netlink command to change net namespace of rdma device
> IB/core: Allow vlan link local address based RoCE GIDs
> UBUNTU: SAUCE: net/mlx5_core: Add debugfs for flow steering
> UBUNTU: SAUCE: net/mlx5: Add per-namespace flow table default
> miss action support
> UBUNTU: SAUCE: net/mlx5: Create bypass and loopback flow
> steering namespaces for RDMA RX
> UBUNTU: SAUCE: RDMA/mlx5: RDMA_RX flow type support for user applications
> RDMA/core: Do not invoke init_port on compat devices
> RDMA/rxe: Consider skb reserve space based on netdev of GID
> IB/cm: Reduce dependency on gid attribute ndev check
> RDMA: Introduce and use GID attr helper to read RoCE L2 fields
> RDMA/cma: Use rdma_read_gid_attr_ndev_rcu to access netdev
> RDMA/core: Allow detaching gid attribute netdevice for RoCE
> RDMA/core: Change system parameters callback from dumpit to doit
> {IB, net}/mlx5: No need to typecast from void* to mlx5_ib_dev*
> {IB,net}/mlx5: Constify rep ops functions pointers
>
> Saeed Mahameed (2):
> net/mlx5: Fix compilation warning in eq.c
> net/mlx5: Fix broken hca cap offset
>
> Shamir Rabinovitch (10):
> IB/{core,uverbs}: Move ib_umem_xxx functions from ib_core to ib_uverbs
> IB/uverbs: Add ib_ucontext to uverbs_attr_bundle sent from ioctl
> and cmd flows
> IB/verbs: Add helper function rdma_udata_to_drv_context
> IB/{hw,sw}: Remove 'uobject->context' dependency in object creation APIs
> IB: ucontext should be set properly for all cmd & ioctl paths
> IB: Pass uverbs_attr_bundle down uobject destroy path
> IB: Pass uverbs_attr_bundle down ib_x destroy path
> IB: Remove 'uobject->context' dependency in object destroy APIs
> IB: Pass only ib_udata in function prototypes
> RDMA/uverbs: Initialize uverbs_attr_bundle ucontext in
> ib_uverbs_get_context
>
> Steve Wise (1):
> RDMA/core: Add RDMA_NLDEV_CMD_NEWLINK/DELLINK support
>
> Vu Pham (2):
> UBUNTU: SAUCE: RDMA/mlx5: Set port state to NOP for invalid port_num
> UBUNTU: SAUCE: net/mlx5: Support modifying max_sfs
>
> Wen-chien Jesse Sung (1):
> UBUNTU: [Config] updates for linux-bluefield
>
> Yevgeny Kliteynik (2):
> net/mlx5: Geneve, Add basic Geneve encap/decap flow table capabilities
> net/mlx5: Geneve, Add flow table capabilities for Geneve decap
> with TLV options
>
> Yishai Hadas (12):
> IB/mlx5: DEVX handling for indirection MKEY
> IB/mlx5: Manage indirection mkey upon DEVX flow for ODP
> IB/mlx5: Add support for ODP for DEVX indirection mkey
> IB/mlx5: Introduce MLX5_IB_OBJECT_DEVX_ASYNC_CMD_FD
> IB/mlx5: Introduce async DEVX obj query API
> IB/mlx5: Implement the file ops of DEVX async command FD
> IB/mlx5: Implement DEVX hot unplug for async command FD
> IB/mlx5: Fix bad flow upon DEVX mkey creation
> IB/mlx5: Use mlx5 core to create/destroy a DEVX DCT
> IB/mlx5: Verify DEVX general object type correctly
> net/mlx5: Set completion EQs as shared resources
> net/mlx5: Fix mlx5_core_destroy_cq() error flow
>
> root (1):
> UBUNTU: SAUCE: net/mlx5: Expose eswitch encap mode
>
> .clang-format | 2 +
> Documentation/networking/devlink-health.txt | 86 +
> Documentation/process/coding-style.rst | 38 +-
> .../abi/5.0.0-1002.11/arm64/bluefield.modules | 13 +-
> debian.bluefield/config/annotations | 11 +
> debian.bluefield/config/config.common.ubuntu | 30 +-
> drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c | 8 +-
> drivers/infiniband/Kconfig | 15 +-
> drivers/infiniband/core/Makefile | 4 +-
> drivers/infiniband/core/addr.c | 1 +
> drivers/infiniband/core/cache.c | 242 ++-
> drivers/infiniband/core/cgroup.c | 5 +-
> drivers/infiniband/core/cm.c | 52 +-
> drivers/infiniband/core/cma.c | 107 +-
> drivers/infiniband/core/core_priv.h | 47 +-
> drivers/infiniband/core/cq.c | 21 +-
> drivers/infiniband/core/device.c | 1933 +++++++++++++++-----
> drivers/infiniband/core/iwcm.c | 6 +-
> drivers/infiniband/core/mad.c | 4 +-
> drivers/infiniband/core/netlink.c | 4 +-
> drivers/infiniband/core/nldev.c | 605 ++++--
> drivers/infiniband/core/rdma_core.c | 102 +-
> drivers/infiniband/core/rdma_core.h | 13 +-
> drivers/infiniband/core/restrack.c | 210 ++-
> drivers/infiniband/core/restrack.h | 28 +
> drivers/infiniband/core/security.c | 39 +-
> drivers/infiniband/core/sysfs.c | 163 +-
> drivers/infiniband/core/umem.c | 13 +-
> drivers/infiniband/core/umem_odp.c | 2 +-
> drivers/infiniband/core/user_mad.c | 62 +-
> drivers/infiniband/core/uverbs.h | 3 +-
> drivers/infiniband/core/uverbs_cmd.c | 156 +-
> drivers/infiniband/core/uverbs_ioctl.c | 26 +-
> drivers/infiniband/core/uverbs_main.c | 69 +-
> drivers/infiniband/core/uverbs_std_types.c | 52 +-
> .../infiniband/core/uverbs_std_types_counters.c | 5 +-
> drivers/infiniband/core/uverbs_std_types_cq.c | 12 +-
> drivers/infiniband/core/uverbs_std_types_dm.c | 9 +-
> .../infiniband/core/uverbs_std_types_flow_action.c | 5 +-
> drivers/infiniband/core/uverbs_std_types_mr.c | 9 +-
> drivers/infiniband/core/uverbs_uapi.c | 15 +-
> drivers/infiniband/core/verbs.c | 224 +--
> drivers/infiniband/hw/bnxt_re/ib_verbs.c | 235 +--
> drivers/infiniband/hw/bnxt_re/ib_verbs.h | 46 +-
> drivers/infiniband/hw/bnxt_re/main.c | 20 +-
> drivers/infiniband/hw/bnxt_re/qplib_fp.c | 12 +-
> drivers/infiniband/hw/bnxt_re/qplib_fp.h | 4 +-
> drivers/infiniband/hw/bnxt_re/qplib_sp.c | 12 +-
> drivers/infiniband/hw/bnxt_re/qplib_sp.h | 4 +-
> drivers/infiniband/hw/cxgb3/iwch.c | 2 +-
> drivers/infiniband/hw/cxgb3/iwch_provider.c | 105 +-
> drivers/infiniband/hw/cxgb4/cq.c | 17 +-
> drivers/infiniband/hw/cxgb4/device.c | 2 +-
> drivers/infiniband/hw/cxgb4/iw_cxgb4.h | 19 +-
> drivers/infiniband/hw/cxgb4/mem.c | 9 +-
> drivers/infiniband/hw/cxgb4/provider.c | 70 +-
> drivers/infiniband/hw/cxgb4/qp.c | 47 +-
> drivers/infiniband/hw/hfi1/sysfs.c | 16 +-
> drivers/infiniband/hw/hfi1/verbs.c | 2 +-
> drivers/infiniband/hw/hns/Kconfig | 1 -
> drivers/infiniband/hw/hns/hns_roce_ah.c | 36 +-
> drivers/infiniband/hw/hns/hns_roce_cq.c | 42 +-
> drivers/infiniband/hw/hns/hns_roce_db.c | 6 +-
> drivers/infiniband/hw/hns/hns_roce_device.h | 39 +-
> drivers/infiniband/hw/hns/hns_roce_hw_v1.c | 45 +-
> drivers/infiniband/hw/hns/hns_roce_hw_v1.h | 2 +-
> drivers/infiniband/hw/hns/hns_roce_hw_v2.c | 34 +-
> drivers/infiniband/hw/hns/hns_roce_main.c | 63 +-
> drivers/infiniband/hw/hns/hns_roce_mr.c | 13 +-
> drivers/infiniband/hw/hns/hns_roce_pd.c | 26 +-
> drivers/infiniband/hw/hns/hns_roce_qp.c | 26 +-
> drivers/infiniband/hw/hns/hns_roce_srq.c | 59 +-
> drivers/infiniband/hw/i40iw/i40iw_cm.c | 3 +-
> drivers/infiniband/hw/i40iw/i40iw_utils.c | 1 -
> drivers/infiniband/hw/i40iw/i40iw_verbs.c | 143 +-
> drivers/infiniband/hw/mlx4/Kconfig | 1 -
> drivers/infiniband/hw/mlx4/ah.c | 103 +-
> drivers/infiniband/hw/mlx4/cq.c | 55 +-
> drivers/infiniband/hw/mlx4/doorbell.c | 8 +-
> drivers/infiniband/hw/mlx4/mad.c | 33 +-
> drivers/infiniband/hw/mlx4/main.c | 82 +-
> drivers/infiniband/hw/mlx4/mlx4_ib.h | 35 +-
> drivers/infiniband/hw/mlx4/mr.c | 20 +-
> drivers/infiniband/hw/mlx4/qp.c | 128 +-
> drivers/infiniband/hw/mlx4/srq.c | 67 +-
> drivers/infiniband/hw/mlx5/Kconfig | 1 -
> drivers/infiniband/hw/mlx5/ah.c | 33 +-
> drivers/infiniband/hw/mlx5/cmd.c | 192 +-
> drivers/infiniband/hw/mlx5/cmd.h | 10 +-
> drivers/infiniband/hw/mlx5/cong.c | 15 +-
> drivers/infiniband/hw/mlx5/cq.c | 60 +-
> drivers/infiniband/hw/mlx5/devx.c | 532 +++++-
> drivers/infiniband/hw/mlx5/doorbell.c | 6 +-
> drivers/infiniband/hw/mlx5/flow.c | 108 +-
> drivers/infiniband/hw/mlx5/ib_rep.c | 135 +-
> drivers/infiniband/hw/mlx5/ib_rep.h | 31 +-
> drivers/infiniband/hw/mlx5/mad.c | 11 +-
> drivers/infiniband/hw/mlx5/main.c | 979 ++++++----
> drivers/infiniband/hw/mlx5/mem.c | 5 +-
> drivers/infiniband/hw/mlx5/mlx5_ib.h | 165 +-
> drivers/infiniband/hw/mlx5/mr.c | 217 +--
> drivers/infiniband/hw/mlx5/odp.c | 361 +++-
> drivers/infiniband/hw/mlx5/qp.c | 425 +++--
> drivers/infiniband/hw/mlx5/srq.c | 87 +-
> drivers/infiniband/hw/mlx5/srq.h | 4 +-
> drivers/infiniband/hw/mlx5/srq_cmd.c | 24 +-
> drivers/infiniband/hw/mthca/mthca_main.c | 2 +-
> drivers/infiniband/hw/mthca/mthca_provider.c | 274 ++-
> drivers/infiniband/hw/mthca/mthca_qp.c | 13 +-
> drivers/infiniband/hw/mthca/mthca_srq.c | 21 +-
> drivers/infiniband/hw/nes/Kconfig | 2 +-
> drivers/infiniband/hw/nes/nes_cm.c | 3 +-
> drivers/infiniband/hw/nes/nes_verbs.c | 153 +-
> drivers/infiniband/hw/ocrdma/ocrdma_ah.c | 32 +-
> drivers/infiniband/hw/ocrdma/ocrdma_ah.h | 6 +-
> drivers/infiniband/hw/ocrdma/ocrdma_hw.c | 18 +-
> drivers/infiniband/hw/ocrdma/ocrdma_hw.h | 6 +-
> drivers/infiniband/hw/ocrdma/ocrdma_main.c | 24 +-
> drivers/infiniband/hw/ocrdma/ocrdma_verbs.c | 254 ++-
> drivers/infiniband/hw/ocrdma/ocrdma_verbs.h | 29 +-
> drivers/infiniband/hw/qedr/main.c | 31 +-
> drivers/infiniband/hw/qedr/qedr_roce_cm.c | 11 +-
> drivers/infiniband/hw/qedr/verbs.c | 188 +-
> drivers/infiniband/hw/qedr/verbs.h | 31 +-
> drivers/infiniband/hw/qib/qib_sysfs.c | 18 +-
> drivers/infiniband/hw/qib/qib_verbs.c | 2 +-
> drivers/infiniband/hw/usnic/usnic_ib_main.c | 6 +-
> drivers/infiniband/hw/usnic/usnic_ib_sysfs.c | 26 +-
> drivers/infiniband/hw/usnic/usnic_ib_verbs.c | 57 +-
> drivers/infiniband/hw/usnic/usnic_ib_verbs.h | 18 +-
> drivers/infiniband/hw/usnic/usnic_uiom.c | 3 +-
> drivers/infiniband/hw/usnic/usnic_uiom.h | 3 +-
> drivers/infiniband/hw/vmw_pvrdma/pvrdma_cq.c | 19 +-
> drivers/infiniband/hw/vmw_pvrdma/pvrdma_main.c | 34 +-
> drivers/infiniband/hw/vmw_pvrdma/pvrdma_mr.c | 7 +-
> drivers/infiniband/hw/vmw_pvrdma/pvrdma_qp.c | 9 +-
> drivers/infiniband/hw/vmw_pvrdma/pvrdma_srq.c | 47 +-
> drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.c | 140 +-
> drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.h | 33 +-
> drivers/infiniband/sw/rdmavt/ah.c | 38 +-
> drivers/infiniband/sw/rdmavt/ah.h | 8 +-
> drivers/infiniband/sw/rdmavt/cq.c | 7 +-
> drivers/infiniband/sw/rdmavt/cq.h | 3 +-
> drivers/infiniband/sw/rdmavt/mmap.c | 16 +-
> drivers/infiniband/sw/rdmavt/mmap.h | 6 +-
> drivers/infiniband/sw/rdmavt/mr.c | 10 +-
> drivers/infiniband/sw/rdmavt/mr.h | 7 +-
> drivers/infiniband/sw/rdmavt/pd.c | 30 +-
> drivers/infiniband/sw/rdmavt/pd.h | 6 +-
> drivers/infiniband/sw/rdmavt/qp.c | 6 +-
> drivers/infiniband/sw/rdmavt/qp.h | 2 +-
> drivers/infiniband/sw/rdmavt/srq.c | 48 +-
> drivers/infiniband/sw/rdmavt/srq.h | 7 +-
> drivers/infiniband/sw/rdmavt/vt.c | 37 +-
> drivers/infiniband/sw/rxe/rxe.c | 41 +-
> drivers/infiniband/sw/rxe/rxe.h | 14 +-
> drivers/infiniband/sw/rxe/rxe_cq.c | 10 +-
> drivers/infiniband/sw/rxe/rxe_loc.h | 18 +-
> drivers/infiniband/sw/rxe/rxe_mmap.c | 14 +-
> drivers/infiniband/sw/rxe/rxe_mr.c | 2 +-
> drivers/infiniband/sw/rxe/rxe_net.c | 89 +-
> drivers/infiniband/sw/rxe/rxe_net.h | 2 +-
> drivers/infiniband/sw/rxe/rxe_pool.c | 81 +-
> drivers/infiniband/sw/rxe/rxe_pool.h | 4 +
> drivers/infiniband/sw/rxe/rxe_qp.c | 15 +-
> drivers/infiniband/sw/rxe/rxe_queue.c | 22 +-
> drivers/infiniband/sw/rxe/rxe_queue.h | 15 +-
> drivers/infiniband/sw/rxe/rxe_srq.c | 14 +-
> drivers/infiniband/sw/rxe/rxe_sysfs.c | 36 +-
> drivers/infiniband/sw/rxe/rxe_verbs.c | 173 +-
> drivers/infiniband/sw/rxe/rxe_verbs.h | 11 +-
> drivers/infiniband/ulp/ipoib/ipoib_main.c | 4 +-
> drivers/infiniband/ulp/srp/ib_srp.c | 5 +-
> drivers/media/pci/intel/ipu3/ipu3-cio2.c | 4 +-
> drivers/net/ethernet/mellanox/mlx5/core/Makefile | 6 +-
> drivers/net/ethernet/mellanox/mlx5/core/cmd.c | 55 +-
> drivers/net/ethernet/mellanox/mlx5/core/cq.c | 9 +-
> drivers/net/ethernet/mellanox/mlx5/core/ecpf.c | 2 +-
> drivers/net/ethernet/mellanox/mlx5/core/en.h | 18 +-
> .../ethernet/mellanox/mlx5/core/en/monitor_stats.c | 2 +-
> drivers/net/ethernet/mellanox/mlx5/core/en/port.c | 139 +-
> drivers/net/ethernet/mellanox/mlx5/core/en/port.h | 16 +-
> .../net/ethernet/mellanox/mlx5/core/en/reporter.h | 15 +
> .../ethernet/mellanox/mlx5/core/en/reporter_tx.c | 356 ++++
> .../net/ethernet/mellanox/mlx5/core/en_ethtool.c | 281 ++-
> drivers/net/ethernet/mellanox/mlx5/core/en_main.c | 245 +--
> drivers/net/ethernet/mellanox/mlx5/core/en_rep.c | 15 +-
> drivers/net/ethernet/mellanox/mlx5/core/en_rep.h | 2 +-
> drivers/net/ethernet/mellanox/mlx5/core/en_tx.c | 2 +-
> drivers/net/ethernet/mellanox/mlx5/core/eq.c | 28 +-
> drivers/net/ethernet/mellanox/mlx5/core/eswitch.c | 11 +
> drivers/net/ethernet/mellanox/mlx5/core/eswitch.h | 7 +-
> .../ethernet/mellanox/mlx5/core/eswitch_offloads.c | 38 +-
> drivers/net/ethernet/mellanox/mlx5/core/events.c | 75 +
> .../net/ethernet/mellanox/mlx5/core/fpga/core.c | 2 -
> drivers/net/ethernet/mellanox/mlx5/core/fs_cmd.c | 14 +-
> drivers/net/ethernet/mellanox/mlx5/core/fs_core.c | 271 ++-
> drivers/net/ethernet/mellanox/mlx5/core/fs_core.h | 18 +-
> .../net/ethernet/mellanox/mlx5/core/fs_debugfs.c | 1324 ++++++++++++++
> .../net/ethernet/mellanox/mlx5/core/fs_debugfs.h | 109 ++
> drivers/net/ethernet/mellanox/mlx5/core/lib/eq.h | 2 +-
> drivers/net/ethernet/mellanox/mlx5/core/mad.c | 75 -
> drivers/net/ethernet/mellanox/mlx5/core/main.c | 89 +-
> .../net/ethernet/mellanox/mlx5/core/meddev/mdev.c | 26 +-
> .../net/ethernet/mellanox/mlx5/core/meddev/sf.c | 153 +-
> .../net/ethernet/mellanox/mlx5/core/meddev/sf.h | 6 +-
> .../net/ethernet/mellanox/mlx5/core/mlx5_core.h | 6 +-
> drivers/net/ethernet/mellanox/mlx5/core/mr.c | 11 +-
> drivers/net/ethernet/mellanox/mlx5/core/port.c | 106 --
> drivers/net/ethernet/mellanox/mlx5/core/qp.c | 6 +-
> drivers/net/ethernet/mellanox/mlx5/core/rdma.c | 2 +-
> drivers/net/ethernet/mellanox/mlx5/core/sriov.c | 51 +-
> drivers/net/ethernet/mellanox/mlx5/core/transobj.c | 18 +-
> include/linux/cgroup_rdma.h | 2 +-
> include/linux/mlx5/device.h | 5 +
> include/linux/mlx5/driver.h | 40 +-
> include/linux/mlx5/eswitch.h | 32 +-
> include/linux/mlx5/fs.h | 2 +
> include/linux/mlx5/mlx5_ifc.h | 213 ++-
> include/linux/mlx5/port.h | 30 +-
> include/linux/mlx5/qp.h | 3 +-
> include/linux/mlx5/transobj.h | 3 +
> include/linux/mlx5/vport.h | 3 +-
> include/linux/scatterlist.h | 49 +-
> include/net/devlink.h | 175 +-
> include/net/flow_offload.h | 2 +-
> include/rdma/ib_cache.h | 4 +
> include/rdma/ib_sa.h | 13 +
> include/rdma/ib_umem.h | 8 +-
> include/rdma/ib_umem_odp.h | 26 +-
> include/rdma/ib_verbs.h | 544 ++++--
> include/rdma/rdma_netlink.h | 11 +
> include/rdma/rdma_vt.h | 8 +-
> include/rdma/restrack.h | 58 +-
> include/rdma/uverbs_ioctl.h | 18 +
> include/rdma/uverbs_std_types.h | 28 +-
> include/rdma/uverbs_types.h | 19 +-
> include/trace/events/devlink.h | 62 +
> include/uapi/linux/devlink.h | 35 +
> include/uapi/rdma/ib_user_verbs.h | 2 +
> include/uapi/rdma/mlx5-abi.h | 2 +
> include/uapi/rdma/mlx5_user_ioctl_cmds.h | 20 +
> include/uapi/rdma/mlx5_user_ioctl_verbs.h | 13 +
> include/uapi/rdma/rdma_netlink.h | 70 +-
> kernel/cgroup/rdma.c | 5 +-
> lib/scatterlist.c | 26 +
> net/core/devlink.c | 1593 ++++++++++++++--
> net/core/ethtool.c | 7 +
> scripts/checkpatch.pl | 13 -
> 249 files changed, 12785 insertions(+), 5840 deletions(-)
> create mode 100644 Documentation/networking/devlink-health.txt
> create mode 100644 drivers/infiniband/core/restrack.h
> create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/en/reporter.h
> create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/en/reporter_tx.c
> create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/fs_debugfs.c
> create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/fs_debugfs.h
> delete mode 100644 drivers/net/ethernet/mellanox/mlx5/core/mad.c
>
Didn't really review all that code - since testing is good and I assume they know what they're doing:
Acked-by: Khalid Elmously <khalid.elmously at canonical.com>
More information about the kernel-team
mailing list