Incremental cgroup iteration is being used again [1]. This patchset improves the reliability of mem_cgroup_iter(). It also improves simplicity and code readability. [1] https://lore.kernel.org/20240514202641.2821494-1-hannes@xxxxxxxxxxx/ -- v2: add patch to clarify css sibling linkage is RCU protected. The kernel build bot RCU sparse error from v1 has been ignored. v1: https://lore.kernel.org/20240724190214.1108049-1-kinseyho@xxxxxxxxxx/ Kinsey Ho (5): cgroup: clarify css sibling linkage is protected by cgroup_mutex or RCU mm: don't hold css->refcnt during traversal mm: increment gen # before restarting traversal mm: restart if multiple traversals raced mm: clean up mem_cgroup_iter() include/linux/cgroup-defs.h | 6 ++- include/linux/memcontrol.h | 6 +-- kernel/cgroup/cgroup.c | 16 +++---- mm/memcontrol.c | 84 +++++++++++++++---------------------- 4 files changed, 51 insertions(+), 61 deletions(-) -- 2.46.0.76.ge559c4bf1a-goog