[PULL REQUEST] Please pull rdma.git

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Linus,

This is the second group of code for the 4.7 merge window.  It looks
large, but only in one sense.  I'll get to that in a minute.  The list
of changes here breaks down as follows:

Round two of 4.7 merge window patches

- Dynamic counter infrastructure in the IB drivers  <- 1 patch
  This is a sysfs based code to allow free form access to the hardware
  counters RDMA devices might support so drivers don't need to code
  this up repeatedly themselves
- SendOnlyFullMember multicast support              <- 4 patches
- IB router support                                 <- 4 patches
- A couple misc fixes                               <- 4 or so here
- The big item on the list: hfi1 driver updates, plus moving the hfi1
  driver out of staging                             <- everything else

There was a group of 15 patches in the hfi1 list that I thought I had in
the first pull request but they weren't.  So that added to the length of
the hfi1 section here.

As far as these go, everything but the hfi1 is pretty straight forward.
The hfi1 is, if you recall, the driver that Al had complaints about how
it used the write/writev interfaces in an overloaded fashion.  The write
portion of their interface behaved like the write handler in the IB
stack proper and did bi-directional communications.  The writev
interface, on the other hand, only accepts SDMA request structures.  The
completions for those structures are sent back via an entirely different
event mechanism.  With the security patch, we put security checks on the
write interface, however, we also knew they would be going away soon.
Now, we've converted the write handler in the hfi1 driver to use ioctls
from the IB reserved magic area for its bidirectional communications.
With that change, Intel has addressed
all of the items originally on their TODO when they went into staging
(as well as many items added to the list later).  As such, I moved them
out, and since they were the last item in the staging/rdma directory,
and I don't have immediate plans to use the staging area again, I
removed the staging/rdma area.  Because of the move out of staging, as
well as a series of 5 patches in the hfi1 driver that removed code
people thought should be done in a different way and was optional to
begin with (a snoop debug interface, an eeprom driver for an eeprom
connected directory to their hfi1 chip and not via an i2c bus, and a few
other things like that), the line count, especially the removal count,
is high.

I know we have a long weekend coming up, so I wanted to get this out
before Friday so you had plenty of time to digest and look it over.  Let
me know if you see anything amiss.

Now the boilerplate:

The following changes since commit c16d2750a08c8ccaf98d65f287a8aec91bb9610d:

  IB/mlx5: Fire the CQ completion handler from tasklet (2016-05-18
10:45:49 -0400)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma.git
tags/for-linus

for you to fetch changes up to 7a226f9c32b0481b0744e2726cd7f8349b866af5:

  staging/rdma: Remove the entire rdma subdirectory of staging
(2016-05-26 12:59:34 -0400)

----------------------------------------------------------------
Round two of 4.7 merge window patches

- Dynamic counter infrastructure in the IB drivers
  This is a sysfs based code to allow free form access to the hardware
  counters RDMA devices might support so drivers don't need to code
  this up repeatedly themselves
- SendOnlyFullMember multicast support
- IB router support
- A couple misc fixes
- The big item on the list: hfi1 driver updates, plus moving the hfi1
  driver out of staging

----------------------------------------------------------------
Ashutosh Dixit (1):
      IB/hfi1: Change hfi1_init loop to preserve error returns

Christoph Lameter (1):
      IB/core: Make device counter infrastructure dynamic

Dean Luick (3):
      IB/hfi1: Remove no-op QSFP reset code
      IB/hfi1: Immediately apply congestion setting MAD
      IB/hfi1: Correct 8051 link parameter settings

Dennis Dalessandro (11):
      IB/hfi1: Remove anti-pattern in cdev init
      IB/hfi1: Remove multiple device cdev
      IB/hfi1: Remove UI char device
      IB/hfi1: Remove EPROM functionality from data device
      IB/hfi1: Remove snoop/diag interface
      IB/hfi1: Remove unused user command
      IB/hfi1: Add ioctl() interface for user commands
      IB/hfi1: Remove write(), use ioctl() for user cmds
      IB/hfi1: Add trace message in user IOCTL handling
      IB/hfi1: Do not free hfi1 cdev parent structure early
      IB/hfi1: Move driver out of staging

Doug Ledford (3):
      Merge branches 'misc-4.7-2', 'ipoib' and 'ib-router' into k.o/for-4.7
      Merge branch 'hfi1-2' into k.o/for-4.7
      staging/rdma: Remove the entire rdma subdirectory of staging

