[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1810346528.8990.1627495925037.JavaMail.zimbra@efficios.com>
Date: Wed, 28 Jul 2021 14:12:05 -0400 (EDT)
From: Mathieu Desnoyers <mathieu.desnoyers@...icios.com>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: paulmck <paulmck@...nel.org>, rcu <rcu@...r.kernel.org>,
linux-kernel <linux-kernel@...r.kernel.org>,
kernel-team <kernel-team@...com>, Ingo Molnar <mingo@...nel.org>,
Lai Jiangshan <jiangshanlai@...il.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Josh Triplett <josh@...htriplett.org>,
Thomas Gleixner <tglx@...utronix.de>,
Peter Zijlstra <peterz@...radead.org>,
rostedt <rostedt@...dmis.org>,
David Howells <dhowells@...hat.com>,
Eric Dumazet <edumazet@...gle.com>,
fweisbec <fweisbec@...il.com>, Oleg Nesterov <oleg@...hat.com>,
"Joel Fernandes, Google" <joel@...lfernandes.org>
Subject: Re: [PATCH v2 rcu 04/18] rcu: Weaken ->dynticks accesses and
updates
----- On Jul 28, 2021, at 1:58 PM, Linus Torvalds torvalds@...ux-foundation.org wrote:
> On Wed, Jul 28, 2021 at 10:37 AM Paul E. McKenney <paulmck@...nel.org> wrote:
>>
>> +/*
>> + * Increment the current CPU's rcu_data structure's ->dynticks field
>> + * with ordering. Return the new value.
>> + */
>> +static noinstr unsigned long rcu_dynticks_inc(int incby)
>> +{
>> + return arch_atomic_add_return(incby, this_cpu_ptr(&rcu_data.dynticks));
>> +}
>
> Maybe inline?
>
> But more I reacted to how we sadly don't have percpu atomics. They'd
> be fairly easy to add on x86, but I guess it's not a huge deal.
Are the percpu atomics you have in mind different from what is found in
Documentation/core-api/this_cpu_ops.rst ?
Namely this_cpu_add_return(pcp, val) in this case.
I must be missing something subtle because AFAIU those are already
available. Those per-cpu atomics don't provide any memory ordering
though, which may be why those are not used here.
Thanks,
Mathieu
--
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com
Powered by blists - more mailing lists