Re: [PATCH 1/4] net: skb_orphan on dev_hard_start_xmit
From: Rusty Russell <hidden>
Date: 2009-06-02 14:11:37
On Tue, 2 Jun 2009 04:55:53 pm David Miller wrote:
From: Patrick Ohly <redacted> Date: Mon, 01 Jun 2009 21:47:22 +0200quoted
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? Thanks, Rusty.