<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.6000.16587" name=GENERATOR></HEAD>
<BODY>
<DIV><FONT face=Arial size=2><SPAN class=720365012-12102008>This patch makes 
sure that ipoib will not answer with pending the query of 
OID_GEN_LINK_SPEED</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=720365012-12102008></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=720365012-12102008>Thanks</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=720365012-12102008>Tzachi</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Index: 
Q:/projinf4/trunk/ulp/ipoib/kernel/ipoib_adapter.c<BR>===================================================================<BR>--- 
Q:/projinf4/trunk/ulp/ipoib/kernel/ipoib_adapter.c (revision 3303)<BR>+++ 
Q:/projinf4/trunk/ulp/ipoib/kernel/ipoib_adapter.c (revision 3304)<BR>@@ 
-306,7 +306,7 @@<BR>  cl_perf_construct( &p_adapter->perf 
);<BR> <BR>  p_adapter->state = 
IB_PNP_PORT_ADD;<BR>- p_adapter->rate = 
FOUR_X_IN_100BPS;<BR>+ p_adapter->port_rate = 
FOUR_X_IN_100BPS;<BR> }<BR> <BR> <BR>@@ -1065,7 +1065,7 
@@<BR>   rate = 
0;<BR>  }<BR> <BR>- p_adapter->rate = 
rate;<BR>+ p_adapter->port_rate = rate;<BR>  IPOIB_EXIT( 
IPOIB_DBG_INIT );<BR> }<BR> <BR>@@ -1124,8 +1124,8 
@@<BR>    */<BR>   IPOIB_PRINT( 
TRACE_LEVEL_INFORMATION, IPOIB_DBG_INIT, ("Link UP!\n") 
);<BR>   NdisWriteErrorLogEntry( 
p_adapter->h_adapter,<BR>-   EVENT_IPOIB_PORT_UP + 
(p_adapter->rate/ONE_X_IN_100BPS),<BR>-   1, 
p_adapter->rate );<BR>+   EVENT_IPOIB_PORT_UP + 
(p_adapter->port_rate/ONE_X_IN_100BPS),<BR>+   1, 
p_adapter->port_rate );<BR> <BR>   if( 
!p_adapter->reset )<BR>   {<BR>Index: 
Q:/projinf4/trunk/ulp/ipoib/kernel/ipoib_adapter.h<BR>===================================================================<BR>--- 
Q:/projinf4/trunk/ulp/ipoib/kernel/ipoib_adapter.h (revision 3303)<BR>+++ 
Q:/projinf4/trunk/ulp/ipoib/kernel/ipoib_adapter.h (revision 3304)<BR>@@ 
-168,7 +168,7 @@<BR> <BR>  struct 
_ipoib_port  *p_port;<BR> <BR>- uint32_t    rate;<BR>+ uint32_t    port_rate;<BR> <BR>  ipoib_params_t   params;<BR>  cl_spinlock_t   recv_stat_lock;<BR>Index: 
Q:/projinf4/trunk/ulp/ipoib/kernel/ipoib_driver.c<BR>===================================================================<BR>--- 
Q:/projinf4/trunk/ulp/ipoib/kernel/ipoib_driver.c (revision 3303)<BR>+++ 
Q:/projinf4/trunk/ulp/ipoib/kernel/ipoib_driver.c (revision 3304)<BR>@@ 
-955,31 +955,7 @@<BR>   IPOIB_PRINT( 
TRACE_LEVEL_INFORMATION,IPOIB_DBG_OID,<BR>    ("Port %d 
received query for OID_GEN_LINK_SPEED\n", port_num) 
);<BR>   cl_obj_lock( &p_adapter->obj 
);<BR>-  switch( p_adapter->state 
)<BR>-  {<BR>-  case 
IB_PNP_PORT_ADD:<BR>-   /* Mark the adapter as pending an OID 
*/<BR>-   p_adapter->pending_query = 
TRUE;<BR>-<BR>-   /* Save the request parameters. 
*/<BR>-   p_adapter->query_oid = 
oid_info;<BR>-<BR>-   IPOIB_PRINT( 
TRACE_LEVEL_INFORMATION,IPOIB_DBG_OID,<BR>-    ("Port %d 
returning NDIS_STATUS_PENDING\n", port_num) );<BR>-   status = 
NDIS_STATUS_PENDING;<BR>-   break;<BR>-<BR>-  case 
IB_PNP_PORT_REMOVE:<BR>-   IPOIB_PRINT( 
TRACE_LEVEL_INFORMATION,IPOIB_DBG_OID,<BR>-    ("Port %d 
returning NDIS_STATUS_NOT_ACCEPTED\n", port_num) );<BR>-   status 

NDIS_STATUS_NOT_ACCEPTED;<BR>-   break;<BR>-<BR>-  default:<BR>-   CL_ASSERT( 
p_adapter->p_port );<BR>-   info = 
p_adapter->rate;<BR>-   break;<BR>-  }<BR>+  info 
= p_adapter->port_rate;<BR>   cl_obj_unlock( 
&p_adapter->obj );<BR>   break;<BR> <BR>@@ -2016,11 
+1992,6 @@<BR>  {<BR>   switch( query_oid.oid 
)<BR>   {<BR>-  case 
OID_GEN_LINK_SPEED:<BR>-   ipoib_complete_query( p_adapter, 
&query_oid,<BR>-    status, &p_adapter->rate, 
sizeof(p_adapter->rate) 
);<BR>-   break;<BR>-<BR>   case 
OID_GEN_MEDIA_CONNECT_STATUS:<BR>    info = 
NdisMediaStateConnected;<BR>    ipoib_complete_query( 
p_adapter, &query_oid,<BR>@@ -2028,8 +1999,7 
@@<BR>    break;<BR> <BR>   default:<BR>-   CL_ASSERT( 
query_oid.oid == OID_GEN_LINK_SPEED ||<BR>-    query_oid.oid 
== OID_GEN_MEDIA_CONNECT_STATUS );<BR>+   CL_ASSERT( 
query_oid.oid == OID_GEN_MEDIA_CONNECT_STATUS 
);<BR>    break;<BR>   }<BR>  }<BR></DIV></FONT></BODY></HTML>