Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2246edfa authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull more rdma updates from Doug Ledford:
 "Items of note:

   - two patches fix a regression in the 4.15 kernel. The 4.14 kernel
     worked fine with NVMe over Fabrics and mlx5 adapters. That broke in
     4.15. The fix is here.

   - one of the patches (the endian notation patch from Lijun) looks
     like a lot of lines of change, but it's mostly mechanical in
     nature. It amounts to the biggest chunk of change in it (it's about
     2/3rds of the overall pull request).

  Summary:

   - Clean up some function signatures in rxe for clarity

   - Tidy the RDMA netlink header to remove unimplemented constants

   - bnxt_re driver fixes, one is a regression this window.

   - Minor hns driver fixes

   - Various fixes from Dan Carpenter and his tool

   - Fix IRQ cleanup race in HFI1

   - HF1 performance optimizations and a fix to report counters in the right units

   - Fix for an IPoIB startup sequence race with the external manager

   - Oops fix for the new kabi path

   - Endian cleanups for hns

   - Fix for mlx5 related to the new automatic affinity support"

* tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma: (38 commits)
  net/mlx5: increase async EQ to avoid EQ overrun
  mlx5: fix mlx5_get_vector_affinity to start from completion vector 0
  RDMA/hns: Fix the endian problem for hns
  IB/uverbs: Use the standard kConfig format for experimental
  IB: Update references to libibverbs
  IB/hfi1: Add 16B rcvhdr trace support
  IB/hfi1: Convert kzalloc_node and kcalloc to use kcalloc_node
  IB/core: Avoid a potential OOPs for an unused optional parameter
  IB/core: Map iWarp AH type to undefined in rdma_ah_find_type
  IB/ipoib: Fix for potential no-carrier state
  IB/hfi1: Show fault stats in both TX and RX directions
  IB/hfi1: Remove blind constants from 16B update
  IB/hfi1: Convert PortXmitWait/PortVLXmitWait counters to flit times
  IB/hfi1: Do not override given pcie_pset value
  IB/hfi1: Optimize process_receive_ib()
  IB/hfi1: Remove unnecessary fecn and becn fields
  IB/hfi1: Look up ibport using a pointer in receive path
  IB/hfi1: Optimize packet type comparison using 9B and bypass code paths
  IB/hfi1: Compute BTH only for RDMA_WRITE_LAST/SEND_LAST packet
  IB/hfi1: Remove dependence on qp->s_hdrwords
  ...
parents 3ff1b28c 03ecdd2d
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -5,7 +5,7 @@ USERSPACE VERBS ACCESS
  described in chapter 11 of the InfiniBand Architecture Specification.

  To use the verbs, the libibverbs library, available from
  http://www.openfabrics.org/, is required.  libibverbs contains a
  https://github.com/linux-rdma/rdma-core, is required. libibverbs contains a
  device-independent API for using the ib_uverbs interface.
  libibverbs also requires appropriate device-dependent kernel and
  userspace driver for your InfiniBand hardware.  For example, to use
+1 −1
Original line number Diff line number Diff line
@@ -6946,7 +6946,7 @@ INFINIBAND SUBSYSTEM
M:	Doug Ledford <dledford@redhat.com>
M:	Jason Gunthorpe <jgg@mellanox.com>
L:	linux-rdma@vger.kernel.org
W:	http://www.openfabrics.org/
W:	https://github.com/linux-rdma/rdma-core
Q:	http://patchwork.kernel.org/project/linux-rdma/list/
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma.git
S:	Supported
+4 −3
Original line number Diff line number Diff line
@@ -20,7 +20,8 @@ config INFINIBAND_USER_MAD
	  Userspace InfiniBand Management Datagram (MAD) support.  This
	  is the kernel side of the userspace MAD support, which allows
	  userspace processes to send and receive MADs. You will also
	  need libibumad from <http://www.openfabrics.org/downloads/management/>.
	  need libibumad from rdma-core
	  <https://github.com/linux-rdma/rdma-core>.

config INFINIBAND_USER_ACCESS
	tristate "InfiniBand userspace access (verbs and CM)"
@@ -32,10 +33,10 @@ config INFINIBAND_USER_ACCESS
	  to set up connections and directly access InfiniBand
	  hardware for fast-path operations.  You will also need
	  libibverbs, libibcm and a hardware driver library from
	  <http://www.openfabrics.org/git/>.
	  rdma-core <https://github.com/linux-rdma/rdma-core>.

config INFINIBAND_EXP_USER_ACCESS
	bool "Allow experimental support for Infiniband ABI"
	bool "Enable the full uverbs ioctl interface (EXPERIMENTAL)"
	depends on INFINIBAND_USER_ACCESS
	---help---
	  IOCTL based ABI support for Infiniband. This allows userspace
+3 −1
Original line number Diff line number Diff line
@@ -499,8 +499,10 @@ static int nldev_res_get_doit(struct sk_buff *skb, struct nlmsghdr *nlh,
		return -EINVAL;

	msg = nlmsg_new(NLMSG_DEFAULT_SIZE, GFP_KERNEL);
	if (!msg)
	if (!msg) {
		ret = -ENOMEM;
		goto err;
	}

	nlh = nlmsg_put(msg, NETLINK_CB(skb).portid, nlh->nlmsg_seq,
			RDMA_NL_GET_TYPE(RDMA_NL_NLDEV, RDMA_NLDEV_CMD_RES_GET),
+1 −1
Original line number Diff line number Diff line
@@ -316,7 +316,7 @@ static int uverbs_create_cq_handler(struct ib_device *ib_dev,
	cq->uobject       = &obj->uobject;
	cq->comp_handler  = ib_uverbs_comp_handler;
	cq->event_handler = ib_uverbs_cq_event_handler;
	cq->cq_context    = &ev_file->ev_queue;
	cq->cq_context    = ev_file ? &ev_file->ev_queue : NULL;
	obj->uobject.object = cq;
	obj->uobject.user_handle = user_handle;
	atomic_set(&cq->usecnt, 0);
Loading