forked from Minki/linux
rhashtable: ensure cache line alignment on bucket_table
struct bucket_table contains mostly read fields : size, locks_mask, locks. Make sure these are not sharing a cache line with buckets[] Signed-off-by: Eric Dumazet <edumazet@google.com> Acked-by: Daniel Borkmann <daniel@iogearbox.net> Acked-by: Thomas Graf <tgraf@suug.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
a4176a9391
commit
b9ebafbe8c
@ -54,10 +54,11 @@ struct rhash_head {
|
||||
* @buckets: size * hash buckets
|
||||
*/
|
||||
struct bucket_table {
|
||||
size_t size;
|
||||
unsigned int locks_mask;
|
||||
spinlock_t *locks;
|
||||
struct rhash_head __rcu *buckets[];
|
||||
size_t size;
|
||||
unsigned int locks_mask;
|
||||
spinlock_t *locks;
|
||||
|
||||
struct rhash_head __rcu *buckets[] ____cacheline_aligned_in_smp;
|
||||
};
|
||||
|
||||
typedef u32 (*rht_hashfn_t)(const void *data, u32 len, u32 seed);
|
||||
|
Loading…
Reference in New Issue
Block a user