Hi,
As far as I understand, in 2.2.x networking code the protocol
header and data used to reside in a contiguous region in memory(pointed
to by the head, data, tail, end of sk_buff struct),
ie skb->data is the starting point and skb->tail is the ending point.
| |
| |
skb->data -- |-------------- |
| |
| |
| |
| |
| |
skb->tail -- |---------------|
| |
And the device drivers used to transfer from skb->data to
skb->tail(==skb->len).
My question is: Is the state of the art same in 2.4.0, ie. is
protocol header and data still has to reside contiguously? Or header and
data may be non-contiguous and the driver does scatter/gather.
I am starting off in 2.4.0 , plz. help.
--
sourav
--------------------------------------------------------------------------------
SOURAV SEN MSc(Engg.) CSA IISc BANGALORE URL : www2.csa.iisc.ernet.in/~sourav
ROOM NO : N-78 TEL :(080)309-2454(HOSTEL) (080)309-2906 (COMP LAB)
--------------------------------------------------------------------------------
In the patch by David S. Miller, copy_from_user() is still there (Line
14360 in zerocopy-2.4.0-1.diff). So which copy is reduced? Can anyone
explain kindly.
thanks
sourav
On Mon, 5 Mar 2001, Albert D. Cahalan wrote:
> > My question is: Is the state of the art same in 2.4.0, ie. is
> > protocol header and data still has to reside contiguously? Or header and
> > data may be non-contiguous and the driver does scatter/gather.
> >
> > I am starting off in 2.4.0 , plz. help.
>
> See the zero-copy patches by David S. Miller on ftp.kernel.org in
> his personal directory. If I remember right, the name of the
> directory is: /pub/linux/kernel/people/davem
>
> These patches are now in Alan Cox's patch sets. (the "ac" kernels)
n> You may find Alan Cox's stuff in his personal directory ("alan") at
> the same FTP site.
>