On Tue 22-04-14 18:58:11, Jianyu Zhan wrote: [...] > This reminds me of my draft edition of this patch, I specifically handle > this case as: > > if (reclaim) { > if (!memcg ) { > iter->generation++; > if (!prev) { > memcg = root; > mem_cgroup_iter_update(iter, NULL, memcg, root, seq); > goto out_unlock: > } > } > mem_cgroup_iter_update(iter, last_visited, memcg, root, > seq); > if (!prev && memcg) > reclaim->generation = iter->generation; > } > > This is literally manual unwinding the second while loop, and thus omit > the while loop, > to save a mem_cgroup_iter_update() and a mem_cgroup_iter_update() > > But it maybe a bit hard to read. Dunno, this particular case is more explicit but it is also uglier so I do not think this is an overall improvement. I would rather keep the current state unless the change either simplifies the generated code or it is much better to read. Thanks! -- Michal Hocko SUSE Labs -- To unsubscribe from this list: send the line "unsubscribe cgroups" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html