Re: semantics of rhashtable and sysvipc
From: Linus Torvalds
Date: Fri May 25 2018 - 07:01:06 EST
On Thu, May 24, 2018 at 12:08 PM Davidlohr Bueso <dave@xxxxxxxxxxxx> 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