On Thu, Mar 23, 2023 at 04:00:34AM +0000, Yosry Ahmed wrote: > @@ -644,26 +644,26 @@ static void __mem_cgroup_flush_stats(void) > return; > > flush_next_time = jiffies_64 + 2*FLUSH_TIME; > - cgroup_rstat_flush(root_mem_cgroup->css.cgroup, false); > + cgroup_rstat_flush(root_mem_cgroup->css.cgroup, may_sleep); How is it safe to call this with may_sleep=true when it's holding the stats_flush_lock? > atomic_set(&stats_flush_threshold, 0); > spin_unlock(&stats_flush_lock); > }