Revision: 2657 Author: stansmith Date: 9:39:56 AM, Wednesday, January 13, 2010 Message: [IPOIB/IPOIB_NDIS6_CM] fix the problem when IPoIB increments the receive statistics twice.
Signed-off by: Tzachi Dar (tzachid at mellanox.co.il) Signed-off by: Alex Naslednikov ([email protected]) ---- Modified : /gen1/branches/WOF2-2/ulp/ipoib/kernel/ipoib_port.c Modified : /gen1/branches/WOF2-2/ulp/ipoib_NDIS6_CM/kernel/ipoib_port.cpp Modified : /gen1/trunk/ulp/ipoib/kernel/ipoib_port.c Modified : /gen1/trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_port.cpp Alex Naslednikov wrote: > This patch fixes the same problem > when reporting the statistic twice > for IPoIB based on NDIS 5.3 > > Index: ipoib_port.c > =================================================================== > --- ipoib_port.c (revision 5436) > +++ ipoib_port.c (working copy) > @@ -2136,7 +2136,6 @@ > } > else > { > - ip_stat_sel_t ip_stat; > p_desc->len = > len + sizeof(eth_hdr_t) - > sizeof(ipoib_hdr_t); > if( p_dst->h_mcast) > @@ -2147,22 +2146,18 @@ > > p_dst->dgid.multicast.raw_group_id[13] == 0xFF ) > { > p_desc->type = PKT_TYPE_BCAST; > - ip_stat = IP_STAT_BCAST_BYTES; > } > else > { > p_desc->type = PKT_TYPE_MCAST; > - ip_stat = IP_STAT_MCAST_BYTES; > } > } > else > { > p_desc->type = PKT_TYPE_UCAST; > - ip_stat = IP_STAT_UCAST_BYTES; > > } > cl_qlist_insert_tail( p_done_list, > &p_desc->item.list_item ); > - ipoib_inc_recv_stat( p_port->p_adapter,ip_stat , > p_desc->len ); > } > } > > > -----Original Message----- > From: Alex Naslednikov > Sent: Monday, January 04, 2010 1:02 PM > To: [email protected] > Cc: Tzachi Dar > Subject: [ofw] [Patch] [IPoIB_NDIS6_CM] Calling receive statistics > twice > > This patch fixes the problem when IPoIB increments the receive > statistics twice Signed-off by: Tzachi Dar (tzachid at mellanox.co.il) > 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 5415) +++ > D:/windows/MLNX_WinOF_trunk/ulp/ipoib_NDIS6_CM/kernel/ipoib_port.cpp > > +++ (revision 5416) > @@ -2958,7 +2958,6 @@ > { > NDIS_STATUS status; > uint32_t pkt_filter; > - ip_stat_sel_t type; > //NDIS60 > NDIS_TCP_IP_CHECKSUM_NET_BUFFER_LIST_INFO chksum; > //NDIS_TCP_IP_CHECKSUM_PACKET_INFO chksum; @@ -2980,14 +2979,12 @@ > pkt_filter & NDIS_PACKET_TYPE_DIRECTED ) > { > /* OK to report. */ > - type = IP_STAT_UCAST_BYTES; > status = NDIS_STATUS_SUCCESS; > IPOIB_PRINT( TRACE_LEVEL_VERBOSE, IPOIB_DBG_ERROR, > ("Received UCAST PKT.\n")); > } > else > { > - type = IP_STAT_DROPPED; > status = NDIS_STATUS_FAILURE; > IPOIB_PRINT( TRACE_LEVEL_ERROR, IPOIB_DBG_ERROR, > ("Received UCAST PKT with ERROR !!!!\n")); @@ -2998,14 +2995,12 > @@ pkt_filter & NDIS_PACKET_TYPE_BROADCAST ) > { > /* OK to report. */ > - type = IP_STAT_BCAST_BYTES; > status = NDIS_STATUS_SUCCESS; > IPOIB_PRINT( TRACE_LEVEL_VERBOSE, IPOIB_DBG_RECV, > ("Received BCAST PKT.\n")); > } > else > { > - type = IP_STAT_DROPPED; > status = NDIS_STATUS_FAILURE; > IPOIB_PRINT( TRACE_LEVEL_ERROR, IPOIB_DBG_ERROR, > ("Received BCAST PKT with ERROR !!!!\n")); @@ -3017,14 +3012,12 @@ > pkt_filter & NDIS_PACKET_TYPE_MULTICAST ) > { > /* OK to report. */ > - type = IP_STAT_MCAST_BYTES; > status = NDIS_STATUS_SUCCESS; > IPOIB_PRINT( TRACE_LEVEL_VERBOSE, IPOIB_DBG_RECV, > ("Received UCAST PKT.\n")); > } > else > { > - type = IP_STAT_DROPPED; > status = NDIS_STATUS_FAILURE; > IPOIB_PRINT( TRACE_LEVEL_ERROR, IPOIB_DBG_ERROR, > ("Received MCAST PKT with ERROR !!!!\n")); @@ -3034,7 +3027,6 @@ > > if( status != NDIS_STATUS_SUCCESS ) > { > - ipoib_inc_recv_stat( p_port->p_adapter, type, 0, 0 ); > /* Return the receive descriptor to the pool. */ > __buf_mgr_put_recv( p_port, p_desc, NULL ); > IPOIB_PRINT_EXIT( TRACE_LEVEL_ERROR, IPOIB_DBG_ERROR, @@ -3088,7 > +3080,6 @@ > (void*)(uintn_t)chksum.Value; > break; > } > - ipoib_inc_recv_stat( p_port->p_adapter, type, p_desc->len, 1 ); > > IPOIB_EXIT( IPOIB_DBG_RECV ); > return IB_SUCCESS; > > _______________________________________________ > ofw mailing list > [email protected] > http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ofw _______________________________________________ ofw mailing list [email protected] http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ofw
