On Wed 31-07-19 09:45:53, Qian Cai wrote: > The linux-next commit ("mm/memcontrol.c: fix use after free in > mem_cgroup_iter()") [1] introduced a compilation warning, > > mm/memcontrol.c:1160:17: warning: using the result of an assignment as a > condition without parentheses [-Wparentheses] > } while (memcg = parent_mem_cgroup(memcg)); > ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~ > mm/memcontrol.c:1160:17: note: place parentheses around the assignment > to silence this warning > } while (memcg = parent_mem_cgroup(memcg)); > ^ > ( ) > mm/memcontrol.c:1160:17: note: use '==' to turn this assignment into an > equality comparison > } while (memcg = parent_mem_cgroup(memcg)); > ^ > == > > Fix it by adding a pair of parentheses. > > [1] https://lore.kernel.org/linux-mm/20190730015729.4406-1-miles.chen@xxxxxxxxxxxx/ > > Signed-off-by: Qian Cai <cai@xxxxxx> Thanks for the fix. I assume Andrew is going to squash it into the original patch. Acked-by: Michal Hocko <mhocko@xxxxxxxx> > --- > mm/memcontrol.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/mm/memcontrol.c b/mm/memcontrol.c > index 694b6f8776dc..4f66a8305ae0 100644 > --- a/mm/memcontrol.c > +++ b/mm/memcontrol.c > @@ -1157,7 +1157,7 @@ static void invalidate_reclaim_iterators(struct mem_cgroup *dead_memcg) > do { > __invalidate_reclaim_iterators(memcg, dead_memcg); > last = memcg; > - } while (memcg = parent_mem_cgroup(memcg)); > + } while ((memcg = parent_mem_cgroup(memcg))); > > /* > * When cgruop1 non-hierarchy mode is used, > -- > 1.8.3.1 -- Michal Hocko SUSE Labs