[ofw] RE: [PATCH] ib_qp_create_t

Fab Tillier ftillier at windows.microsoft.com
Wed Mar 26 00:31:47 PDT 2008


Should max inline be an input or an output?  The optimal size of inline data is something the HW knows, not the consumer.  So perhaps it would make sense for the consumer to indicate that they want to use inline data, and then the HCA driver to return the amount of inline data available?

-Fab

From: ofw-bounces at lists.openfabrics.org [mailto:ofw-bounces at lists.openfabrics.org] On Behalf Of Reuven Amitai
Sent: Wednesday, March 26, 2008 12:30 AM
To: ofw at lists.openfabrics.org
Subject: [ofw] [PATCH] ib_qp_create_t

Hi,

The patch add sq_max_inline member to ib_qp_create_t structure in order to enable setting max_inline
(currently, there is no way to guarantee max inline size in qp creation directly)
we'll need to increase all the relevant interfaces' versions in the next release (because ib_qp_create_t is contained in IOCTL structure(s))

Reuven

Index: hw/mthca/user/mlnx_ual_qp.c
===================================================================
--- hw/mthca/user/mlnx_ual_qp.c     (revision 992)
+++ hw/mthca/user/mlnx_ual_qp.c     (working copy)
@@ -120,7 +120,7 @@
      attr.cap.max_recv_wr          = p_create_attr->rq_depth;
      attr.cap.max_send_sge         = p_create_attr->sq_sge;
      attr.cap.max_recv_sge         = p_create_attr->rq_sge;
-     attr.cap.max_inline_data      = 0;              /* absent in IBAL */
+     attr.cap.max_inline_data      = p_create_attr->sq_max_inline;
      attr.qp_type                                          = p_create_attr->qp_type;
      attr.sq_sig_all                                 = p_create_attr->sq_signaled;

Index: inc/iba/ib_types.h
===================================================================
--- inc/iba/ib_types.h  (revision 992)
+++ inc/iba/ib_types.h  (working copy)
@@ -9755,6 +9755,7 @@
 {
      ib_qp_type_t                  qp_type;

+     uint32_t                      sq_max_inline;
      uint32_t                      sq_depth;
      uint32_t                      rq_depth;
      uint32_t                      sq_sge;
@@ -9772,6 +9773,10 @@
 *    type
 *          Specifies the type of queue pair to create.
 *
+*    sq_max_inline
+*          Maximum payload that can be inlined directly in a WQE, eliminating
+*          protection checks and additional DMA operations.
+*
 *    sq_depth
 *          Indicates the requested maximum number of work requests that may be
 *          outstanding on the queue pair's send queue.  This value must be less


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openfabrics.org/pipermail/ofw/attachments/20080326/9f57da8b/attachment.html>


More information about the ofw mailing list