Eli Cohen wrote:
Add checksum offload support to the core
A device that publishes IB_DEVICE_IP_CSUM actually supports
calculating checksum on transmit and provides indication whether
the checksum is OK on receive.

Hi Eli,

From the discussion over the "IB/ipoib: S/G and HW checksum support" thread, I understand that Linux actually never offloads the IP checksum calculation to the HW but rather only the TCP and UDP checksum.

I find it more clear if the device capability (same for the send flag) name would follow one of these:
#define NETIF_F_IP_CSUM     2       /* Can checksum TCP/UDP over IPv4. */
#define NETIF_F_NO_CSUM     4       /* Does not require checksum. F.e. loopack. 
*/
#define NETIF_F_HW_CSUM     8       /* Can checksum all the packets. */
#define NETIF_F_IPV6_CSUM   16      /* Can checksum TCP/UDP over IPV6 */

Or.

Index: ofa_1_3_dev_kernel/include/rdma/ib_verbs.h

 enum ib_cq_notify_flags {
@@ -615,7 +617,9 @@ enum ib_send_flags {
        IB_SEND_FENCE           = 1,
        IB_SEND_SIGNALED        = (1<<1),
        IB_SEND_SOLICITED       = (1<<2),
-       IB_SEND_INLINE          = (1<<3)
+       IB_SEND_INLINE          = (1<<3),
+       IB_SEND_IP_CSUM         = (1<<4),
there's no point for the HW to compute the IP csum, asking this is a pure waste, since the stack always does it
+       IB_SEND_UDP_TCP_CSUM    = (1<<5)
 };

_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to