IB/mlx5: Fix DEVX support for MLX5_CMD_OP_INIT2INIT_QP command
authorMark Zhang <markz@mellanox.com>
Wed, 27 May 2020 13:57:03 +0000 (16:57 +0300)
committerJason Gunthorpe <jgg@mellanox.com>
Wed, 27 May 2020 18:53:21 +0000 (15:53 -0300)
The commit citied in the Fixes line wasn't complete and solved
only part of the problems. Update the mlx5_ib to properly support
MLX5_CMD_OP_INIT2INIT_QP command in the DEVX, that is required when
modify the QP tx_port_affinity.

Fixes: 819f7427bafd ("RDMA/mlx5: Add init2init as a modify command")
Link: https://lore.kernel.org/r/20200527135703.482501-1-leon@kernel.org
Signed-off-by: Mark Zhang <markz@mellanox.com>
Reviewed-by: Maor Gottlieb <maorg@mellanox.com>
Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
drivers/infiniband/hw/mlx5/devx.c

index 3047e7d..9454a66 100644 (file)
@@ -495,6 +495,10 @@ static u64 devx_get_obj_id(const void *in)
                obj_id = get_enc_obj_id(MLX5_CMD_OP_CREATE_QP,
                                        MLX5_GET(rst2init_qp_in, in, qpn));
                break;
+       case MLX5_CMD_OP_INIT2INIT_QP:
+               obj_id = get_enc_obj_id(MLX5_CMD_OP_CREATE_QP,
+                                       MLX5_GET(init2init_qp_in, in, qpn));
+               break;
        case MLX5_CMD_OP_INIT2RTR_QP:
                obj_id = get_enc_obj_id(MLX5_CMD_OP_CREATE_QP,
                                        MLX5_GET(init2rtr_qp_in, in, qpn));