[ofw] WWG 1-26-10 minutes - WinOF 2.2 release status [PATCH] [IPoIB_NDIS6_CM]

Smith, Stan stan.smith at intel.com
Wed Feb 3 14:51:57 PST 2010


Tzachi Dar wrote:
> Please use TortoiseSVN to apply the patch.

Thank you Tzachi.
Your patches applied with no problems using TortoiseSVN.

stan.

>
> Thanks
> Tzachi
>
>> -----Original Message-----
>> From: ofw-bounces at lists.openfabrics.org
>> [mailto:ofw-bounces at lists.openfabrics.org] On Behalf Of Smith, Stan
>> Sent: Wednesday, February 03, 2010 7:21 PM
>> To: Alex Naslednikov; ofw at lists.openfabrics.org
>> Subject: Re: [ofw] WWG 1-26-10 minutes - WinOF 2.2 release
>> status [PATCH] [IPoIB_NDIS6_CM]
>>
>>
>> Patches do not correctly apply against
>> trunk\ulp\ipoib_ndis6_cm or branches\WOF2-2\ulp\ipoib_ndis6_cm.
>> I tried applying patches by hand and things got UGLY very quickly.
>>
>> Please supply patches generated against
>> trunk\ulp\ipoib_ndis6_cm\ ASAP as today is my last day at
>> work until 2/15.
>>
>> thank you,
>>
>> Stan.
>>
>> Alex Naslednikov wrote:
>>> Stan,
>>> The patch was revisited.
>>> For your covnenience, I am resending it again with the new changes.
>>> In spite of the fact that the patch was tested with WHQL NDIS 6.5
>>> MPE test, I highly recommend to run independent test cycle.
>>>
>>> Index:
>>>
>> D:/windows/MLNX_WinOF_trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_adapter.cp
>>> p
>> ===================================================================
>>> ---
>>>
>> D:/windows/MLNX_WinOF_trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_ad
>> apter.cpp
>>>                         (revision 5504) +++
>>>
>>>
>>>
>> D:/windows/MLNX_WinOF_trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_adapter.cp
>>> p (revision 5529) @@ -392,6 +392,13 @@
>>> p_adapter->p_ifc->get_err_str( status )) ); return status; } + + +
>>> IPOIB_PRINT( TRACE_LEVEL_INFORMATION, IPOIB_DBG_INIT, +
>>> ("Shutter Init, state = %d\n", p_adapter->ipoib_state) ); +
>>> IPOIB_PRINT( TRACE_LEVEL_INFORMATION, IPOIB_DBG_RECV, +
>>> ("Shutter Init, state = %d\n", p_adapter->ipoib_state) ); +
>>> shutter_init( &p_adapter->recv_shutter );
>>>
>>>         IPOIB_EXIT( IPOIB_DBG_INIT );
>>>         return status;
>>> Index:
>>> D:/windows/MLNX_WinOF_trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_port.cpp
>>> ===================================================================
>>> ---
>>> D:/windows/MLNX_WinOF_trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_port.cpp
>>> (revision 5504) +++
>>>
>>>
>> D:/windows/MLNX_WinOF_trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_port.cpp
>>> (revision 5529) @@ -824,7 +824,21 @@ IPOIB_PRINT( TRACE_LEVEL_ERROR,
>>> IPOIB_DBG_OBJ, ("ref type %d ref_cnt %d\n", ref_init,
>>> p_port->obj.ref_cnt) ); #endif - +    // The port is started as
>>> paused and NDIS calls latter to ipoib_restart. We +    // shut the
>>> recv_shuter for now and alive it on ipoib_restart. +    // +
>>> +       if ( p_adapter->ipoib_state == IPOIB_INIT) {
>>> +               IPOIB_PRINT( TRACE_LEVEL_INFORMATION,
>>> IPOIB_DBG_RECV, +               ("Shutter shut, state = %d\n",
>>> p_adapter->ipoib_state)); +               shutter_shut (
>>> &p_adapter->recv_shutter ); +       }
>>> +       else {
>>> +               IPOIB_PRINT( TRACE_LEVEL_WARNING, IPOIB_DBG_RECV,
>>> +               ("*****Shutter wasn't shut, state = %d*****\n",
>>> p_adapter->ipoib_state)); +       }
>>>         IPOIB_EXIT( IPOIB_DBG_INIT );
>>>         return IB_SUCCESS;
>>>  }
>>> @@ -1843,45 +1857,28 @@
>>>         return p_port->p_adapter->params.rq_low_watermark -
>>> p_port->recv_mgr.depth; }
>>>
>>> -void
>>> -ipoib_return_net_buffer_list(
>>> -       IN                              NDIS_HANDLE adapter_context,
>>> -       IN                              NET_BUFFER_LIST
>>> *p_net_buffer_lists,
>>> -       IN                              ULONG
>>> return_flags) +inline ULONG __free_received_NBL (
>>> +       IN ipoib_port_t         *p_port,
>>> +       IN NET_BUFFER_LIST      *p_net_buffer_lists +       )
>>>  {
>>> -       ipoib_port_t            *p_port;
>>> +
>>>         ipoib_recv_desc_t       *p_desc;
>>> -       NET_BUFFER_LIST
>>> *cur_net_buffer_list,*next_net_buffer_list;
>>> -       int32_t                         shortage;
>>> +       NET_BUFFER_LIST         *cur_net_buffer_list,
>>> *next_net_buffer_list; +       LONG
>>> NBL_cnt = 0; +
>>>
>>> -       PERF_DECLARE( ReturnPacket );
>>> -       PERF_DECLARE( ReturnPutRecv );
>>> -       PERF_DECLARE( ReturnRepostRecv );
>>> -       PERF_DECLARE( ReturnPreparePkt );
>>> -       PERF_DECLARE( ReturnNdisIndicate );
>>> -
>>> -       IPOIB_ENTER( IPOIB_DBG_RECV );
>>> -
>>> -       UNUSED_PARAM( return_flags );
>>> -
>>> -       p_port = ((ipoib_adapter_t*)adapter_context)->p_port;
>>> -       CL_ASSERT( p_net_buffer_lists );
>>> -
>>> -       cl_perf_start( ReturnPacket );
>>> -       cl_spinlock_acquire( &p_port->recv_lock );
>>>         for (cur_net_buffer_list = p_net_buffer_lists;
>>>                  cur_net_buffer_list != NULL;
>>>                  cur_net_buffer_list = next_net_buffer_list)
>>> { +               ++NBL_cnt;
>>>                 next_net_buffer_list =
>>> NET_BUFFER_LIST_NEXT_NBL(cur_net_buffer_list);
>>>
>>>                 /* Get the port and descriptor from the
>>>                 NET_BUFFER_LIST. */ CL_ASSERT(p_port ==
>>>                 IPOIB_PORT_FROM_NBL( cur_net_buffer_list )); p_desc
>>> = IPOIB_RECV_FROM_NBL( cur_net_buffer_list ); -
>>>
>>> -               //TODO: NDIS60, rewrite this block
>>> -
>>>  #if 0 //TODO CM flow
>>>                 if( p_desc->type == PKT_TYPE_CM_UCAST )
>>> { @@ -1916,9 +1913,44 @@
>>>                 __buf_mgr_put_recv( p_port, p_desc,
>>>                 cur_net_buffer_list ); cl_perf_stop(
>>>         &p_port->p_adapter->perf, ReturnPutRecv ); } +       return
>>> NBL_cnt; +}
>>>
>>> +void
>>> +ipoib_return_net_buffer_list(
>>> +       IN                              NDIS_HANDLE
>>> adapter_context, +       IN NET_BUFFER_LIST
>>> *p_net_buffer_lists, +
>>> IN                              ULONG
>>> return_flags) +{ +       ipoib_port_t            *p_port;
>>> +       int32_t                         shortage;
>>> +       LONG                            NBL_cnt = 0; +
>>> +       PERF_DECLARE( ReturnPacket );
>>> +       PERF_DECLARE( ReturnPutRecv );
>>> +       PERF_DECLARE( ReturnRepostRecv );
>>> +       PERF_DECLARE( ReturnPreparePkt );
>>> +       PERF_DECLARE( ReturnNdisIndicate );
>>>
>>> +       IPOIB_ENTER( IPOIB_DBG_RECV );
>>>
>>> +       UNUSED_PARAM( return_flags );
>>> +
>>> +       p_port = ((ipoib_adapter_t*)adapter_context)->p_port;
>>> +       CL_ASSERT( p_net_buffer_lists );
>>> +       if ( !p_port ) {
>>> +               ASSERT(p_port);
>>> +               IPOIB_PRINT_EXIT( TRACE_LEVEL_ERROR,
>>> IPOIB_DBG_ERROR, +                       ("return_NBL callback
>>> called when port pointer was already cleared\n") ); +
>>> return; +       } +
>>> +       cl_perf_start( ReturnPacket );
>>> +       cl_spinlock_acquire( &p_port->recv_lock );
>>> +       NBL_cnt = __free_received_NBL( p_port, p_net_buffer_lists
>>> ); + +       shutter_sub( &p_port->p_adapter->recv_shutter,
>>>         -NBL_cnt ); + /* Repost buffers to HW */
>>>         cl_perf_start( ReturnRepostRecv );
>>>         shortage = __recv_mgr_repost( p_port ); @@ -1958,6 +1990,7
>>>         @@ cl_qlist_t                      done_list, bad_list;
>>>         size_t                          i;
>>>         ULONG                           recv_complete_flags = 0;
>>> +       BOOLEAN                         res;
>>>
>>>         PERF_DECLARE( RecvCompBundle );
>>>         PERF_DECLARE( RecvCb );
>>> @@ -2069,13 +2102,40 @@
>>>
>>>                 cl_perf_start( RecvNdisIndicate );
>>>
>>> -               NdisMIndicateReceiveNetBufferLists(
>>> -                       p_port->p_adapter->h_adapter,
>>> -                       p_port->recv_mgr.recv_NBL_array[0],
>>> -                       NDIS_DEFAULT_PORT_NUMBER,
>>> -                       NBL_cnt,
>>> -                       recv_complete_flags);
>>> +               if (shortage <= 0) {
>>>
>>> +                       res = shutter_add(
>>> &p_port->p_adapter->recv_shutter, NBL_cnt ); +
>>> if (res) { +
>>> NdisMIndicateReceiveNetBufferLists( +
>>> p_port->p_adapter->h_adapter, +
>>> p_port->recv_mgr.recv_NBL_array[0], +
>>> NDIS_DEFAULT_PORT_NUMBER, +
>>> NBL_cnt, +
>> recv_complete_flags);
>>> +                       }
>>> +                       else {
>>> +                               __free_received_NBL (p_port,
>>> p_port->recv_mgr.recv_NBL_array[0]); +                       } +
>>> +               } else {
>>> +
>>> +                       // If shortage >0, we already set the status
>>> to NDIS_RECEIVE_FLAGS_RESOURCES +                       // That is,
>>> IPoIB driver regain ownership of the NET_BUFFER_LIST structures
>>> immediately +                       res = shutter_add(
>>> &p_port->p_adapter->recv_shutter, 1 ); +                       if
>>> (res) { + NdisMIndicateReceiveNetBufferLists( +
>>> p_port->p_adapter->h_adapter, +
>>> p_port->recv_mgr.recv_NBL_array[0], +
>>> NDIS_DEFAULT_PORT_NUMBER, +
>>> NBL_cnt, +
>>> recv_complete_flags); +                               shutter_sub(
>>> &p_port->p_adapter->recv_shutter, -1 ); +                       } +
>>> +               } +
>>> +
>>> +
>>>                 cl_perf_stop( &p_port->p_adapter->perf,
>>> RecvNdisIndicate );
>>>
>>>                 /*
>>> @@ -3243,14 +3303,8 @@
>>>  {
>>>         cl_list_item_t          *p_item;
>>>         ipoib_send_NB_SG        *s_buf;
>>> -       ULONG                           send_complete_flags = 0;
>>> +       ULONG                           send_complete_flags =
>>> NDIS_SEND_COMPLETE_FLAGS_DISPATCH_LEVEL;
>>>
>>> -       if (KeGetCurrentIrql() == DISPATCH_LEVEL)
>>> -       {
>>> -               NDIS_SET_SEND_COMPLETE_FLAG(send_complete_flags,
>>> NDIS_SEND_COMPLETE_FLAGS_DISPATCH_LEVEL);
>>> -       }
>>> -
>>> -       cl_spinlock_acquire( &p_port->send_lock );
>>>         /* Complete any pending packets. */
>>>         for( p_item = cl_qlist_remove_head(
>>>                 &p_port->send_mgr.pending_list ); p_item !=
>>> cl_qlist_end( &p_port->send_mgr.pending_list ); @@ -3260,13 +3314,10
>>>                 @@ ASSERT(s_buf->p_port == p_port);
>>>                 ASSERT(s_buf->p_nbl);
>>>
>>> -
>>> +               //TODO
>>>                 //__send_complete_net_buffer(s_buf,
>>>
>>>         NDIS_STATUS_RESET_IN_PROGRESS,send_complete_flags,TRUE);
>>> __send_complete_net_buffer(s_buf,
>>> NDIS_STATUS_FAILURE,send_complete_flags,TRUE); } - -
>>> -       cl_spinlock_release( &p_port->send_lock );
>>>
>>>  }
>>>
>>> @@ -3278,7 +3329,9 @@
>>>         //Destroy pending list and put all the send buffers back to
>>>         pool //The list should be already destroyed at this point
>>>         ASSERT(p_port->send_mgr.pending_list.count == 0);
>>> +       cl_spinlock_acquire( &p_port->send_lock );
>>>         __pending_list_destroy(p_port);
>>> +       cl_spinlock_release( &p_port->send_lock );
>>>
>>>         // Now, destroy the send pool
>>>         cl_qpool_destroy(&p_port->send_mgr.send_pool); @@ -5299,7
>>>                 +5352,6 @@ //TODO Tzachid: make an assert here to
>>>                 validate your IRQL ASSERT (KeGetCurrentIrql() ==
>>>                 DISPATCH_LEVEL); old_irql = DISPATCH_LEVEL;
>>> -               NDIS_SET_SEND_COMPLETE_FLAG(send_complete_flags,
>>>         NDIS_SEND_COMPLETE_FLAGS_DISPATCH_LEVEL); } else {
>>>                 NDIS_RAISE_IRQL_TO_DISPATCH(&old_irql);
>>>                 //ASSERT (KeGetCurrentIrql() == PASSIVE_LEVEL); //
>>>          Happens @@ -7158,6 +7210,7 @@ * object lock since that is
>>>         the order taken when reposting.          */
>>> cl_spinlock_acquire( &p_port->recv_lock ); +
>>>         cl_spinlock_acquire( &p_port->send_lock ); cl_obj_lock(
>>>         &p_port->obj ); p_port->state = IB_QPS_ERROR;
>>>
>>> @@ -7172,6 +7225,7 @@
>>>                 p_port->ib_mgr.h_query = NULL;
>>>         }
>>>         cl_obj_unlock( &p_port->obj );
>>> +       cl_spinlock_release( &p_port->send_lock );
>>>         cl_spinlock_release( &p_port->recv_lock );
>>>
>>>         KeWaitForSingleObject(
>>> @@ -7670,10 +7724,10 @@
>>>                 IPOIB_PRINT_EXIT( TRACE_LEVEL_INFORMATION,
>>>                 IPOIB_DBG_MCAST ,("Invalid state - Aborting.\n") );
>>> IPOIB_PRINT_EXIT( TRACE_LEVEL_INFORMATION, IPOIB_DBG_INIT
>>> ,("Invalid state - Aborting.\n") );
>>>
>>> -               //cl_spinlock_acquire(&p_port->send_lock);
>>> +               cl_spinlock_acquire(&p_port->send_lock);
>>>                 //ipoib_port_resume(p_port , FALSE);
>>>                 __pending_list_destroy( p_port );
>>> -               //cl_spinlock_release(&p_port->send_lock);
>>> +               cl_spinlock_release(&p_port->send_lock);
>>>         return; }
>>>
>>> Index:
>>>
>> D:/windows/MLNX_WinOF_trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_adapter.h
>>> ===================================================================
>>> ---
>>>
>> D:/windows/MLNX_WinOF_trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_adapter.h
>>>  (revision 5504) +++
>>>
>> D:/windows/MLNX_WinOF_trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_adapter.h
>>>  (revision 5529) @@ -47,8 +47,10 @@ #include <ip_packet.h> #include
>>> "ip_stats.h" #include "ipoib_stat.h" +#include "shutter.h"
>>>
>>>
>>> +
>>>  /*
>>>   * Definitions
>>>   */
>>> @@ -70,6 +72,7 @@
>>>
>>>  typedef enum _ipoib_state
>>>  {
>>> +       IPOIB_INIT = -1,
>>>      IPOIB_PAUSED,
>>>      IPOIB_PAUSING,
>>>      IPOIB_RUNNING
>>> @@ -238,6 +241,9 @@
>>>         ULONG                                   n_send_NBL;
>>>         // number of send NBLs, gotten from NDIS ULONG
>>> n_send_NBL_done;        // number of send NBLs, completed
>>>
>>> +       //
>>> +       shutter_t               recv_shutter;
>>> +
>>>  }      ipoib_adapter_t;
>>>  /*
>>>  * FIELDS
>>> Index:
>>>
>> D:/windows/MLNX_WinOF_trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_driver.cpp
>>> ===================================================================
>>> ---
>>>
>> D:/windows/MLNX_WinOF_trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_driver.cpp
>>>                                 (revision 5504) +++
>>>
>>>
>>>
>> D:/windows/MLNX_WinOF_trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_driver.cpp
>>> (revision 5529) @@ -1865,7 +1865,7 @@
>> ("ipoib_create_adapter returned
>>> status %d.\n", ib_status ) ); return NDIS_STATUS_FAILURE; } -
>>> p_adapter->ipoib_state = IPOIB_PAUSED; +
>>> p_adapter->ipoib_state = IPOIB_INIT;
>>>
>>>                 status  = SetAttributes(p_adapter, h_adapter);
>>>                 if (status != NDIS_STATUS_SUCCESS) { @@ -3111,13
>>> +3111,12 @@
>>>
>>>         CL_ASSERT( adapter_context );
>>>         p_adapter = (ipoib_adapter_t*)adapter_context;
>>> -       p_port = p_adapter->p_port;
>>>
>>>         cl_obj_lock( &p_adapter->obj );
>>>         if( p_adapter->ipoib_state == IPOIB_PAUSING ||
>>>                 p_adapter->ipoib_state == IPOIB_PAUSED)         {
>>> -               status = NDIS_STATUS_PAUSED; //NDIS_STATUS_PAUSED;
>>> +               status = NDIS_STATUS_PAUSED;
>>>                 IPOIB_PRINT( TRACE_LEVEL_ERROR, IPOIB_DBG_ERROR,
>>>                                 ("Got send during PAUSE, complete
>>>                 with error \n") ); cl_obj_unlock( &p_adapter->obj
>>>         ); @@ -3239,9 +3238,21 @@ IN NDIS_HANDLE  adapter_context,
>>>         IN NDIS_SHUTDOWN_ACTION  shutdown_action)
>>>  {
>>> -       IPOIB_ENTER( IPOIB_DBG_INIT );
>>> -       UNUSED_PARAM( adapter_context );
>>> +       IPOIB_ENTER( IPOIB_DBG_INIT ) ;
>>>         UNUSED_PARAM( shutdown_action );
>>> +
>>> +       ipoib_adapter_t *p_adapter = (ipoib_adapter_t *)
>>> adapter_context; + +       if (shutdown_action ==
>>> NdisShutdownPowerOff ) { +               ASSERT(KeGetCurrentIrql()
>>> == PASSIVE_LEVEL); +               // We need to wait only if this
>>> is not a blue screen any way +               IPOIB_PRINT(
>>> TRACE_LEVEL_INFORMATION, IPOIB_DBG_INIT, +
>>> ("Shutter shut, state = %d\n", p_adapter->ipoib_state)); +
>>> IPOIB_PRINT( TRACE_LEVEL_INFORMATION, IPOIB_DBG_RECV, +
>>> ("Shutter shut, state = %d\n", p_adapter->ipoib_state)); +
>>> shutter_shut ( &p_adapter->recv_shutter ); +       } +
>>>         IPOIB_EXIT( IPOIB_DBG_INIT );
>>>  }
>>>
>>> @@ -3941,13 +3952,15 @@
>>>         KeReleaseInStackQueuedSpinLock( &hdl );
>>>
>>>         if (p_adapter->p_port) {
>>> -               //TODO improve this flow !
>>> -               //TODO Be sure we stopped all sends and receives
>>>                 cl_spinlock_acquire(
>> &p_adapter->p_port->send_lock );
>>>                 ipoib_port_resume(p_adapter->p_port,FALSE);
>>>                 cl_spinlock_release(
>> &p_adapter->p_port->send_lock );
>>>         }
>>> -
>>> +
>>> +       IPOIB_PRINT( TRACE_LEVEL_INFORMATION, IPOIB_DBG_RECV,
>>> +               ("Shutter shut, state = %d\n",
>>> p_adapter->ipoib_state)); +       shutter_shut (
>>> &p_adapter->recv_shutter ); +
>>>         KeAcquireInStackQueuedSpinLock( &g_ipoib.lock, &hdl );
>>>         p_adapter->ipoib_state = IPOIB_PAUSED;
>>>         KeReleaseInStackQueuedSpinLock( &hdl );
>>> @@ -3978,6 +3991,16 @@
>>>          //
>>>          // Check to see if we need to change any attributes      }
>>> +
>>> +       if ( (p_adapter->ipoib_state == IPOIB_PAUSED) ||
>>> (p_adapter->ipoib_state == IPOIB_INIT) ) { +
>>> IPOIB_PRINT( TRACE_LEVEL_INFORMATION, IPOIB_DBG_RECV, +
>>> ("Shutter Alive, ipoib_state = %d\n", p_adapter->ipoib_state)); +
>>> shutter_alive( &p_adapter->recv_shutter ); +       } +       else {
>>> +               IPOIB_PRINT( TRACE_LEVEL_WARNING, IPOIB_DBG_RECV,
>>> +               ("*****Shutter Was not \"Alived\", state =
>>> %d*****\n", p_adapter->ipoib_state)); +       }
>>>
>>>         KeAcquireInStackQueuedSpinLock( &g_ipoib.lock, &hdl );
>>>         p_adapter->ipoib_state = IPOIB_RUNNING;
>>>
>>> -----Original Message-----
>>> From: Alex Naslednikov
>>> Sent: Wednesday, January 27, 2010 6:52 PM
>>> To: 'Smith, Stan'; ofw at lists.openfabrics.org
>>> Subject: RE: [ofw] WWG 1-26-10 minutes - WinOF 2.2 release status
>>>
>>> Hi Stan,
>>> I started to test my patch with WHQL tests.
>>> It seems that the original problem was resolved, but I have several
>>> improvements I hope to complete it by tomorrow (28/12/10)
>>>
>>> -----Original Message-----
>>> From: ofw-bounces at lists.openfabrics.org
>>> [mailto:ofw-bounces at lists.openfabrics.org] On Behalf Of Smith, Stan
>>> Sent: Tuesday, January 26, 2010 8:06 PM
>>> To: ofw at lists.openfabrics.org
>>> Subject: [ofw] WWG 1-26-10 minutes - WinOF 2.2 release status
>>>
>>>
>>> Windows Working Group - Tuesday 1/26 9:00AM PST
>>>
>>> Attending:
>>>
>>> Alex Naslednikov - Mellanox
>>> John Russo - Qlogic
>>> Rupert Dance - Lamprey Networks
>>> Stan Smith - Intel
>>>
>>> ===============================================
>>>
>>> WinOF 2.2 Status
>>> ----------------
>>>
>>> Patch 'Release HCA interface when loading of ibal fails' is intended
>>> for trunk only as it's a rare occurrence.
>>>
>>> The IPoIB shutter code addressing IPoIB receiving packets during
>>> shutdown will be included in WinOF 2.2 RC3 as soon as the code is
>>> pushed into the trunk. Alex will make this a priority as the
>>> release of RC3 is waiting on this patch.
>>>
>>> Sean submitted 2.2 patches for the DAPL provider socket-CM &
>>> rdma-CM.
>>>
>>> Stan's testing of RC2 shows no signs of regression.
>>>
>>> Mellanox will engage in more QA testing once RC3 is released.
>>>
>>> IPoIB is tested on Svr 2008 R2 as IPoIB WHQL testing is specifically
>>> targeted for Svr 2008 R2 only.
>>>
>>> ===============================================
>>>
>>> Delineation of OFED version numbers
>>> -----------------------------------
>>>
>>> The WWG (Windows Working Group) has voted to change the OFA Windows
>>> SW release nomenclature from WinOF to 'OpenFabrics Enterprise
>>> Distribution' in order to leverage and strengthen OFA name branding.
>>>
>>> In those situations where the operating environment context is
>>> ambiguous, the Windows version of OFED will be referred to as 'OFED
>>> for Windows'.
>>>
>>> In aligning with the OFED name the question surfaced about how to
>>> delineate OFED release versions and 'if' there should be some
>>> consolidation of OFED SW release cycles between the Linux and
>>> Windows sides of the OFA house.
>>>
>>> The WWG resolved, with no reserve, that the release cycles and
>>> versioning of OFED for Windows remain distinctly separate from the
>>> OFED for Linux release cycles and versioning.
>>>
>>> OpenFabrics Enterprise Distribution for Windows will be formally
>>> announced at the Sonoma'10 conference.
>>>
>>> Changes in the OFED for Windows installer will consist of changing
>>> names WinOF --> OFED. The only functional change will be the
>>> installation path: %ProgramFiles%\WinOF --> %ProgramFiles%\OFED
>>>
>>> At the OFA Sonoma workshop the WWG (and anyone else) will meet
>>> face-2-face to discuss futures.
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> ofw mailing list
>>> ofw at lists.openfabrics.org
>>> http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ofw
>>
>> _______________________________________________
>> ofw mailing list
>> ofw at lists.openfabrics.org
>> http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ofw




More information about the ofw mailing list