Thread (23 messages) 23 messages, 6 authors, 2017-04-28

Re: [PATCH net-next] rhashtable: remove insecure_max_entries param

From: Florian Westphal <fw@strlen.de>
Date: 2017-04-25 14:17:55

Herbert Xu [off-list ref] wrote:
On Tue, Apr 25, 2017 at 01:23:56PM +0200, Florian Westphal wrote:
quoted
What extra cost?

The only change is that ht->nelems has to be right-shifted by one,
I don't think that warrants extra space in struct rhashtable, its
already way too large (I think we can reduce its size further).
I see at least one hole on 64-bit which means that you can fit
it into struct rhashtable for free.
I'd rather close that hole by removing more stuff from rhastable and
rhashtable_params structs instead.

F.e. why do we need to have two key_len (one in params, one in
struct rhashtable)?

Or why does rhashtable use size_t in rhashtable_params to e.g. store
a key offset? Just using 'unsigned int' instead would shrink
rhashtable_params by 16 bytes.

I'd have less of an issue with this if we'd be talking about
something computationally expensive, but this is about storing
an extra value inside a struct just to avoid one "shr" in insert path...
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help