I've seen a couple of drivers (for instance - e100) using fragmented skb
on transmit path.
I was wondering, how one can do the same on receive ?
Anybody ever tried to do this ? Is there any example of such a driver ?
--
Alexander Sirotkin
SW Engineer
Texas Instruments
Broadband Communications Israel (BCIL)
Tel: +972-9-9706587
________________________________________________________________________
"Those who do not understand Unix are condemned to reinvent it, poorly."
-- Henry Spencer
On Tue, Jan 13, 2004 at 10:49:56AM +0200, Sirotkin, Alexander wrote:
> I've seen a couple of drivers (for instance - e100) using fragmented skb
> on transmit path.
> I was wondering, how one can do the same on receive ?
How? build a fragmented skb on the receive path and send it
upwards. Last I looked at the relevant code (2.4.something), however,
the tcp/ip stack called skb_linearize() on the skb on its way up, so
you wouldn't gain anything unless you teach it to deal with fragmented
skb's all the way up. That's just what I recall - this subject was
discussed several times in the past, look in the archives for details.
Cheers,
Muli
--
Muli Ben-Yehuda
http://www.mulix.org | http://mulix.livejournal.com/
"the nucleus of linux oscillates my world" - gccbot@#offtopic
Muli Ben-Yehuda <[email protected]> writes:
> How? build a fragmented skb on the receive path and send it
> upwards. Last I looked at the relevant code (2.4.something), however,
> the tcp/ip stack called skb_linearize() on the skb on its way up, so
Actually the main protocols (TCP,UDP,RAW) work with fragmented skbs. The
skb_linearize() users are mostly netfilter modules and some obscure
older protocols. Most of that has been fixed in 2.6.
-Andi