]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
ib_uverbs: Support for kernel implementation of XRC calls from user space
authorKnut Omang <knut.omang@oracle.com>
Tue, 21 Apr 2015 10:20:08 +0000 (12:20 +0200)
committerMukesh Kacker <mukesh.kacker@oracle.com>
Wed, 8 Jul 2015 01:11:01 +0000 (18:11 -0700)
Extends the kernel/user space interface for work requests to also provide
the XRC shared receive queue number. Necessary to support
kernel level implementation of user verbs for XRC.

Requires a corresponding libibverbs change to support XRC.

Orabug: 20930262

Signed-off-by: Knut Omang <knut.omang@oracle.com>
Signed-off-by: Mukesh Kacker <mukesh.kacker@oracle.com>
drivers/infiniband/core/uverbs_cmd.c
include/uapi/rdma/ib_user_verbs.h

index 0694210e9a8949f11af25ba1dbb2b85c36e09e62..9825b41a1f0cae67f9f850b3755d0c37a76ba3b3 100644 (file)
@@ -2246,6 +2246,8 @@ ssize_t ib_uverbs_post_send(struct ib_uverbs_file *file,
                                next->ex.imm_data =
                                        (__be32 __force) user_wr->ex.imm_data;
                } else {
+                       if (qp->qp_type == IB_QPT_XRC_INI)
+                               next->xrc_remote_srq_num = user_wr->xrc_remote_srq_num;
                        switch (next->opcode) {
                        case IB_WR_RDMA_WRITE_WITH_IMM:
                                next->ex.imm_data =
index 332052246f9b74fdfa8fd36bbe63e9aca68fc4be..d6f5a147350e410f4dc4908bdc836954ff5328be 100644 (file)
@@ -664,6 +664,8 @@ struct ib_uverbs_send_wr {
                        __u32 reserved;
                } ud;
        } wr;
+       __u32 xrc_remote_srq_num;
+       __u32 reserved;
 };
 
 struct ib_uverbs_post_send {