[WSD] Support HCAs that don't implement CQ resize.
authorftillier <ftillier@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Tue, 18 Apr 2006 22:16:41 +0000 (22:16 +0000)
committerftillier <ftillier@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Tue, 18 Apr 2006 22:16:41 +0000 (22:16 +0000)
git-svn-id: svn://openib.tc.cornell.edu/gen1/trunk@313 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

ulp/wsd/user/ibsp_iblow.c
ulp/wsd/user/ibspdefines.h

index 191b9a2..05ceabf 100644 (file)
@@ -566,7 +566,8 @@ ib_alloc_cq_tinfo(
        cq_tinfo->hca = hca;\r
        cq_tinfo->ib_cq_thread_exit_wanted = FALSE;\r
 \r
        cq_tinfo->hca = hca;\r
        cq_tinfo->ib_cq_thread_exit_wanted = FALSE;\r
 \r
-       cq_tinfo->ib_cq_thread = CreateThread( NULL, 0, ib_cq_thread, cq_tinfo, 0, (LPDWORD)&cq_tinfo->ib_cq_thread_id );\r
+       cq_tinfo->ib_cq_thread = CreateThread( NULL, 0, ib_cq_thread, cq_tinfo, 0,\r
+               (LPDWORD)&cq_tinfo->ib_cq_thread_id );\r
 \r
        if( cq_tinfo->ib_cq_thread == NULL )\r
        {\r
 \r
        if( cq_tinfo->ib_cq_thread == NULL )\r
        {\r
@@ -760,6 +761,7 @@ ib_acquire_cq_tinfo(
                switch( status )\r
                {\r
                case IB_INVALID_CQ_SIZE:\r
                switch( status )\r
                {\r
                case IB_INVALID_CQ_SIZE:\r
+               case IB_UNSUPPORTED:\r
                        cq_tinfo = ib_alloc_cq_tinfo( hca );\r
                        if( !cq_tinfo )\r
                                break;\r
                        cq_tinfo = ib_alloc_cq_tinfo( hca );\r
                        if( !cq_tinfo )\r
                                break;\r
index 859b625..79b6968 100644 (file)
@@ -72,7 +72,11 @@ C_ASSERT( QP_ATTRIB_SQ_DEPTH <= 256 );
 C_ASSERT( QP_ATTRIB_RQ_DEPTH <= 256 );\r
 \r
 /* Number of entries in a CQ */\r
 C_ASSERT( QP_ATTRIB_RQ_DEPTH <= 256 );\r
 \r
 /* Number of entries in a CQ */\r
-#define IB_CQ_SIZE (QP_ATTRIB_SQ_DEPTH + QP_ATTRIB_RQ_DEPTH)\r
+/*\r
+ * TODO: Workaround until MTHCA driver supports resize CQ, pre-allocate\r
+ * for 100 QPs per CQ.\r
+ */\r
+#define IB_CQ_SIZE ((QP_ATTRIB_SQ_DEPTH + QP_ATTRIB_RQ_DEPTH) * 100)\r
 \r
 /* CM timeouts */\r
 #define CM_MIN_LOCAL_TIMEOUT   (18)\r
 \r
 /* CM timeouts */\r
 #define CM_MIN_LOCAL_TIMEOUT   (18)\r