Easwar Hariharan (3):
      IB/hfi1: Ignore non-temperature warnings on a downed link
      IB/hfi1: Wait for QSFP modules to initialize
      IB/hfi1: Correct external device configuration shift

Erez Shitrit (4):
      IB/core: Introduce capabilitymask2 field in ClassPortInfo mad
      IB/SA Agent: Add support for SA agent get ClassPortInfo
      IB/core: Support new type of join-state for multicast
      IB/ipoib: Support SendOnlyFullMember MCG for SendOnly join

Honggang Li (1):
      RDMA/cxgb3: device driver frees DMA memory with different size

Ira Weiny (1):
      IB/hfi1: Remove unnecessary comment

Jakub Pawlak (1):
      IB/hfi1: Correct log message strings

Jianxin Xiong (5):
      IB/hfi1: Keep SC_USER as the last send context type
      ib_pack.h: Add opcode definition for send with invalidate
      IB/hfi1: Fix bug that blocks process on exit after port bounce
      IB/hfi1, qib: Add ieth to the packet header definitions
      IB/hfi1: Add tracing support for send with invalidate opcode

Jubin John (6):
      IB/hfi1: Remove unnecessary header
      IB/hfi1: Fix hfi_rcvhdr tracepoint
      IB/rdmavt: Use kzalloc_node
      IB/hfi1: Fix sdma_event_names[] build warning
      IB/qib: Remove unused qib_7322_intr_msgs[]
      IB/hfi1: Fix pio map initialization

Leon Romanovsky (1):
      IB/core: Integrate IB address resolution module into core

Mark Bloch (6):
      IB/MAD: Integrate ib_mad module into ib_core module
      IB/SA: Integrate ib_sa module into ib_core module
      IB/netlink: Add a new local service operation
      IB/core: Register SA ibnl client during ib_core initialization
      IB/core: Add IP to GID netlink offload
      IB/IPoIB: Allow setting the device address

Mike Marciniszyn (7):
      IB/hfi1: Fix pio wait counter double increment
      IB/hfi1: Fix potential panic with sdma drained mechanism
      IB/rdmavt: Increase CQ callback thread priority
      IB/rdmavt: Insure QP vmalloc variants zero memory
      IB/hfi1: Fix hard lockup due to not using save/restore spin lock
      IB/rdmavt: Max atomic value should be a u8
      IB/rdamvt: Fix rdmavt s_ack_queue sizing

Mitko Haralanov (2):
      IB/hfi1: Improve performance of interval RB trees
      IB/hfi1: Fix an interval RB node reference count leak

Muhammad Falak R Wani (1):
      staging/rdma/hfi1: use RCU_INIT_POINTER() when NULLing.

