On 24.02, Thomas Graf wrote: > 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. Regarding nft_hash, blocking in the netlink path certainly seems fine, but we will soon also have inserts from the packet processing path, where we obviously can't block. -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html