lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150224083714.GB17306@casper.infradead.org>
Date:	Tue, 24 Feb 2015 08:37:14 +0000
From:	Thomas Graf <tgraf@...g.ch>
To:	"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>
Cc:	David Miller <davem@...emloft.net>, josh@...htriplett.org,
	alexei.starovoitov@...il.com, herbert@...dor.apana.org.au,
	kaber@...sh.net, ying.xue@...driver.com, netdev@...r.kernel.org,
	netfilter-devel@...r.kernel.org
Subject: Re: Ottawa and slow hash-table resize

On 02/23/15 at 03:06pm, Paul E. McKenney wrote:
> On Mon, Feb 23, 2015 at 05:32:52PM -0500, David Miller wrote:
> > I just did a quick scan of all code paths that do inserts into an
> > rhashtable, and it seems like all of them can easily block.  So why
> > don't we do that?  Make inserts sleep on an rhashtable expansion
> > waitq.
> > 
> > There could even be a counter of pending inserts, so the expander can
> > decide to expand further before waking the inserting threads up.
> 
> Should be reasonably simple, and certainly seems worth a try!

Agreed. Definitely desirable for nft_hash. I like the pending counter
idea. I'm experimenting with various ideas on blocking inserts for
Netlink. Blocking too long might open DoS vectors as one app could
easily delay the creation of sockets for other applications.
--
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