[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1387306031.19078.286.camel@edumazet-glaptop2.roam.corp.google.com>
Date: Tue, 17 Dec 2013 10:47:11 -0800
From: Eric Dumazet <eric.dumazet@...il.com>
To: Tom Herbert <therbert@...gle.com>
Cc: davem@...emloft.net, edumazet@...gle.com, netdev@...r.kernel.org
Subject: Re: PATCH] net: Cache align dst refcnt
On Tue, 2013-12-17 at 10:29 -0800, Eric Dumazet wrote:
> On Tue, 2013-12-17 at 10:15 -0800, Tom Herbert wrote:
> > ipv4_dst_check is coming up very high in perf top for TCP_RR tests and
> > it really is not doing much interesting. Looks like we have false
> > sharing with dst->refcnt. This patch cache aligns refcnt. There were
> > already some comments in the code that refcnt needs to be cache aligned.
> >
> > Signed-off-by: Tom Herbert <therbert@...gle.com>
> > ---
> > include/net/dst.h | 11 +++--------
> > 1 file changed, 3 insertions(+), 8 deletions(-)
BTW, this dst refcount dirtying is because of netperf using blocking
reads, enabling prequeuing (assuming /proc/sys/net/ipv4/tcp_low_latency
is 0)
And the rx dst is shared by all cpus, if you use concurrent netperfs all
coming from one particular source.
This could be solved (if we really care about this case on real
workloads) by making nh_rth_input a per cpu var, as we did for
nh_pcpu_rth_output
--
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