Commit e04360a2 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull rdma updates from Jason Gunthorpe:
 "This contains a replacement driver for Intel iWarp hardware. This new
  driver supports the old ethernet hardware and also newer chips that
  can do ROCE.

  Other than that, 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"

* tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma: (211 commits)
  RDMA/core: Always release restrack object
  RDMA/mlx5: Don't access NULL-cleared mpi pointer
  RDMA/irdma: Fix potential overflow expression in irdma_prm_get_pbles
  RDMA/irdma: Check contents of user-space irdma_mem_reg_req object
  RDMA/rxe: Missing unlock on error in get_srq_wqe()
  RDMA/cma: Fix rdma_resolve_route() memory leak
  RDMA/core/sa_query: Remove unused argument
  RDMA/cma: Fix incorrect Packet Lifetime calculation
  RDMA/cma: Protect RMW with qp_mutex
  RDMA/cma: Remove unnecessary INIT->INIT transition
  RDMA/hns: Add window selection field of congestion control
  RDMA/hfi1: Remove use of kmap()
  RDMA/irdma: Remove use of kmap()
  RDMA/bnxt_re: Fix uninitialized struct bit field rsvd1
  IB/isert: Align target max I/O size to initiator size
  RDMA/hns: Fix incorrect vlan enable bit in QPC
  MAINTAINERS: Update Broadcom RDMA maintainers
  RDMA/irdma: Use the queried port attributes
  RDMA/rxe: Fix redundant skb_put_zero
  RDMA/rxe: Fix extra copy in prepare_ack_packet
  ...
parents 514798d3 3d828754
Loading
Loading
Loading
Loading
+0 −20
Original line number Diff line number Diff line
@@ -731,26 +731,6 @@ Description:
		is the irq number of "sdma3", and M is irq number of "sdma4" in
		the /proc/interrupts file.


sysfs interface for Intel(R) X722 iWARP i40iw driver
----------------------------------------------------

What:		/sys/class/infiniband/i40iwX/hw_rev
What:		/sys/class/infiniband/i40iwX/hca_type
What:		/sys/class/infiniband/i40iwX/board_id
Date:		Jan, 2016
KernelVersion:	v4.10
Contact:	linux-rdma@vger.kernel.org
Description:
		=============== ==== ========================
		hw_rev:		(RO) Hardware revision number

		hca_type:	(RO) Show HCA type (I40IW)

		board_id:	(RO) I40IW board ID
		=============== ==== ========================


sysfs interface for QLogic qedr NIC Driver
------------------------------------------

