[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1393536113.26794.41.camel@edumazet-glaptop2.roam.corp.google.com>
Date: Thu, 27 Feb 2014 13:21:53 -0800
From: Eric Dumazet <eric.dumazet@...il.com>
To: Florian Fainelli <f.fainelli@...il.com>
Cc: Ben Greear <greearb@...delatech.com>,
"linux-wireless@...r.kernel.org" <linux-wireless@...r.kernel.org>,
netdev <netdev@...r.kernel.org>
Subject: Re: How to best consolidate list of skbs (msdu) for receive?
On Thu, 2014-02-27 at 12:37 -0800, Florian Fainelli wrote:
> 2014-02-27 10:36 GMT-08:00 Ben Greear <greearb@...delatech.com>:
> > In ath10k, it can receive msdu (in rx raw mode, at least). These show up
> > as a list of skb. Currently they are just dropped as un-handled, and I
> > need to fix this.
> >
> > I think I need to consolidate this list into a single skb in order to pass
> > it up the stack.
> >
> > What is the preferred way to go about doing this?
> >
> > It seems I could just expand the head skb (pskb_expand_head) and copy the data from the others
> > onto the end of the head skb, but maybe there is a more efficient way to go about
> > doing this?
>
> Some Ethernet drivers you would in general get multiple RX fragments
> for large frames, with the first fragment containing the headers, and
> then buffers of a few KiB, it is the driver responsibility to
> reassemble this as a large SKB with multiple fragments (grep for
> skb_fill_page_desc), would that work in your case?
Also skb_try_coalesce() might feet the need, if all you have are a list
of skb, rather than an array of page fragments
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists