On Tue, Dec 17, 2013 at 11:51:24PM +0100, Frederic Weisbecker wrote: > - rcu_kick_nohz_cpu(tick_do_timer_cpu); > + smp_send_reschedule(tick_do_timer_cpu);
Hurm.. so I don't really like this (same for the other patches doing the similar change). Why not have a function called: wake_time_keeper_cpu(), and have that do the right thing? Also, afaict, all you want is that remote cpu to run tick_nohz_full_check(), right? So why are you (ab)using the scheduler_ipi for this at all? Why not have something like: static DEFINE_PER_CPU(struct call_single_data, nohz_full_csd); int init_nohz_full(void) { int cpu; for_each_possible_cpu(cpu) { struct call_single_data *csd = &per_cpu(nohz_full_csd, cpu); csd->flags = 0; csd->func = &tick_nohz_full_check; csd->info = NULL; } return 0; } void wake_time_keeper_cpu(void) { int cpu = pick_timekeeper_cpu(); struct single_call_data *csd = &per_cpu(nohz_full_csd, cpu); __smp_call_function_single(cpu, csd, 0); } -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/