From: Daniel Borkmann <daniel@iogearbox.net>
To: Josh Hunt <johunt@akamai.com>
Cc: Thomas Graf <tgraf@suug.ch>,
Pablo Neira Ayuso <pablo@netfilter.org>,
Patrick McHardy <kaber@trash.net>,
netfilter-devel@vger.kernel.org, netdev@vger.kernel.org
Subject: Re: [PATCH 1/3] rhashtable: require max_shift definition
Date: Tue, 10 Feb 2015 18:06:39 +0100 [thread overview]
Message-ID: <54DA3A9F.9090608@iogearbox.net> (raw)
In-Reply-To: <54DA2A13.5010204@akamai.com>
On 02/10/2015 04:56 PM, Josh Hunt wrote:
> On 02/10/2015 02:30 AM, Daniel Borkmann wrote:
>> On 02/10/2015 01:58 AM, Thomas Graf wrote:
>>> On 02/09/15 at 07:48pm, Josh Hunt wrote:
>>>> if ((params->key_len && !params->hashfn) ||
>>>> - (!params->key_len && !params->obj_hashfn))
>>>> + (!params->key_len && !params->obj_hashfn) ||
>>>> + (!params->max_shift))
>>>> return -EINVAL;
>>>
>>> You can drop the parenthesis around the new max_shift check.
>>
>> Also, I think the test should be expanded to check if there's
>> a grow_decision given and only in that case require max_shift
>> to be non-zero, otherwise we would require users who don't
>> want to expand their table to give a upper expansion limit.
>
> This is a good point. I'll make this change.
>
> max_shift restricts the # of buckets, but should there be an optional parameter, maxelems, to set a ceiling on the # of elements in a table also? If not, I believe users will be able to add an "unlimited" # of entries to the existing buckets, whether or not a grow_decision fn is defined.
Hm, given that min_shift/max_shift are parameters that directly
concern internals of rhashtable i.e. are tightly coupled to expand
and shrink functionality, I'd say that depending on the use case,
a maxelem limit should rather be handled outside of it, if it's
truly an issue/concern.
next prev parent reply other threads:[~2015-02-10 17:06 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-02-10 0:48 [PATCH 0/3] nft hash set expansion fixes Josh Hunt
2015-02-10 0:48 ` [PATCH 1/3] rhashtable: require max_shift definition Josh Hunt
2015-02-10 0:58 ` Thomas Graf
2015-02-10 8:30 ` Daniel Borkmann
2015-02-10 15:56 ` Josh Hunt
2015-02-10 17:06 ` Daniel Borkmann [this message]
2015-02-10 17:22 ` Thomas Graf
2015-02-10 17:44 ` Patrick McHardy
2015-02-10 21:18 ` Josh Hunt
2015-02-10 0:48 ` [PATCH 2/3] nft_hash: define max_shift rhashtable param Josh Hunt
2015-02-10 0:48 ` [PATCH 3/3] nft_hash: introduce init_size set parameter Josh Hunt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=54DA3A9F.9090608@iogearbox.net \
--to=daniel@iogearbox.net \
--cc=johunt@akamai.com \
--cc=kaber@trash.net \
--cc=netdev@vger.kernel.org \
--cc=netfilter-devel@vger.kernel.org \
--cc=pablo@netfilter.org \
--cc=tgraf@suug.ch \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.