[ofw] [patch] fix ipoib performance problem in rev 1430

Anatoly Greenblatt anatolyg at voltaire.com
Wed Aug 27 07:53:08 PDT 2008


Hi,

 

Basically the fix is part of code prior to rev 1430 in case csum
offloading is not supported.

Also added a fix on send path.

 

Regards,

Anatoly.

 

 

 

Index: ulp/ipoib/kernel/ipoib_port.c

===================================================================

--- ulp/ipoib/kernel/ipoib_port.c      (revision 1521)

+++ ulp/ipoib/kernel/ipoib_port.c  (working copy)

@@ -2582,8 +2582,17 @@

          }

 

          /* Get the checksums directly from packet information. */

+       if ( !p_port->p_adapter->params.recv_chksum_offload )

+       {

+                 p_desc->ndis_csum.Value = 0;

+
p_desc->ndis_csum.Receive.NdisPacketTcpChecksumSucceeded = TRUE;

+
p_desc->ndis_csum.Receive.NdisPacketUdpChecksumSucceeded = TRUE;

+
p_desc->ndis_csum.Receive.NdisPacketIpChecksumSucceeded = TRUE;

+       }

+

          NDIS_PER_PACKET_INFO_FROM_PACKET( *pp_packet,
TcpIpChecksumPacketInfo ) = 

                    (PVOID) (uintn_t) (p_desc->ndis_csum.Value);

+

          ipoib_inc_recv_stat( p_port->p_adapter, type, p_desc->len );

 

          IPOIB_EXIT( IPOIB_DBG_RECV );

@@ -3862,7 +3871,7 @@

          p_desc->wr.p_next = NULL;

          p_desc->wr.wr_id = (uintn_t)p_desc->p_pkt;

 

-         if(p_port->p_adapter->params.send_chksum_offload & 

+       if(p_port->p_adapter->params.send_chksum_offload && 

                    (pChecksumPktInfo->Transmit.NdisPacketChecksumV4 ||
pChecksumPktInfo->Transmit.NdisPacketChecksumV6))

          {

                    // Set transimition checksum offloading

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openfabrics.org/pipermail/ofw/attachments/20080827/d4749857/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: fix_ipoib_csum_offload.patch
Type: application/octet-stream
Size: 1208 bytes
Desc: fix_ipoib_csum_offload.patch
URL: <http://lists.openfabrics.org/pipermail/ofw/attachments/20080827/d4749857/attachment.obj>


More information about the ofw mailing list