| Date | Thu, 6 Sep 2012 10:41:12 -0700 | From | "Paul E. McKenney" <> | Subject | Re: [PATCH tip/core/rcu 07/23] rcu: Provide OOM handler to motivate lazy RCU callbacks |
| |
On Thu, Sep 06, 2012 at 09:52:53AM -0400, Steven Rostedt wrote: > On Thu, 2012-09-06 at 15:46 +0200, Peter Zijlstra wrote: > > On Thu, 2012-08-30 at 11:18 -0700, Paul E. McKenney wrote: > > > + get_online_cpus(); > > > + for_each_online_cpu(cpu) > > > + for_each_rcu_flavor(rsp) > > > + smp_call_function_single(cpu, rcu_oom_notify_cpu, > > > + rsp, 1); > > > + put_online_cpus(); > > > > I guess blasting IPIs around is better than OOM but still.. do you > > really need to wait for each cpu individually, or would a construct > > using on_each_cpu() be possible, or better yet, on_each_cpu_cond()?
I rejected on_each_cpu_cond() because it disables preemption across a scan of all CPUs. Probably need to fix that at some point...
> Also, what about having the rcu_oom_notify_cpu handler do the > for_each_rcu_flavor() and not send an IPI multiple times to a single > CPU?
Fair enough!
Thanx, Paul
|