[Top] [All Lists]

Re: Submission for S2io 10GbE driver

To: raghavendra.koushik@xxxxxxxxx
Subject: Re: Submission for S2io 10GbE driver
From: Jeff Garzik <jgarzik@xxxxxxxxx>
Date: Thu, 19 Feb 2004 03:14:46 -0500
Cc: leonid.grossman@xxxxxxxx, netdev@xxxxxxxxxxx, raghavendra.koushik@xxxxxxxx, ravinandan.arakali@xxxxxxxx
In-reply-to: <4223A04BF7D1B941A25246ADD0462FF5010FA5EB@xxxxxxxxxxxxxxxxxxxx>
References: <4223A04BF7D1B941A25246ADD0462FF5010FA5EB@xxxxxxxxxxxxxxxxxxxx>
Sender: netdev-bounce@xxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030703
raghavendra.koushik@xxxxxxxxx wrote:
Hi Jeff,

1. points 7 and 8, when initSharedMem returns error, I call
freeSharedMem which should free any partially alloced memory.

For #8 quite possibly, and if so, I stand corrected.

For #7, it's a temporary variable so this would be impossible.

2. For point 17 and 33
We do support IPV6 checksum offload. There is one issue though,
our hardware only says whether the checksum is Ok or not it does
not actually return the checksum values!
If I say features as NETIF_F_IP_CSUM instead of NETIF_F_HW_CSUM,
then I cannot utilize it's entire gamut of checksum offload feature
as the offload will be limited to just TCP/UDP over IPV4.

Correct. Your hardware cannot utilize NETIF_F_HW_CSUM. You must be able to supply a valid csum from hardware, to use NETIF_F_HW_CSUM. Using NETIF_F_HW_CSUM as s2io does is abuse of the API, and prone to breakage...

For the future, it sounds like you should create a NETIF_F_IPV6_CSUM that works for both IPv4 and IPv6, and more closely matches your hardware. We need to do this anyway, because most future cards will almost certainly offload IPv6 as well as IPv4.

For the present, NETIF_F_IP_CSUM is unfortunately your only choice. Zero-copy only occurs for sendfile(2) system call, which works fine with NETIF_F_IP_CSUM, so no big deal.

In general, I certainly want to encourage s2io to participate in adding features to Linux that is needed to more fully utilize the hardware. Some of the proposed features might not be appropriate, but adding NETIF_F_IPV6_CSUM for you guys certainly seems reasonable.


<Prev in Thread] Current Thread [Next in Thread>