[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1245498687.12125.24.camel@deadeye>
Date: Sat, 20 Jun 2009 12:51:27 +0100
From: Ben Hutchings <bhutchings@...arflare.com>
To: Peter Chacko <peterchacko35@...il.com>
Cc: David Miller <davem@...emloft.net>, rick.jones2@...com,
radhamohan_ch@...oo.com, netdev@...r.kernel.org
Subject: Re: can we reuse an skb
On Sat, 2009-06-20 at 09:24 +0530, Peter Chacko wrote:
> But if a network application is holding on to a NIC-drive level pooled
> buffers, we also have architectural issues in violating layered
> software design. Application plays at a stateful protocol level, while
> driver should be stateless and flow-unaware.
Meanwhile, in the real world, we want to avoid copying data, so an skb
doesn't belong to any specific protocol layer.
> Another thought in the lines of radha's original idea:
>
> Assume that we have n-cores capable of processing packet at the same
> time. if we trade off memory for computing, why don't we pre-allocate
> "n" dedicated skb buffers regardless of the size of each packet, but
> just as big as the size of the MTU itself.(forget JUMBO packet for
> now).
MTU is interface-specific, and the MTU tells us whether jumbos are
allowed or not.
Anyway, where is this pre-allocation to be done?
> ( today, dev_alloc_skb() allocate based on the packet len, which
> is memory usage optimized.).
[...]
skbs for received packets are normally allocated in advance anyway,
which means they are already MTU-sized. However, LRO or GRO can make it
worthwhile to defer skb allocation.
Ben.
--
Ben Hutchings, Senior Software Engineer, Solarflare Communications
Not speaking for my employer; that's the marketing department's job.
They asked us to note that Solarflare product names are trademarked.
--
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