Merge branch 'mlx5-vport-loopback' into rdma.get
authorDoug Ledford <dledford@redhat.com>
Sat, 22 Sep 2018 00:41:58 +0000 (20:41 -0400)
committerDoug Ledford <dledford@redhat.com>
Sat, 22 Sep 2018 00:41:58 +0000 (20:41 -0400)
For dependencies, branch based on 'mlx5-next' of
    git://git.kernel.org/pub/scm/linux/kernel/git/mellanox/linux.git

mlx5 mcast/ucast loopback control enhancements from Leon Romanovsky:

====================
This is short series from Mark which extends handling of loopback
traffic. Originally mlx5 IB dynamically enabled/disabled both unicast
and multicast based on number of users. However RAW ethernet QPs need
more granular access.
====================

Fixed failed automerge in mlx5_ib.h (minor context conflict issue)

mlx5-vport-loopback branch:
    RDMA/mlx5: Enable vport loopback when user context or QP mandate
    RDMA/mlx5: Allow creating RAW ethernet QP with loopback support
    RDMA/mlx5: Refactor transport domain bookkeeping logic
    net/mlx5: Rename incorrect naming in IFC file

Signed-off-by: Doug Ledford <dledford@redhat.com>
1  2 
drivers/infiniband/hw/mlx5/main.c
drivers/infiniband/hw/mlx5/mlx5_ib.h
drivers/infiniband/hw/mlx5/qp.c

Simple merge
index dc34ffa4c8b331de1ac3a062db51d8c38bd3f3a1,8376408e2bc96e8e8b4c81e75636dfdfd9874538..a28d04d4c9df8a4d36151ffda594f4ddf4cbb786
@@@ -865,12 -858,17 +865,20 @@@ to_mcounters(struct ib_counters *ibcntr
        return container_of(ibcntrs, struct mlx5_ib_mcounters, ibcntrs);
  }
  
 +int parse_flow_flow_action(struct mlx5_ib_flow_action *maction,
 +                         bool is_egress,
 +                         struct mlx5_flow_act *action);
+ struct mlx5_ib_lb_state {
+       /* protect the user_td */
+       struct mutex            mutex;
+       u32                     user_td;
+       int                     qps;
+       bool                    enabled;
+ };
  struct mlx5_ib_dev {
        struct ib_device                ib_dev;
 -      const struct uverbs_object_tree_def *driver_trees[6];
 +      const struct uverbs_object_tree_def *driver_trees[7];
        struct mlx5_core_dev            *mdev;
        struct mlx5_roce                roce[MLX5_MAX_PORTS];
        int                             num_ports;
Simple merge