Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-15 Thread Joel Fernandes
On Thu, Aug 15, 2019 at 11:39:37AM -0700, Paul E. McKenney wrote: > On Thu, Aug 15, 2019 at 02:15:00PM -0400, Joel Fernandes wrote: > > On Thu, Aug 15, 2019 at 10:23:51AM -0700, Paul E. McKenney wrote: > > > > [snip] > > > > > > > If so, perhaps that monitoring could periodically invoke an RCU > >

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-15 Thread Paul E. McKenney
On Thu, Aug 15, 2019 at 02:15:00PM -0400, Joel Fernandes wrote: > On Thu, Aug 15, 2019 at 10:23:51AM -0700, Paul E. McKenney wrote: > > On Thu, Aug 15, 2019 at 11:07:35AM -0400, Joel Fernandes wrote: > > > On Wed, Aug 14, 2019 at 03:05:16PM -0700, Paul E. McKenney wrote: > > > [snip] > > > > > > If

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-15 Thread Joel Fernandes
On Thu, Aug 15, 2019 at 10:23:51AM -0700, Paul E. McKenney wrote: > On Thu, Aug 15, 2019 at 11:07:35AM -0400, Joel Fernandes wrote: > > On Wed, Aug 14, 2019 at 03:05:16PM -0700, Paul E. McKenney wrote: > > [snip] > > > > > If so, perhaps that monitoring could periodically invoke an RCU > > > > > f

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-15 Thread Paul E. McKenney
On Thu, Aug 15, 2019 at 11:07:35AM -0400, Joel Fernandes wrote: > On Wed, Aug 14, 2019 at 03:05:16PM -0700, Paul E. McKenney wrote: > [snip] > > > > > Arming a CPU timer could also be an alternative to tick_set_dep_cpu() > > > > > for that. > > > > > > > > > > What do you think? > > > > > > > >

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-15 Thread Joel Fernandes
On Wed, Aug 14, 2019 at 03:05:16PM -0700, Paul E. McKenney wrote: [snip] > > > > Arming a CPU timer could also be an alternative to tick_set_dep_cpu() > > > > for that. > > > > > > > > What do you think? > > > > > > Left to itself, RCU would take action only when a given nohz_full > > > in-kerne

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-14 Thread Paul E. McKenney
On Wed, Aug 14, 2019 at 01:55:46PM -0400, Joel Fernandes wrote: > On Tue, Aug 13, 2019 at 07:48:09AM -0700, Paul E. McKenney wrote: > > On Tue, Aug 13, 2019 at 02:30:19PM +0200, Frederic Weisbecker wrote: > > > On Mon, Aug 12, 2019 at 04:23:16PM -0700, Paul E. McKenney wrote: > > > > On Mon, Aug 12

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-14 Thread Joel Fernandes
On Tue, Aug 13, 2019 at 07:48:09AM -0700, Paul E. McKenney wrote: > On Tue, Aug 13, 2019 at 02:30:19PM +0200, Frederic Weisbecker wrote: > > On Mon, Aug 12, 2019 at 04:23:16PM -0700, Paul E. McKenney wrote: > > > On Mon, Aug 12, 2019 at 11:02:33PM +0200, Frederic Weisbecker wrote: > > > > On Fri, A

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-13 Thread Paul E. McKenney
On Mon, Aug 12, 2019 at 04:23:16PM -0700, Paul E. McKenney wrote: > On Mon, Aug 12, 2019 at 11:02:33PM +0200, Frederic Weisbecker wrote: > > On Fri, Aug 02, 2019 at 08:15:01AM -0700, Paul E. McKenney wrote: > > > The multi_cpu_stop() function relies on the scheduler to gain control from > > > whate

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-13 Thread Paul E. McKenney
On Tue, Aug 13, 2019 at 02:30:19PM +0200, Frederic Weisbecker wrote: > On Mon, Aug 12, 2019 at 04:23:16PM -0700, Paul E. McKenney wrote: > > On Mon, Aug 12, 2019 at 11:02:33PM +0200, Frederic Weisbecker wrote: > > > On Fri, Aug 02, 2019 at 08:15:01AM -0700, Paul E. McKenney wrote: > > > Looks like

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-13 Thread Frederic Weisbecker
On Mon, Aug 12, 2019 at 04:23:16PM -0700, Paul E. McKenney wrote: > On Mon, Aug 12, 2019 at 11:02:33PM +0200, Frederic Weisbecker wrote: > > On Fri, Aug 02, 2019 at 08:15:01AM -0700, Paul E. McKenney wrote: > > Looks like it's not the right fix but, should you ever need to set an > > all-CPUs (syst

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-12 Thread Joel Fernandes
On Mon, Aug 12, 2019 at 7:23 PM Paul E. McKenney wrote: > > On Mon, Aug 12, 2019 at 11:02:33PM +0200, Frederic Weisbecker wrote: > > On Fri, Aug 02, 2019 at 08:15:01AM -0700, Paul E. McKenney wrote: > > > The multi_cpu_stop() function relies on the scheduler to gain control from > > > whatever is

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-12 Thread Paul E. McKenney
On Mon, Aug 12, 2019 at 11:02:33PM +0200, Frederic Weisbecker wrote: > On Fri, Aug 02, 2019 at 08:15:01AM -0700, Paul E. McKenney wrote: > > The multi_cpu_stop() function relies on the scheduler to gain control from > > whatever is running on the various online CPUs, including any nohz_full > > CPU

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-12 Thread Frederic Weisbecker
On Fri, Aug 02, 2019 at 08:15:01AM -0700, Paul E. McKenney wrote: > The multi_cpu_stop() function relies on the scheduler to gain control from > whatever is running on the various online CPUs, including any nohz_full > CPUs running long loops in kernel-mode code. Lack of the scheduler-clock > inte

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-09 Thread Paul E. McKenney
On Fri, Aug 09, 2019 at 02:07:21PM -0400, Joel Fernandes wrote: > On Fri, Aug 09, 2019 at 09:51:20AM -0700, Paul E. McKenney wrote: > > > > > And of course I forgot to dump out the online CPUs, so I really had no > > > > > idea whether or not all the CPUs were accounted for. I added tracing > > >

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-09 Thread Joel Fernandes
On Fri, Aug 09, 2019 at 09:51:20AM -0700, Paul E. McKenney wrote: > > > > And of course I forgot to dump out the online CPUs, so I really had no > > > > idea whether or not all the CPUs were accounted for. I added tracing > > > > to dump out the online CPUs at the beginning of __stop_cpus() and th

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-09 Thread Paul E. McKenney
On Thu, Aug 08, 2019 at 02:30:12PM -0700, Paul E. McKenney wrote: > On Thu, Aug 08, 2019 at 01:35:41PM -0700, Paul E. McKenney wrote: > > On Wed, Aug 07, 2019 at 02:41:31PM -0700, Paul E. McKenney wrote: > > > On Tue, Aug 06, 2019 at 11:08:24AM -0700, Paul E. McKenney wrote: > > > > On Mon, Aug 05,

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-08 Thread Paul E. McKenney
On Thu, Aug 08, 2019 at 01:35:41PM -0700, Paul E. McKenney wrote: > On Wed, Aug 07, 2019 at 02:41:31PM -0700, Paul E. McKenney wrote: > > On Tue, Aug 06, 2019 at 11:08:24AM -0700, Paul E. McKenney wrote: > > > On Mon, Aug 05, 2019 at 10:48:00AM -0700, Paul E. McKenney wrote: > > > > On Mon, Aug 05,

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-08 Thread Paul E. McKenney
On Wed, Aug 07, 2019 at 02:41:31PM -0700, Paul E. McKenney wrote: > On Tue, Aug 06, 2019 at 11:08:24AM -0700, Paul E. McKenney wrote: > > On Mon, Aug 05, 2019 at 10:48:00AM -0700, Paul E. McKenney wrote: > > > On Mon, Aug 05, 2019 at 05:50:24PM +0200, Peter Zijlstra wrote: > > > > On Mon, Aug 05, 2

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-07 Thread Paul E. McKenney
On Tue, Aug 06, 2019 at 11:08:24AM -0700, Paul E. McKenney wrote: > On Mon, Aug 05, 2019 at 10:48:00AM -0700, Paul E. McKenney wrote: > > On Mon, Aug 05, 2019 at 05:50:24PM +0200, Peter Zijlstra wrote: > > > On Mon, Aug 05, 2019 at 07:54:48AM -0700, Paul E. McKenney wrote: > > > > > > > > Right; s

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-06 Thread Paul E. McKenney
On Mon, Aug 05, 2019 at 10:48:00AM -0700, Paul E. McKenney wrote: > On Mon, Aug 05, 2019 at 05:50:24PM +0200, Peter Zijlstra wrote: > > On Mon, Aug 05, 2019 at 07:54:48AM -0700, Paul E. McKenney wrote: > > > > > > Right; so clearly we're not understanding what's happening. That seems > > > > like

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-05 Thread Paul E. McKenney
On Mon, Aug 05, 2019 at 05:50:24PM +0200, Peter Zijlstra wrote: > On Mon, Aug 05, 2019 at 07:54:48AM -0700, Paul E. McKenney wrote: > > > > Right; so clearly we're not understanding what's happening. That seems > > > like a requirement for actually doing a patch. > > > > Almost but not quite. It

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-05 Thread Peter Zijlstra
On Mon, Aug 05, 2019 at 07:54:48AM -0700, Paul E. McKenney wrote: > > Right; so clearly we're not understanding what's happening. That seems > > like a requirement for actually doing a patch. > > Almost but not quite. It is a requirement for a patch *that* *is* > *supposed* *to* *be* *a* *fix*.

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-05 Thread Paul E. McKenney
On Mon, Aug 05, 2019 at 10:05:31AM +0200, Peter Zijlstra wrote: > On Sun, Aug 04, 2019 at 11:41:59AM -0700, Paul E. McKenney wrote: > > On Sun, Aug 04, 2019 at 04:48:35PM +0200, Peter Zijlstra wrote: > > > On Sun, Aug 04, 2019 at 04:43:17PM +0200, Peter Zijlstra wrote: > > > > On Fri, Aug 02, 2019

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-05 Thread Paul E. McKenney
On Mon, Aug 05, 2019 at 10:07:36AM +0200, Peter Zijlstra wrote: > On Sun, Aug 04, 2019 at 09:19:01PM -0700, Paul E. McKenney wrote: > > On Sun, Aug 04, 2019 at 01:24:46PM -0700, Paul E. McKenney wrote: > > > > For whatever it is worth, the things on my list include using 25 rounds > > > of resched

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-05 Thread Peter Zijlstra
On Sun, Aug 04, 2019 at 09:19:01PM -0700, Paul E. McKenney wrote: > On Sun, Aug 04, 2019 at 01:24:46PM -0700, Paul E. McKenney wrote: > > For whatever it is worth, the things on my list include using 25 rounds > > of resched_cpu() on each CPU with ten-jiffy wait between each (instead of > > merely

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-05 Thread Peter Zijlstra
On Sun, Aug 04, 2019 at 11:41:59AM -0700, Paul E. McKenney wrote: > On Sun, Aug 04, 2019 at 04:48:35PM +0200, Peter Zijlstra wrote: > > On Sun, Aug 04, 2019 at 04:43:17PM +0200, Peter Zijlstra wrote: > > > On Fri, Aug 02, 2019 at 08:15:01AM -0700, Paul E. McKenney wrote: > > > > The multi_cpu_stop(

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-04 Thread Paul E. McKenney
On Sun, Aug 04, 2019 at 01:24:46PM -0700, Paul E. McKenney wrote: > On Sun, Aug 04, 2019 at 11:41:59AM -0700, Paul E. McKenney wrote: > > On Sun, Aug 04, 2019 at 04:48:35PM +0200, Peter Zijlstra wrote: > > > On Sun, Aug 04, 2019 at 04:43:17PM +0200, Peter Zijlstra wrote: > > > > On Fri, Aug 02, 201

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-04 Thread Paul E. McKenney
On Sun, Aug 04, 2019 at 11:41:59AM -0700, Paul E. McKenney wrote: > On Sun, Aug 04, 2019 at 04:48:35PM +0200, Peter Zijlstra wrote: > > On Sun, Aug 04, 2019 at 04:43:17PM +0200, Peter Zijlstra wrote: > > > On Fri, Aug 02, 2019 at 08:15:01AM -0700, Paul E. McKenney wrote: > > > > The multi_cpu_stop(

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-04 Thread Paul E. McKenney
On Sun, Aug 04, 2019 at 04:48:35PM +0200, Peter Zijlstra wrote: > On Sun, Aug 04, 2019 at 04:43:17PM +0200, Peter Zijlstra wrote: > > On Fri, Aug 02, 2019 at 08:15:01AM -0700, Paul E. McKenney wrote: > > > The multi_cpu_stop() function relies on the scheduler to gain control from > > > whatever is

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-04 Thread Peter Zijlstra
On Sun, Aug 04, 2019 at 04:43:17PM +0200, Peter Zijlstra wrote: > On Fri, Aug 02, 2019 at 08:15:01AM -0700, Paul E. McKenney wrote: > > The multi_cpu_stop() function relies on the scheduler to gain control from > > whatever is running on the various online CPUs, including any nohz_full > > CPUs run

Re: [PATCH RFC tip/core/rcu 14/14] rcu/nohz: Make multi_cpu_stop() enable tick on all online CPUs

2019-08-04 Thread Peter Zijlstra
On Fri, Aug 02, 2019 at 08:15:01AM -0700, Paul E. McKenney wrote: > The multi_cpu_stop() function relies on the scheduler to gain control from > whatever is running on the various online CPUs, including any nohz_full > CPUs running long loops in kernel-mode code. Lack of the scheduler-clock > inte