On Fri, 2012-05-25 at 19:02 +0200, Andrea Arcangeli wrote: > @@ -3274,6 +3268,8 @@ need_resched: > > post_schedule(rq); > > + sched_autonuma_balance(); > + > sched_preempt_enable_no_resched(); > if (need_resched()) > goto need_resched; > +void sched_autonuma_balance(void) > +{ > + for_each_online_node(nid) { > + } > + for_each_online_node(nid) { > + for_each_cpu_and(cpu, cpumask_of_node(nid), allowed) { > + } > + } > + stop_one_cpu(this_cpu, migration_cpu_stop, &arg); > +} NAK You do _NOT_ put a O(nr_cpus) or even O(nr_nodes) loop in the middle of schedule(). I see you've made it conditional, but schedule() taking that long -- even occasionally -- is just not cool. schedule() calling schedule() is also an absolute abomination. You were told to fix this several times.. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href