On 09/06/2018 01:39 AM, Kirill Tkhai wrote:
On 06.09.2018 11:30, Eric Dumazet wrote:
quoted
On 09/06/2018 12:58 AM, Vlad Buslov wrote:
...
quoted
diff --git a/include/net/sch_generic.h b/include/net/sch_generic.h
index 18e22a5a6550..239c73f29471 100644
--- a/include/net/sch_generic.h
+++ b/include/net/sch_generic.h
@@ -90,6 +90,7 @@ struct Qdisc {
struct gnet_stats_queue __percpu *cpu_qstats;
int padded;
refcount_t refcnt;
+ struct rcu_head rcu;
/*
* For performance sake on SMP, we put highly modified fields at the end
Probably better to move this at the end of struct Qdisc,
not risking unexpected performance regressions in fast path.
Do you mean regressions on UP? On SMP it looks like this field
fits in the unused gap created by:
struct sk_buff_head gso_skb ____cacheline_aligned_in_smp;
Kirill
Oh right, we might have holes there, and in the last cache line, so it does not
matter for now.