On Tue, 29 Jul 2014, Tejun Heo wrote: > I'm not sure that's a viable way forward. It's not like we can > readily trigger the problematic cases which can lead to long pauses > during cpu down. Besides, we need the distinction at the API level, > which is the whole point of this. The best way probably is converting > all the correctness ones (these are the minorities) over to > queue_work_on() so that the per-cpu requirement is explicit.
Ok so we would need this fix to avoid the message: Subject: vmstat: use schedule_delayed_work_on to avoid false positives It seems that schedule_delayed_work_on will check for preemption even though none can occur. schedule_delayed_work_on will not do that. So use that function to suppress false positives. Signed-off-by: Christoph Lameter <[email protected]> Index: linux/mm/vmstat.c =================================================================== --- linux.orig/mm/vmstat.c 2014-07-29 10:14:42.356988271 -0500 +++ linux/mm/vmstat.c 2014-07-29 10:18:28.205920997 -0500 @@ -1255,7 +1255,8 @@ static void vmstat_update(struct work_st * to occur in the future. Keep on running the * update worker thread. */ - schedule_delayed_work(this_cpu_ptr(&vmstat_work), + schedule_delayed_work_on(smp_processor_id(), + this_cpu_ptr(&vmstat_work), round_jiffies_relative(sysctl_stat_interval)); else { /* -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

