Hi Linus, As per my previous email, this is the Mellanox specific pull request.  I kept it separate from the main RDMA pull request because my for-next area was based on 4.10-rc3 and the shared Mellanox pull request that DaveM and I both needed to take required an early snapshot of Dave's net-next tree to apply properly, so my Mellanox branch was kept separate so the rest of the code would have a clean starting point. Here's the boilerplate: The following changes since commit bda65b4255ac983ce36a6c0ea6a7794f8e8fcc86:   Merge tag 'mlx5-4kuar-for-4.11' of git://git.kernel.org/pub/scm/linux/kernel/git/mellanox/linux (2017-01- 09 17:09:31 -0500) 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 cdbe33d0f82d68ff74f05502a4c26e65ec7e90bb:   IB/mlx5: Fix configuration of port capabilities (2017-02-15 09:29:37 -0500) ---------------------------------------------------------------- Mellanox specific updates for 4.11 merge window Because the Mellanox code required being based on a net-next tree, I keept it separate from the remainder of the RDMA stack submission that is based on 4.10-rc3. This branch contains: - Various mlx4 and mlx5 fixes and minor changes - Support for adding a tag match rule to flow specs - Support for cvlan offload operation for raw ethernet QPs - A change to the core IB code to recognize raw eth capabilities and   enumerate them (touches non-Mellanox code) - Implicit On-Demand Paging memory registration support ---------------------------------------------------------------- Artemy Kovalyov (6):       IB/core: Add implicit MR flag       IB/umem: Update on demand page (ODP) support       IB/umem: Indicate that process is being terminated       IB/mlx5: Add null_mkey access       IB/mlx5: Expose MR cache for mlx5_ib       IB/mlx5: Add implicit MR support Eli Cohen (2):       IB/mlx5: Fix blue flame buffer size calculation       IB/mlx5: Fix configuration of port capabilities Kamal Heib (2):       IB/mlx5: Verify that Q counters are supported       IB/mlx5: Expose Q counters groups only if they are supported by FW Leon Romanovsky (5):       IB/mlx5: Fix out-of-bound access       IB/mlx5: Return error for unsupported signature type       IB/mlx5: Remove deprecated module parameter       IB/mlx5: Replace ENOTSUPP usage with EOPNOTSUPP       IB/mlx4: Remove unused variable from function declaration Majd Dibbiny (2):       IB/mlx5: Assign DSCP for R-RoCE QPs Address Path       IB/mlx5: Add port counter support for Receive WQs Maor Gottlieb (3):       IB/mlx5: Add additional checks before processing MADs       IB/mlx5: Avoid SMP MADs from VFs       net/mlx5: Consolidate flow rules regardless their flow tag Moses Reuben (3):       IB/core: Introduce flow tag specification       IB/uverbs: Add support for flow tag       IB/mlx5: Add flow tag support Noa Osherovich (11):       IB/core: Expose vlan offloads capabilities       IB/core: Enable WQ creation and modification with cvlan offload       IB/core: Enable QP creation with cvlan offload       IB/core: Add scatter FCS flag to use in WQ creation       IB/uverbs: Expose vlan offloads capabilities       IB/uverbs: Enable WQ creation and modification with cvlan offload       IB/uverbs: Enable QP creation with cvlan offload       IB/mlx5: Expose vlan offloads capabilities       IB/mlx5: Enable WQ creation and modification with cvlan offload       IB/mlx5: Enable QP creation with cvlan offload       IB/mlx5: Support creation of a WQ with scatter FCS offload Or Gerlitz (5):       IB/core: Add raw packet protocol       IB/mlx5: Support raw packet protocol       IB/mlx4: Support raw packet protocol       IB: Add protocol for USNIC       IB: Query ports via the core instead of direct into the driver Talat Batheesh (1):       IB/mlx4: Take source GID by index from HW GID table  drivers/infiniband/core/umem.c                    |   3 -  drivers/infiniband/core/umem_odp.c                |  92 +++-  drivers/infiniband/core/umem_rbtree.c             |  21 +-  drivers/infiniband/core/uverbs.h                  |   1 +  drivers/infiniband/core/uverbs_cmd.c              |  53 ++-  drivers/infiniband/hw/cxgb3/iwch_provider.c       |   7 +-  drivers/infiniband/hw/cxgb4/provider.c            |   8 +-  drivers/infiniband/hw/hfi1/verbs.c                |   1 +  drivers/infiniband/hw/hns/hns_roce_main.c         |   7 +-  drivers/infiniband/hw/i40iw/i40iw_verbs.c         |   8 +-  drivers/infiniband/hw/mlx4/alias_GUID.c           |   1 +  drivers/infiniband/hw/mlx4/main.c                 |  27 +-  drivers/infiniband/hw/mlx4/qp.c                   |  56 ++-  drivers/infiniband/hw/mlx4/sysfs.c                |   1 +  drivers/infiniband/hw/mlx5/Makefile               |   2 +-  drivers/infiniband/hw/mlx5/cmd.c                  |  48 ++  drivers/infiniband/hw/mlx5/cmd.h                  |  40 ++  drivers/infiniband/hw/mlx5/mad.c                  |  14 +-  drivers/infiniband/hw/mlx5/main.c                 | 337 ++++++++++++ ---  drivers/infiniband/hw/mlx5/mlx5_ib.h              |  46 +-  drivers/infiniband/hw/mlx5/mr.c                   | 128 ++++--  drivers/infiniband/hw/mlx5/odp.c                  | 505 ++++++++++++++++++++--  drivers/infiniband/hw/mlx5/qp.c                   |  91 +++-  drivers/infiniband/hw/mlx5/srq.c                  |  11 +-  drivers/infiniband/hw/mthca/mthca_provider.c      |   9 +-  drivers/infiniband/hw/nes/nes_verbs.c             |   5 +-  drivers/infiniband/hw/ocrdma/ocrdma_main.c        |   9 +-  drivers/infiniband/hw/ocrdma/ocrdma_verbs.c       |   1 +  drivers/infiniband/hw/qedr/verbs.c                |   9 +-  drivers/infiniband/hw/qib/qib_verbs.c             |   1 +  drivers/infiniband/hw/usnic/usnic_ib_main.c       |   4 +-  drivers/infiniband/hw/usnic/usnic_ib_verbs.c      |   2 +-  drivers/infiniband/hw/vmw_pvrdma/pvrdma_main.c    |   5 +-  drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.c   |   4 +-  drivers/infiniband/sw/rdmavt/vt.c                 |   7 +-  drivers/infiniband/sw/rxe/rxe_verbs.c             |   6 +-  drivers/net/ethernet/mellanox/mlx5/core/fs_core.c |  12 +-  include/linux/mlx5/driver.h                       |   6 +-  include/linux/mlx5/mlx5_ifc.h                     |   2 +-  include/rdma/ib_umem_odp.h                        |  21 +-  include/rdma/ib_verbs.h                           |  57 ++-  include/uapi/rdma/ib_user_verbs.h                 |  19 +-  42 files changed, 1417 insertions(+), 270 deletions(-)  create mode 100644 drivers/infiniband/hw/mlx5/cmd.c  create mode 100644 drivers/infiniband/hw/mlx5/cmd.h -- Doug Ledford     GPG KeyID: B826A3330E572FDD     Key fingerprint = AE6B 1BDA 122B 23B4 265B  1274 B826 A333 0E57 2FDD