]> git.openfabrics.org - ~shefty/rdma-win.git/commitdiff
[ipoib cm] offload chksum flags handling updated.
authoraestrin <aestrin@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Fri, 13 Feb 2009 18:03:05 +0000 (18:03 +0000)
committeraestrin <aestrin@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Fri, 13 Feb 2009 18:03:05 +0000 (18:03 +0000)
git-svn-id: svn://openib.tc.cornell.edu/gen1@1956 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

branches/ipoib_cm/kernel/ipoib_endpoint.c
branches/ipoib_cm/kernel/ipoib_port.c

index 50d4c50543cf7ef0a7b2e4db8a4fe4156a6aaa85..10afda7d0e93c81f7690740781c81aeba1f6b9db 100644 (file)
@@ -820,16 +820,10 @@ endpt_cm_recv_mgr_build_pkt_array(
                default:\r
                        CL_ASSERT( FALSE );\r
                case CSUM_DISABLED:\r
+               case CSUM_ENABLED:\r
                        NDIS_PER_PACKET_INFO_FROM_PACKET( p_packet, TcpIpChecksumPacketInfo ) =\r
                                (void*)(uintn_t)chksum.Value;\r
                        break;\r
-               case CSUM_ENABLED:\r
-                       /* Get the checksums directly from packet information. */\r
-                       /* In this case, no one of cheksum's cat get false value */\r
-                       /* If hardware checksum failed or wasn't calculated, NDIS will recalculate it again */\r
-                       NDIS_PER_PACKET_INFO_FROM_PACKET( p_packet, TcpIpChecksumPacketInfo ) = \r
-                               (void*)(uintn_t)(p_desc->ndis_csum.Value);\r
-                       break;\r
                case CSUM_BYPASS:\r
                        /* Flag the checksums as having been calculated. */\r
                        chksum.Receive.NdisPacketTcpChecksumSucceeded = TRUE;\r
index e4e027b991febaab098cd13806346bf55a548975..30bfaa9bf34d8208c694ded7ec46e91c77555bdc 100644 (file)
@@ -1082,6 +1082,11 @@ __ib_mgr_init(
                        NdisWriteErrorLogEntry( p_port->p_adapter->h_adapter,\r
                                EVENT_IPOIB_CONNECTED_MODE_ERR, 1, 0xbadc0de2 );\r
                }\r
+               else \r
+               {\r
+                       if ( p_port->p_adapter->params.send_chksum_offload )\r
+                       p_port->p_adapter->params.send_chksum_offload = CSUM_DISABLED;\r
+               }\r
        }\r
        IPOIB_EXIT( IPOIB_DBG_INIT );\r
        return IB_SUCCESS;\r