[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <vbf1sa7x9m9.fsf@reg-r-vrt-018-180.mtr.labs.mlnx>
Date: Thu, 06 Sep 2018 12:23:26 +0300
From: Vlad Buslov <vladbu@...lanox.com>
To: Kirill Tkhai <ktkhai@...tuozzo.com>
Cc: Eric Dumazet <eric.dumazet@...il.com>, netdev@...r.kernel.org,
jhs@...atatu.com, xiyou.wangcong@...il.com, jiri@...nulli.us,
davem@...emloft.net, stephen@...workplumber.org,
paulmck@...ux.vnet.ibm.com, nicolas.dichtel@...nd.com,
leon@...nel.org, gregkh@...uxfoundation.org, mark.rutland@....com,
fw@...len.de, dsahern@...il.com, lucien.xin@...il.com,
jakub.kicinski@...ronome.com, christian.brauner@...ntu.com,
jbenc@...hat.com
Subject: Re: [PATCH net-next 03/13] net: sched: extend Qdisc with rcu
On Thu 06 Sep 2018 at 08:39, Kirill Tkhai <ktkhai@...tuozzo.com> wrote:
> On 06.09.2018 11:30, Eric Dumazet wrote:
>>
>>
>> On 09/06/2018 12:58 AM, Vlad Buslov wrote:
>>
>> ...
>>
>>> 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
Hi Eric, Kirill
I intentionally put rcu_head here in order for it not to be in same
cache line with "highly modified fields" (according to comment).
Powered by blists - more mailing lists