On Thu, Jun 27, 2024 at 12:13 AM Michal Hocko <mhocko@xxxxxxxx> wrote: > > On Wed 26-06-24 09:42:32, Xiu Jianfeng wrote: > > Both the end of memory_stat_format() and memcg_stat_format() will call > > WARN_ON_ONCE(seq_buf_has_overflowed()). However, memory_stat_format() > > is the only caller of memcg_stat_format(), when memcg is on the default > > hierarchy, seq_buf_has_overflowed() will be executed twice, so remove > > the reduntant one. > > Shouldn't we rather remove both? Are they giving us anything useful > actually? Would a simpl pr_warn be sufficient? Afterall all we care > about is to learn that we need to grow the buffer size because our stats > do not fit anymore. It is not really important whether that is an OOM or > cgroupfs interface path. Is it possible for userspace readers to break if the stats are incomplete? If yes, I think WARN_ON_ONCE() may be prompted to make it easier to catch and fix before deployment.