Sebastian Sanchez (1):
      IB/hfi1: Update pkey table properly after link down or FM start

 Documentation/infiniband/sysfs.txt                 |   12 +
 MAINTAINERS                                        |   14 +-
 drivers/infiniband/Kconfig                         |    2 +
 drivers/infiniband/core/Makefile                   |   12 +-
 drivers/infiniband/core/addr.c                     |  226 ++-
 drivers/infiniband/core/core_priv.h                |   16 +
 drivers/infiniband/core/device.c                   |   58 +
 drivers/infiniband/core/mad.c                      |   13 +-
 drivers/infiniband/core/multicast.c                |   23 +-
 drivers/infiniband/core/sa_query.c                 |  211 ++-
 drivers/infiniband/core/sysfs.c                    |  366 ++--
 drivers/infiniband/hw/Makefile                     |    1 +
 drivers/infiniband/hw/cxgb3/cxio_hal.c             |    2 +-
 drivers/infiniband/hw/cxgb3/iwch_provider.c        |  147 +-
 drivers/infiniband/hw/cxgb4/provider.c             |   58 +-
 .../{staging/rdma => infiniband/hw}/hfi1/Kconfig   |    0
 .../{staging/rdma => infiniband/hw}/hfi1/Makefile  |    2 +-
 .../rdma => infiniband/hw}/hfi1/affinity.c         |    0
 .../rdma => infiniband/hw}/hfi1/affinity.h         |    0
 .../{staging/rdma => infiniband/hw}/hfi1/aspm.h    |    0
 .../{staging/rdma => infiniband/hw}/hfi1/chip.c    |   41 +-
 .../{staging/rdma => infiniband/hw}/hfi1/chip.h    |    6 +
 .../rdma => infiniband/hw}/hfi1/chip_registers.h   |    0
 .../{staging/rdma => infiniband/hw}/hfi1/common.h  |    5 +-
 .../{staging/rdma => infiniband/hw}/hfi1/debugfs.c |    0
 .../{staging/rdma => infiniband/hw}/hfi1/debugfs.h |    0
 .../{staging/rdma => infiniband/hw}/hfi1/device.c  |   18 +-
 .../{staging/rdma => infiniband/hw}/hfi1/device.h  |    3 +-
 drivers/{staging/rdma => infiniband/hw}/hfi1/dma.c |    0
 .../{staging/rdma => infiniband/hw}/hfi1/driver.c  |    2 +-
 .../{staging/rdma => infiniband/hw}/hfi1/efivar.c  |    0
 .../{staging/rdma => infiniband/hw}/hfi1/efivar.h  |    0
 drivers/infiniband/hw/hfi1/eprom.c                 |  102 ++
 .../{staging/rdma => infiniband/hw}/hfi1/eprom.h   |    0
 .../rdma => infiniband/hw}/hfi1/file_ops.c         |  549 ++----
 .../rdma => infiniband/hw}/hfi1/firmware.c         |    0
 drivers/{staging/rdma => infiniband/hw}/hfi1/hfi.h |    7 +-
 .../{staging/rdma => infiniband/hw}/hfi1/init.c    |   22 +-
 .../{staging/rdma => infiniband/hw}/hfi1/intr.c    |    0
 .../{staging/rdma => infiniband/hw}/hfi1/iowait.h  |    0
 drivers/{staging/rdma => infiniband/hw}/hfi1/mad.c |   99 +-
 drivers/{staging/rdma => infiniband/hw}/hfi1/mad.h |    0
 .../{staging/rdma => infiniband/hw}/hfi1/mmu_rb.c  |   22 +-
 .../{staging/rdma => infiniband/hw}/hfi1/mmu_rb.h  |    0
 .../rdma => infiniband/hw}/hfi1/opa_compat.h       |    0
 .../{staging/rdma => infiniband/hw}/hfi1/pcie.c    |    0
 drivers/{staging/rdma => infiniband/hw}/hfi1/pio.c |    3 +-
 drivers/{staging/rdma => infiniband/hw}/hfi1/pio.h |    8 +-
 .../rdma => infiniband/hw}/hfi1/pio_copy.c         |    0
 .../rdma => infiniband/hw}/hfi1/platform.c         |   27 +-
 .../rdma => infiniband/hw}/hfi1/platform.h         |    1 +
 drivers/{staging/rdma => infiniband/hw}/hfi1/qp.c  |    9 +-
 drivers/{staging/rdma => infiniband/hw}/hfi1/qp.h  |    0
 .../{staging/rdma => infiniband/hw}/hfi1/qsfp.c    |    0
 .../{staging/rdma => infiniband/hw}/hfi1/qsfp.h    |    0
 drivers/{staging/rdma => infiniband/hw}/hfi1/rc.c  |    0
 drivers/{staging/rdma => infiniband/hw}/hfi1/ruc.c |    0
 .../{staging/rdma => infiniband/hw}/hfi1/sdma.c    |    4 +-
 .../{staging/rdma => infiniband/hw}/hfi1/sdma.h    |    0
 .../rdma => infiniband/hw}/hfi1/sdma_txreq.h       |    0
 .../{staging/rdma => infiniband/hw}/hfi1/sysfs.c   |    4 +-
 .../{staging/rdma => infiniband/hw}/hfi1/trace.c   |    8 +
 .../{staging/rdma => infiniband/hw}/hfi1/trace.h   |    5 +-
 .../{staging/rdma => infiniband/hw}/hfi1/twsi.c    |    0
 .../{staging/rdma => infiniband/hw}/hfi1/twsi.h    |    0
 drivers/{staging/rdma => infiniband/hw}/hfi1/uc.c  |    0
 drivers/{staging/rdma => infiniband/hw}/hfi1/ud.c  |    0
 .../rdma => infiniband/hw}/hfi1/user_exp_rcv.c     |    0
 .../rdma => infiniband/hw}/hfi1/user_exp_rcv.h     |    0
 .../rdma => infiniband/hw}/hfi1/user_pages.c       |    0
 .../rdma => infiniband/hw}/hfi1/user_sdma.c        |   18 +-
 .../rdma => infiniband/hw}/hfi1/user_sdma.h        |    0
 .../{staging/rdma => infiniband/hw}/hfi1/verbs.c   |    4 +-
 .../{staging/rdma => infiniband/hw}/hfi1/verbs.h   |    1 +
 .../rdma => infiniband/hw}/hfi1/verbs_txreq.c      |    0
 .../rdma => infiniband/hw}/hfi1/verbs_txreq.h      |    0
 drivers/infiniband/hw/i40iw/i40iw_verbs.c          |  145 +-
 drivers/infiniband/hw/qib/qib_iba7322.c            |   15 -
 drivers/infiniband/hw/qib/qib_mad.c                |    6 +-
 drivers/infiniband/hw/qib/qib_verbs.h              |    1 +
 drivers/infiniband/sw/rdmavt/cq.c                  |    1 +
 drivers/infiniband/sw/rdmavt/mr.c                  |    4 +-
 drivers/infiniband/sw/rdmavt/qp.c                  |   30 +-
 drivers/infiniband/ulp/ipoib/ipoib.h               |    4 +
 drivers/infiniband/ulp/ipoib/ipoib_ib.c            |  109 +-
 drivers/infiniband/ulp/ipoib/ipoib_main.c          |  140 ++
 drivers/infiniband/ulp/ipoib/ipoib_multicast.c     |   48 +-
 drivers/infiniband/ulp/ipoib/ipoib_verbs.c         |    3 +
 drivers/infiniband/ulp/ipoib/ipoib_vlan.c          |    2 +
 drivers/infiniband/ulp/srpt/ib_srpt.c              |    2 +-
 drivers/staging/Kconfig                            |    2 -
 drivers/staging/Makefile                           |    1 -
 drivers/staging/rdma/Kconfig                       |   27 -
 drivers/staging/rdma/Makefile                      |    2 -
 drivers/staging/rdma/hfi1/TODO                     |    6 -
 drivers/staging/rdma/hfi1/diag.c                   | 1925
