[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CA+55aFzfEsC9op0UzYte7OaWnvv9Czqr-0owFo0FGDqPcfGiKQ@mail.gmail.com>
Date: Thu, 24 May 2018 12:17:48 -0700
From: Linus Torvalds <torvalds@...ux-foundation.org>
To: Davidlohr Bueso <dave@...olabs.net>
Cc: Thomas Graf <tgraf@...g.ch>,
Herbert Xu <herbert@...dor.apana.org.au>,
Andrew Morton <akpm@...ux-foundation.org>,
Manfred Spraul <manfred@...orfullife.com>,
guillaume.knispel@...ersonicimagine.com,
Linux API <linux-api@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: semantics of rhashtable and sysvipc
On Thu, May 24, 2018 at 12:08 PM Davidlohr Bueso <dave@...olabs.net> wrote:
> However, after how about the resize being based on HASH_MIN_SIZE instead
of
> HASH_DEFAULT_SIZE?
I think that sounds reasonable. We wouldn't expect this to ever happen in
practice, and as you say, if it *does* happen, the size of the hash array
is the last of our problems.
> Considering that some users set p.min_size to be rather large-ish (up to
1024
> buckets afaict), we'd need the following:
> size = min(ht->p.min_size, HASH_MIN_SIZE);
Bah, let's just go for simplicity, and just make it HASH_MIN_SIZE
unconditionally, and just have a single fallback: if the first "normal"
allocation fails, do one single unconditional allocation with HASH_MIN_SIZE
and GFP_NOFAIL.
I think that should work fine.
Linus
Powered by blists - more mailing lists