<!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>