--------------------
 drivers/staging/rdma/hfi1/eprom.c                  |  471 -----
 include/rdma/ib_mad.h                              |   60 +-
 include/rdma/ib_pack.h                             |    5 +
 include/rdma/ib_sa.h                               |   12 +
 include/rdma/ib_verbs.h                            |  126 +-
 include/rdma/rdma_vt.h                             |   13 +-
 include/rdma/rdmavt_qp.h                           |    5 +-
 include/uapi/rdma/hfi/hfi1_user.h                  |   80 +-
 include/uapi/rdma/rdma_netlink.h                   |   10 +
 105 files changed, 1986 insertions(+), 3400 deletions(-)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/Kconfig (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/Makefile (88%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/affinity.c (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/affinity.h (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/aspm.h (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/chip.c (99%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/chip.h (99%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/chip_registers.h (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/common.h (98%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/debugfs.c (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/debugfs.h (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/device.c (94%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/device.h (97%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/dma.c (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/driver.c (99%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/efivar.c (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/efivar.h (100%)
 create mode 100644 drivers/infiniband/hw/hfi1/eprom.c
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/eprom.h (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/file_ops.c (78%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/firmware.c (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/hfi.h (99%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/init.c (99%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/intr.c (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/iowait.h (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/mad.c (99%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/mad.h (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/mmu_rb.c (95%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/mmu_rb.h (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/opa_compat.h (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/pcie.c (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/pio.c (99%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/pio.h (98%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/pio_copy.c (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/platform.c (98%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/platform.h (99%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/qp.c (99%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/qp.h (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/qsfp.c (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/qsfp.h (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/rc.c (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/ruc.c (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/sdma.c (99%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/sdma.h (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/sdma_txreq.h (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/sysfs.c (99%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/trace.c (97%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/trace.h (99%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/twsi.c (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/twsi.h (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/uc.c (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/ud.c (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/user_exp_rcv.c (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/user_exp_rcv.h (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/user_pages.c (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/user_sdma.c (99%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/user_sdma.h (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/verbs.c (99%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/verbs.h (99%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/verbs_txreq.c (100%)
 rename drivers/{staging/rdma => infiniband/hw}/hfi1/verbs_txreq.h (100%)
 delete mode 100644 drivers/staging/rdma/Kconfig
 delete mode 100644 drivers/staging/rdma/Makefile
 delete mode 100644 drivers/staging/rdma/hfi1/TODO
 delete mode 100644 drivers/staging/rdma/hfi1/diag.c
 delete mode 100644 drivers/staging/rdma/hfi1/eprom.c


-- 
Doug Ledford <dledford@xxxxxxxxxx>
              GPG KeyID: 0E572FDD


Attachment: signature.asc
Description: OpenPGP digital signature


[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux