On wed, 7 Mar 2012 11:22:01 +0000, Mel Gorman wrote: >> Beside that, we need deal with fork() carefully, or it is possible that the child >> task will be set to a wrong nodemask. >> > > Can you clarify this statement please? It's not clear what the old code > did that protected against problems in fork() versus this patch. fork is > not calling get_mems_allowed() for example or doing anything special > around mems_allowed. > > Maybe you are talking about an existing problem whereby during fork > there should be get_mems_allowed/put_mems_allowed and the mems_allowed > mask gets copied explicitly? Yes, If someone updates cpuset's nodemask or cpumask before the child task is attached into the cpuset cgroup, the child task's nodemask and cpumask can not be updated, just holds the old mask. We can fix this problem by seqcounter in a new patch.(It seems the freeze subsystem also has the same problem) Thanks Miao -- 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>