> Previously, all css descendant iterators didn't include the origin > (root of subtree) css in the iteration. The reasons were maintaining > consistency with css_for_each_child() and that at the time of > introduction more use cases needed skipping the origin anyway; > however, given that css_is_descendant() considers self to be a > descendant, omitting the origin css has become more confusing and > looking at the accumulated use cases rather clearly indicates that > including origin would result in simpler code overall. > > While this is a change which can easily lead to subtle bugs, cgroup > API including the iterators has recently gone through major > restructuring and no out-of-tree changes will be applicable without > adjustments making this a relatively acceptable opportunity for this > type of change. > > The conversions are mostly straight-forward. If the iteration block > had explicit origin handling before or after, it's moved inside the > iteration. If not, if (pos == origin) continue; is added. Some > conversions add extra reference get/put around origin handling by > consolidating origin handling and the rest. While the extra ref > operations aren't strictly necessary, this shouldn't cause any > noticeable difference. > > Signed-off-by: Tejun Heo <t...@kernel.org> > Cc: Li Zefan <lize...@huawei.com> > Cc: Jens Axboe <ax...@kernel.dk> > Cc: Vivek Goyal <vgo...@redhat.com> > Cc: Matt Helsley <matth...@us.ibm.com> > Cc: Johannes Weiner <han...@cmpxchg.org> > Cc: Michal Hocko <mho...@suse.cz> > Cc: Balbir Singh <bsinghar...@gmail.com> > Cc: Aristeu Rozanski <a...@redhat.com>
I was wondering this would be better when I converted cgroup_cfts_commits() to use this iterator. Acked-by: Li Zefan <lize...@huawei.com> -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/