Thread (28 messages) 28 messages, 5 authors, 2009-08-19

Re: [PATCH 1/4] net: skb_orphan on dev_hard_start_xmit

From: David Miller <davem@davemloft.net>
Date: 2009-06-03 00:14:18
Also in: virtualization

From: Rusty Russell <redacted>
Date: Tue, 2 Jun 2009 23:38:29 +0930
On Tue, 2 Jun 2009 04:55:53 pm David Miller wrote:
quoted
From: Patrick Ohly <redacted>
Date: Mon, 01 Jun 2009 21:47:22 +0200
quoted
On Fri, 2009-05-29 at 23:44 +0930, Rusty Russell wrote:
quoted
This patch adds skb_orphan to the start of dev_hard_start_xmit(): it
can be premature in the NETDEV_TX_BUSY case, but that's uncommon.
Would it be possible to make the new skb_orphan() at the start of
dev_hard_start_xmit() conditionally so that it is not executed for
packets that are to be time stamped?

As discussed before
(http://article.gmane.org/gmane.linux.network/121378/), the skb->sk
socket pointer is required for sending back the send time stamp from
inside the device driver. Calling skb_orphan() unconditionally as in
this patch would break the hardware time stamping of outgoing packets.
Indeed, we need to check that case, at a minimum.

And there are other potentially other problems.  For example, I
wonder how this interacts with the new TX MMAP af_packet support
in net-next-2.6 :-/
I think I'll do this in the driver for now, and let's revisit doing it 
generically later?
That might be the best course of action for the time being.
This whole area is a rat's nest.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help