+8 −12
Original line number Diff line number Diff line
@@ -3737,9 +3737,6 @@ F: drivers/gpio/gpio-bcm-kona.c
BROADCOM NETXTREME-E ROCE DRIVER
M:	Selvin Xavier <selvin.xavier@broadcom.com>
M:	Devesh Sharma <devesh.sharma@broadcom.com>
M:	Somnath Kotur <somnath.kotur@broadcom.com>
M:	Sriharsha Basavapatna <sriharsha.basavapatna@broadcom.com>
M:	Naresh Kumar PBS <nareshkumar.pbs@broadcom.com>
L:	linux-rdma@vger.kernel.org
S:	Supported
@@ -6779,7 +6776,6 @@ F: drivers/net/ethernet/emulex/benet/
EMULEX ONECONNECT ROCE DRIVER
M:	Selvin Xavier <selvin.xavier@broadcom.com>
M:	Devesh Sharma <devesh.sharma@broadcom.com>
L:	linux-rdma@vger.kernel.org
S:	Odd Fixes
W:	http://www.broadcom.com
@@ -9182,6 +9178,14 @@ F: drivers/net/ethernet/intel/*/
F:	include/linux/avf/virtchnl.h
F:	include/linux/net/intel/iidc.h
INTEL ETHERNET PROTOCOL DRIVER FOR RDMA
M:	Mustafa Ismail <mustafa.ismail@intel.com>
M:	Shiraz Saleem <shiraz.saleem@intel.com>
L:	linux-rdma@vger.kernel.org
S:	Supported
F:	drivers/infiniband/hw/irdma/
F:	include/uapi/rdma/irdma-abi.h
INTEL FRAMEBUFFER DRIVER (excluding 810 and 815)
M:	Maik Broemme <mbroemme@libmpq.org>
L:	linux-fbdev@vger.kernel.org
@@ -9421,14 +9425,6 @@ L: linux-pm@vger.kernel.org
S:	Supported
F:	drivers/cpufreq/intel_pstate.c
INTEL RDMA RNIC DRIVER
M:	Faisal Latif <faisal.latif@intel.com>
M:	Shiraz Saleem <shiraz.saleem@intel.com>
L:	linux-rdma@vger.kernel.org
S:	Supported
F:	drivers/infiniband/hw/i40iw/
F:	include/uapi/rdma/i40iw-abi.h
INTEL SCU DRIVERS
M:	Mika Westerberg <mika.westerberg@linux.intel.com>
S:	Maintained
+3 −2
Original line number Diff line number Diff line
@@ -92,7 +92,7 @@ static int rnbd_clt_set_dev_attr(struct rnbd_clt_dev *dev,
	dev->fua		    = !!(rsp->cache_policy & RNBD_FUA);

	dev->max_hw_sectors = sess->max_io_size / SECTOR_SIZE;
	dev->max_segments = BMAX_SEGMENTS;
	dev->max_segments = sess->max_segments;

	return 0;
}
@@ -1292,7 +1292,7 @@ find_and_get_or_create_sess(const char *sessname,
	sess->rtrs = rtrs_clt_open(&rtrs_ops, sessname,
				   paths, path_cnt, port_nr,
				   0, /* Do not use pdu of rtrs */
				   RECONNECT_DELAY, BMAX_SEGMENTS,
				   RECONNECT_DELAY,
				   MAX_RECONNECTS, nr_poll_queues);
	if (IS_ERR(sess->rtrs)) {
		err = PTR_ERR(sess->rtrs);
@@ -1306,6 +1306,7 @@ find_and_get_or_create_sess(const char *sessname,
	sess->max_io_size = attrs.max_io_size;
	sess->queue_depth = attrs.queue_depth;
	sess->nr_poll_queues = nr_poll_queues;
	sess->max_segments = attrs.max_segments;

	err = setup_mq_tags(sess);
	if (err)
+1 −4
Original line number Diff line number Diff line
@@ -20,10 +20,6 @@
#include "rnbd-proto.h"
#include "rnbd-log.h"

/* Max. number of segments per IO request, Mellanox Connect X ~ Connect X5,
 * choose minimial 30 for all, minus 1 for internal protocol, so 29.
 */
#define BMAX_SEGMENTS 29
/*  time in seconds between reconnect tries, default to 30 s */
#define RECONNECT_DELAY 30
/*
@@ -89,6 +85,7 @@ struct rnbd_clt_session {
	atomic_t		busy;
	size_t			queue_depth;
	u32			max_io_size;
	u32			max_segments;
	struct blk_mq_tag_set	tag_set;
	u32			nr_poll_queues;
	struct mutex		lock; /* protects state and devs_list */
+1 −1
Original line number Diff line number Diff line
@@ -82,7 +82,7 @@ source "drivers/infiniband/hw/mthca/Kconfig"
source "drivers/infiniband/hw/qib/Kconfig"
source "drivers/infiniband/hw/cxgb4/Kconfig"
source "drivers/infiniband/hw/efa/Kconfig"
source "drivers/infiniband/hw/i40iw/Kconfig"
source "drivers/infiniband/hw/irdma/Kconfig"
source "drivers/infiniband/hw/mlx4/Kconfig"
source "drivers/infiniband/hw/mlx5/Kconfig"
source "drivers/infiniband/hw/ocrdma/Kconfig"
Loading