--- Jeff Garzik <[EMAIL PROTECTED]> schrieb:
> This begs the question, what are you trying to do?
> ;-)
I have seen network drivers whose hard_start_xmit
function calls skb_push or skb_put to extend the used
data area of the struct skb_buff passed to the
function. That avoids allocating a new buffer and
copying the whole data area to it. The drivers
apparently do that because the device expects a
specific header or suffix in the DMA buffer it
handles.
> In terms of object lifetimes, control passes to the
> net driver when
> ->hard_start_xmit() is called, but that does not
> mean you can freely
> scribble over things -- the skb may have been
> cloned, its destructor
> callback still needs to be called (via
> dev_kfree_skb), etc.
So I assume modifying the data or header area of
struct sk_buff is incorrect because it can break
cloned buffers.
Heute schon einen Blick in die Zukunft von E-Mails wagen?
www.yahoo.de/mail
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html