[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1297177484.3325.1.camel@bwh-desktop>
Date: Tue, 08 Feb 2011 15:04:44 +0000
From: Ben Hutchings <bhutchings@...arflare.com>
To: Herbert Xu <herbert@...dor.apana.org.au>
Cc: Michal Schmidt <mschmidt@...hat.com>,
David Miller <davem@...emloft.net>, netdev@...r.kernel.org,
linux-net-drivers@...arflare.com
Subject: Re: [PATCH] GRO: fix merging a paged skb after non-paged skbs
On Tue, 2011-02-08 at 19:49 +1100, Herbert Xu wrote:
> On Mon, Feb 07, 2011 at 08:39:20PM +0000, Ben Hutchings wrote:
> >
> > That is indeed the case; commit da3bc07171dff957906cbe2ad5abb443eccf57c4
> > made the following deletions:
> >
> > - /* Both our generic-LRO and SFC-SSR support skb and page based
> > - * allocation, but neither support switching from one to the
> > - * other on the fly. If we spot that the allocation mode has
> > - * changed, then flush the LRO state.
> > - */
> > - if (unlikely(channel->rx_alloc_pop_pages != (rx_buf->page != NULL))) {
> > - efx_flush_lro(channel);
> > - channel->rx_alloc_pop_pages = (rx_buf->page != NULL);
> > - }
>
> Oops, sorry about that.
>
> How about changing skb_gro_receive to detect such switches and
> simply return an error, which should have the same effect as
> flushing that flow?
That would work, though it looks like Michal has managed to make it
tolerate switches. (I haven't yet tested the result myself.)
Ben.
--
Ben Hutchings, Senior Software Engineer, Solarflare Communications
Not speaking for my employer; that's the marketing department's job.
They asked us to note that Solarflare product names are trademarked.
--
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