IB/core: Enable QP creation with a given source QP number
authorYishai Hadas <yishaih@mellanox.com>
Thu, 8 Jun 2017 13:15:06 +0000 (16:15 +0300)
committerDoug Ledford <dledford@redhat.com>
Mon, 24 Jul 2017 14:40:45 +0000 (10:40 -0400)
Enable QP creation with a given source QP number.
The created QP will use the source QPN as its wire QP number.

This comes as a pre-patch for downstream patches in this series to
allow user space applications to accelerate traffic which is typically
handled by IPoIB ULP.

Signed-off-by: Yishai Hadas <yishaih@mellanox.com>
Reviewed-by: Maor Gottlieb <maorg@mellanox.com>
Signed-off-by: Leon Romanovsky <leon@kernel.org>
Signed-off-by: Doug Ledford <dledford@redhat.com>
include/rdma/ib_verbs.h

index 4a1444456af74c8fe3f0cce393c4425ae2c3aadc..76a74c783c503ceed229889c1468c9fc4d4d5aae 100644 (file)
@@ -1059,6 +1059,7 @@ enum ib_qp_create_flags {
        /* FREE                                 = 1 << 7, */
        IB_QP_CREATE_SCATTER_FCS                = 1 << 8,
        IB_QP_CREATE_CVLAN_STRIPPING            = 1 << 9,
+       IB_QP_CREATE_SOURCE_QPN                 = 1 << 10,
        /* reserve bits 26-31 for low level drivers' internal use */
        IB_QP_CREATE_RESERVED_START             = 1 << 26,
        IB_QP_CREATE_RESERVED_END               = 1 << 31,
@@ -1086,6 +1087,7 @@ struct ib_qp_init_attr {
         */
        u8                      port_num;
        struct ib_rwq_ind_table *rwq_ind_tbl;
+       u32                     source_qpn;
 };
 
 struct ib_qp_open_attr {