On Sun, Jul 28, 2024 at 01:18:24PM -0700, Andrew Morton wrote: > On Sun, 28 Jul 2024 11:58:47 +0800 kernel test robot <lkp@xxxxxxxxx> wrote: > > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-unstable > > head: b39b3892d20a337489c55806f91af581474f3943 > > commit: f2db5cca8182337f4ad485ebfd532b1a2d1c223a [36/78] mm, memcg: cg2 memory{.swap,}.peak write tests > > :::::: branch date: 2 days ago > > :::::: commit date: 3 days ago > > compiler: clang version 18.1.5 (https://github.com/llvm/llvm-project 617a15a9eac96088ae5e9134248d8236e34b91b1) > > reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240727/202407272301.bBC2CidR-lkp@xxxxxxxxx/reproduce) > > > > If you fix the issue in a separate patch/commit (i.e. not just a new version of > > the same patch/commit), kindly add following tags > > | Reported-by: kernel test robot <lkp@xxxxxxxxx> > > | Closes: https://lore.kernel.org/r/202407272301.bBC2CidR-lkp@xxxxxxxxx/ > > > > All warnings (new ones prefixed by >>): > > > > >> test_memcontrol.c:201:6: warning: variable 'fd4_closed' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized] > > um, > > bool fd2_closed = false, fd3_closed = false, fd4_closed = false; > > fd4_closed cannot possibly be used uninitialized? One possible flow is early peak_fd fails to open and go to cleanup, then in cleanup side, the variable like fd4_closed is directly used. + if (peak_fd == -1) + goto cleanup; + + bool fd2_closed = false, fd3_closed = false, fd4_closed = false; + int peak_fd2 = cg_open(memcg, "memory.peak", O_RDWR | O_APPEND | O_CLOEXEC); + ... cleanup: + close(peak_fd); + if (!fd2_closed) + close(peak_fd2); + if (!fd3_closed) + close(peak_fd3); + if (!fd4_closed) + close(peak_fd4); >