[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20091021165139.GL877@kvack.org>
Date: Wed, 21 Oct 2009 12:51:39 -0400
From: Benjamin LaHaise <bcrl@...et.ca>
To: Eric Dumazet <eric.dumazet@...il.com>
Cc: Octavian Purdila <opurdila@...acom.com>, netdev@...r.kernel.org,
Cosmin Ratiu <cratiu@...acom.com>
Subject: Re: [PATCH] net: allow netdev_wait_allrefs() to run faster
On Wed, Oct 21, 2009 at 05:40:07PM +0200, Eric Dumazet wrote:
> Ben patch only address interface deletion, and one part of the problem,
> maybe the more visible one for the current kernel.
The first part I've been tackling has been the overhead in procfs, sysctl
and sysfs. I've got patches for some of the issues, hacks for others, and
should have something to post in a few days. Getting rid of those overheads
is enough to get to decent interface creation times for the first 20 or 30k
interfaces.
On the interface deletion side of things, within the network code, fib_hash
has a few linear scans that really start hurting. trie is a bit better,
but I haven't started digging too deeply into its flush/remove overhead yet,
aside from noticing that trie has a linear scan if
CONFIG_IP_ROUTE_MULTIPATH is set since it sets the hash size to 1.
fn_trie_flush() is currently the worst offender during deletion.
-ben
--
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