[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Thu, 12 Dec 2013 14:54:13 -0800
From: Tom Herbert <therbert@...gle.com>
To: Eric Dumazet <eric.dumazet@...il.com>
Cc: David Miller <davem@...emloft.net>,
Linux Netdev List <netdev@...r.kernel.org>
Subject: Re: [PATCH] net: Cache route in IP tunnels
On Thu, Dec 12, 2013 at 1:11 PM, Eric Dumazet <eric.dumazet@...il.com> wrote:
> On Thu, 2013-12-12 at 12:56 -0800, Tom Herbert wrote:
>
>> Reverting that patch doesn't fix the problem. We are hitting the
>> spinlock in gro_cells_receive a lot though.
>
> Well, something broke then.
>
The test I'm running is over a single tunnel between two hosts, so all
packets will be hitting the same RX queue since we only steer by
3-tuple hash. Clearing or not clearing hash will have no effect.
Nevertheless, I don't see how code how gro_cells_receive (called via
ip_tunnel_rcv) could have ever have worked right for tunnels. By the
time this function is called, we've probably already spread the
packets from RX queue across multiple CPUs via RPS/RFS. So putting
them back on a queue based on RX queue would be a source of
contention. It seems like we should be using another per CPU backlog.
> I was able to reach line rate at the time I did this work.
>
>
>
--
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