IB/mlx4: Add support for RSS QP
authorGuy Levi <guyle@mellanox.com>
Tue, 4 Jul 2017 13:24:26 +0000 (16:24 +0300)
committerDoug Ledford <dledford@redhat.com>
Mon, 24 Jul 2017 14:45:53 +0000 (10:45 -0400)
commit3078f5f1bd8b6c8aef77b8ef4d49671fa6eb058e
treed97ed3b34b7557b66597db74afd4dbe76675658e
parentb8d46ca035060e70f5f0da849d86720752d5aa17
IB/mlx4: Add support for RSS QP

Add support to work with a RSS QP by using an indirection table object
upon QP creation. Other related QP verbs (e.g. modify/destroy/query) were
updated as well for that QP mode.

Notes:
- The RX hash properties are supplied as driver private data.
- The RSS QP port is used on the associated WQs in its indirection
  table. Applying different ports during WQ life time is not allowed.
- The expected RSS QP flow is: create, modify(RST->INIT),
  modify(RST->RTR), destroy.

Signed-off-by: Guy Levi <guyle@mellanox.com>
Reviewed-by: Yishai Hadas <yishaih@mellanox.com>
Signed-off-by: Leon Romanovsky <leon@kernel.org>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/hw/mlx4/mlx4_ib.h
drivers/infiniband/hw/mlx4/qp.c
include/uapi/rdma/mlx4-abi.h