[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <063D6719AE5E284EB5DD2968C1650D6D1CAEEE09@AcuExch.aculab.com>
Date: Thu, 26 Feb 2015 15:36:18 +0000
From: David Laight <David.Laight@...LAB.COM>
To: 'Eric Dumazet' <eric.dumazet@...il.com>,
Patrick McHardy <kaber@...sh.net>
CC: Alexei Starovoitov <alexei.starovoitov@...il.com>,
Daniel Borkmann <daniel@...earbox.net>,
"davem@...emloft.net" <davem@...emloft.net>,
"tgraf@...g.ch" <tgraf@...g.ch>,
"pablo@...filter.org" <pablo@...filter.org>,
"johunt@...mai.com" <johunt@...mai.com>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: RE: [PATCH net] rhashtable: use cond_resched()
From: Eric Dumazet
Sent: 26 February 2015 15:21
> If a hash table has 128 slots and 16384 elems, expand to 256 slots
> takes more than one second. For larger sets, a soft lockup is detected.
What on earth is it doing?
Presumably something to do with the rcu actions needed to allow
lockless lookup during resize.
There has to be a better solution?
Perhaps even two sets of chain pointers down the hash lists.
Then the old hash table can be kept completely valid while the
whole 'unzip' action is done.
David
Powered by blists - more mailing lists