[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20140115.121856.712581760900022040.davem@davemloft.net>
Date: Wed, 15 Jan 2014 12:18:56 -0800 (PST)
From: David Miller <davem@...emloft.net>
To: eric.dumazet@...il.com
Cc: christoph.paasch@...ouvain.be, netdev@...r.kernel.org
Subject: Re: [RFC net] tcp: metrics: Avoid duplicate entries with the same
destination-IP
From: Eric Dumazet <eric.dumazet@...il.com>
Date: Mon, 13 Jan 2014 08:47:49 -0800
> On Mon, 2014-01-13 at 16:25 +0100, Christoph Paasch wrote:
>
>> Another solution might be to leave tcp_get_metrics() as it is, and in
>> tcpm_new do another call to __tcp_get_metrics() while holding the
>> spin-lock. We would then check __tcp_get_metrics twice for new entries
>> but we won't hold the spin-lock needlessly anymore.
>
> This is the only solution if you want to fix this.
> Cost of lookup are the cache line misses.
> Avoiding the spinlock is a must.
>
> The second 'lookup' is basically free, as the first one have populated
> cpu caches.
Indeed, taking the lock in tcp_get_metrics() is to be avoided at all
costs.
--
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