[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4CAA2FE1.6030900@intel.com>
Date: Mon, 04 Oct 2010 12:49:53 -0700
From: Alexander Duyck <alexander.h.duyck@...el.com>
To: David Miller <davem@...emloft.net>
CC: "Kirsher, Jeffrey T" <jeffrey.t.kirsher@...el.com>,
"Brandeburg, Jesse" <jesse.brandeburg@...el.com>,
"Allan, Bruce W" <bruce.w.allan@...el.com>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: Re: ixgbe: normalize frag_list usage
David Miller wrote:
> From: Alexander Duyck <alexander.h.duyck@...el.com>
> Date: Mon, 04 Oct 2010 11:04:18 -0700
>
>> This will not work for RSC due to the fact that it assumes only one
>> RSC context is active per ring and that is not the case. There can be
>> multiple RSC combined flows interlaced on the ring.
>
> Thanks for looking at this Alexander.
>
> I must have mis-understood what the current code is doing.
>
> It looked like RSC packets always show up in-order in the RX ring.
>
> And that they are scanned for by simply combining any sequence of
> non-EOP packets up to and including the final EOP one into a frag
> list.
>
> Are the RSC packets are identified via something else entirely?
They show up in order, but they are not necessarily linear. You can
have other packets show up in the middle of the flow and RSC just jumps
over them. The determination for the jump is handled via nextp in
ixgbe_clean_rx_irq.
I'll look into this and see if I can come up with a counter-proposal
patch based on the suggestions I was making. The key item though is
that the tail would need some means of referencing head which I think
can probably be accomplished via skb->next.
Thanks,
Alex
--
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