lkml.org 
[lkml]   [2015]   [Nov]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: NETIF_F_GSO_SOFTWARE vs NETIF_F_GSO
From
On Fri, Nov 6, 2015 at 5:58 AM, Herbert Xu <herbert@gondor.apana.org.au> wrote:
> I don't see anything fundamentally wrong with your idea. After
> all what you're describing is the basis of GSO, i.e., letting
> data stay in the form of super-packets for as long as we can.
>
> Of course there's going to be a lot of niggly bits that you'll
> have to sort out to get it to work.

Okay, great. In that case, it's the niggly bits I need to wrestle
with. Any nice convenience functions for this? Or pointers to
examples?

Would it be best to (1) allocate a massive linear skb, and then bit by
bit call skb_put (as in my example in the last email)? Or would it be
best to (2) make individual packets, and then string them together in
a FRAGLIST fashion (or is there no driver support for this)? Or would
it be best (3) to some how use the array of 16 frags, and allocate
with the alloc_skb_wth_frags function, and then super cumbersomely try
to iterate over broken-up pages?

I think (3) is going to be super hard if not impossible for my setup.
If there were some way of combining multiple skbs into a super packet,
or if the fraglist was okay to use in this regard, that'd be a
lifesaver. So far my approach with (1) hasn't been working.


\
 
 \ /
  Last update: 2015-11-06 13:01    [W:0.048 / U:0.356 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site