Re: [RFC 1/4] hashtable: introduce a small and naive hashtable

From: Eric W. Biederman
Date: Thu Aug 02 2012 - 12:09:40 EST


Sasha Levin <levinsasha928@xxxxxxxxx> writes:
> On 08/02/2012 12:32 PM, Josh Triplett wrote:
>> What about using a C99 flexible array member? Kernel style prohibits
>> variable-length arrays, but I don't think the same rationale applies to
>> flexible array members.
>>
>> struct hash_table {
>> size_t count;
>> struct hlist_head buckets[];
>> };
>>
>> #define DEFINE_HASH_TABLE(name, length) struct hash_table name = { .count = length, .buckets = { [0 ... (length - 1)] = HLIST_HEAD_INIT } }
>
> The limitation of this approach is that the struct hash_table variable
> must be 'static', which is a bit limiting - see for example the use of
> hashtable in 'struct user_namespace'.

You mean the hash table that was made static in 3.5?

You might want to try basing your patches on something a little more current.

Eric
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/