Francois Romieu wrote:
See drivers/net/e1000/e1000_main.c, search alloc_page and take a look
at include/linux/skbuff.h::struct skb_shared_info.

Is the source code of the said driver available somewhere under GPL/alike ?

It's the old version of drivers/net/ibm_emac/ibm_emac_core.c (2.6.13) the memcpy's are near the comment 'MAL is braindead'. The new version appearing in 2.16.15 looks much better, but doesn't look like it does jumbo frames, hence I'm trying to tweak the old one.

The e1000 driver, seems to use a rx ring of pages, inserting those as frags onto a skb, in the 'packet-split' receive, where the protocol header is placed in the data section of the skb.

Since this device doesn't appear to do that for us, would we copy the header section to the data part of the skb and increase the the skb_shinfo(skb)->frags[n].page_offset by the same amount. Not quite zero-copy, but copying a few protocol headers is better than the whole rx descriptor.

On the right path, or still way off?


-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to