netfilter: nf_queue: place volatile data in own cacheline
As the comment indicates, the data at the end of nfqnl_instance struct is written on every queue/dequeue, so it should reside in its own cacheline. Before this change, 'lock' was in first cacheline so we dirtied both. Signed-off-by: Florian Westphal <fw@strlen.de> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
This commit is contained in:
parent
e41e9d623c
commit
886bc50348
|
@ -69,7 +69,7 @@ struct nfqnl_instance {
|
|||
* Following fields are dirtied for each queued packet,
|
||||
* keep them in same cache line if possible.
|
||||
*/
|
||||
spinlock_t lock;
|
||||
spinlock_t lock ____cacheline_aligned_in_smp;
|
||||
unsigned int queue_total;
|
||||
unsigned int id_sequence; /* 'sequence' of pkt ids */
|
||||
struct list_head queue_list; /* packets in queue */
|
||||
|
|
Loading…
Reference in New Issue