]> git.openfabrics.org - ~ardavis/dapl.git/commitdiff
dapl: cma provider needs to support lower inline send default for iWARP
authorArlin Davis <arlin.r.davis@intel.com>
Mon, 28 Apr 2008 17:14:35 +0000 (10:14 -0700)
committerArlin Davis <arlin.r.davis@intel.com>
Mon, 28 Apr 2008 17:14:35 +0000 (10:14 -0700)
IB and iWARP work best with different defaults. Add transport check
and set default accordingly. 64 for iWARP, 200 for IB.

DAPL_MAX_INLINE environment variable is still used to override.

Signed-off by: Arlin Davis ardavis@ichips.intel.com

dapl/openib_cma/dapl_ib_util.c
dapl/openib_cma/dapl_ib_util.h

index 56c0a05cd7bdc7b7125cb91d7cc092194a7352c2..4de5a2c99033b5229e1addf3f4d965d5cddf42bb 100755 (executable)
@@ -274,8 +274,15 @@ DAT_RETURN dapls_ib_open_hca(IN IB_HCA_NAME hca_name, IN DAPL_HCA *hca_ptr)
                (unsigned long long)bswap_64(gid->global.interface_id));
 
        /* set inline max with env or default, get local lid and gid 0 */
-       hca_ptr->ib_trans.max_inline_send = 
-               dapl_os_get_env_val("DAPL_MAX_INLINE", INLINE_SEND_DEFAULT);
+       if (hca_ptr->ib_hca_handle->device->transport_type
+                                       == IBV_TRANSPORT_IWARP)
+               hca_ptr->ib_trans.max_inline_send =
+                       dapl_os_get_env_val("DAPL_MAX_INLINE",
+                                           INLINE_SEND_IWARP_DEFAULT);
+       else
+               hca_ptr->ib_trans.max_inline_send =
+                       dapl_os_get_env_val("DAPL_MAX_INLINE",
+                                           INLINE_SEND_IB_DEFAULT);
 
        /* set CM timer defaults */     
        hca_ptr->ib_trans.max_cm_timeout =
index 93f4fdebba4a42d6fbc9ccabd100cd11c18dd2d6..1e464b242912e53ec2cb35549e1a8359eb79a782 100755 (executable)
@@ -122,7 +122,8 @@ typedef struct _ib_wait_obj_handle
 #define IB_INVALID_HANDLE      NULL
 
 /* inline send rdma threshold */
-#define        INLINE_SEND_DEFAULT     128
+#define        INLINE_SEND_IWARP_DEFAULT       64
+#define        INLINE_SEND_IB_DEFAULT          200
 
 /* CM private data areas */
 #define        IB_MAX_REQ_PDATA_SIZE   48