On Tue, Jan 03, 2012 at 12:45:45PM -0500, KOSAKI Motohiro wrote: > > void drain_all_pages(void) > > { > > - on_each_cpu(drain_local_pages, NULL, 1); > > + int cpu; > > + struct per_cpu_pageset *pcp; > > + struct zone *zone; > > + > > get_online_cpu() ? > Just a separate note; I'm looking at some mysterious CPU hotplug problems that only happen under heavy load. My strongest suspicion at the moment that the problem is related to on_each_cpu() being used without get_online_cpu() but you cannot simply call get_online_cpu() in this path without causing deadlock. If/when I get a patch that can complete a CPU hotplug stress test successfully, I'll post it. It'll collide with this series but it should be manageable. -- Mel Gorman SUSE Labs -- 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=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>