[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20110729111904.GA5151@hmsreliant.think-freely.org>
Date: Fri, 29 Jul 2011 07:19:04 -0400
From: Neil Horman <nhorman@...driver.com>
To: "Michael S. Tsirkin" <mst@...hat.com>
Cc: mashirle@...ibm.com, netdev@...r.kernel.org
Subject: Re: [PATCH 0/2] pktgen: Clone skb to avoid corruption of skbs in
ndo_start_xmit methods (v3)
On Fri, Jul 29, 2011 at 09:16:42AM +0300, Michael S. Tsirkin wrote:
> On Tue, Jul 26, 2011 at 12:05:36PM -0400, Neil Horman wrote:
> > Ok, after considering all your comments, Dave suggested this as an alternate
> > approach:
> >
> > 1) We create a new priv_flag, IFF_SKB_TX_SHARED, to identify drivers capable of
> > handling shared skbs. Default is to not set this flag
> >
> > 2) Modify ether_setup to enable this flag, under the assumption that any driver
> > calling this function is initalizing a real ethernet device and as such can
> > handle shared skbs since they don't tend to store state in the skb struct.
> > Pktgen can then query this flag when a user script attempts to issue the
> > clone_skb command and decide if it is to be alowed or not.
> >
> > 3) Audit the network drivers calling ether_setup to identify any code doing so
> > that can't actualy handle shared skbs and manually disable the new flag. There
> > are about 10 drivers in this category.
> >
> > Change notes:
> > v3) Fixed Erics note in which I tested the length of the passed in string rather
> > than its converted value for beign > 0
> >
> > Thoughts/reviews aprpeciated.
> > Neil
>
> It might be a good idea to disable vhost-net zerocopy for
> such devices as well: these skbs are shared with userspace.
> Shirley, what do you think?
>
I don't think thats a problem, since (IIUC) only skbs with (tx_flags &
SKBTX_DEV_ZEROCOPY) set can do that. The pktgen skbs originate in the kernel
and never have that flag set).
Neil
P.S. Don't call me Shirley :). Sorry, its not every day you get to use that
line.
> --
> MST
>
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists