From: kernel test robot <lkp@intel.com>
To: Shakeel Butt <shakeel.butt@linux.dev>,
Andrew Morton <akpm@linux-foundation.org>,
Johannes Weiner <hannes@cmpxchg.org>,
Michal Hocko <mhocko@kernel.org>,
Roman Gushchin <roman.gushchin@linux.dev>,
Muchun Song <muchun.song@linux.dev>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
Linux Memory Management List <linux-mm@kvack.org>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH 2/4] memcg: reduce memory for the lruvec and memcg stats
Date: Tue, 23 Apr 2024 22:40:38 +0800 [thread overview]
Message-ID: <202404232230.94gQwAI2-lkp@intel.com> (raw)
In-Reply-To: <20240423051826.791934-3-shakeel.butt@linux.dev>
Hi Shakeel,
kernel test robot noticed the following build errors:
[auto build test ERROR on next-20240422]
[cannot apply to akpm-mm/mm-everything linus/master v6.9-rc5 v6.9-rc4 v6.9-rc3 v6.9-rc5]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Shakeel-Butt/mm-rearrange-node_stat_item-to-put-memcg-stats-at-start/20240423-132451
base: next-20240422
patch link: https://lore.kernel.org/r/20240423051826.791934-3-shakeel.butt%40linux.dev
patch subject: [PATCH 2/4] memcg: reduce memory for the lruvec and memcg stats
config: x86_64-buildonly-randconfig-002-20240423 (https://download.01.org/0day-ci/archive/20240423/202404232230.94gQwAI2-lkp@intel.com/config)
compiler: clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240423/202404232230.94gQwAI2-lkp@intel.com/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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202404232230.94gQwAI2-lkp@intel.com/
All errors (new ones prefixed by >>):
>> mm/memcontrol.c:1651:2: error: call to '__compiletime_assert_963' declared with 'error' attribute: BUILD_BUG_ON failed: ARRAY_SIZE(memory_stats) != MEMCG_NR_STAT - 1
1651 | BUILD_BUG_ON(ARRAY_SIZE(memory_stats) != MEMCG_NR_STAT - 1);
| ^
include/linux/build_bug.h:50:2: note: expanded from macro 'BUILD_BUG_ON'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^
include/linux/build_bug.h:39:37: note: expanded from macro 'BUILD_BUG_ON_MSG'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^
include/linux/compiler_types.h:460:2: note: expanded from macro 'compiletime_assert'
460 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^
include/linux/compiler_types.h:448:2: note: expanded from macro '_compiletime_assert'
448 | __compiletime_assert(condition, msg, prefix, suffix)
| ^
include/linux/compiler_types.h:441:4: note: expanded from macro '__compiletime_assert'
441 | prefix ## suffix(); \
| ^
<scratch space>:40:1: note: expanded from here
40 | __compiletime_assert_963
| ^
1 error generated.
vim +1651 mm/memcontrol.c
1645
1646 static void memcg_stat_format(struct mem_cgroup *memcg, struct seq_buf *s)
1647 {
1648 int i;
1649
1650 /* Reduce by 1 for MEMCG_SWAP as that is not exposed in v2. */
> 1651 BUILD_BUG_ON(ARRAY_SIZE(memory_stats) != MEMCG_NR_STAT - 1);
1652
1653 /*
1654 * Provide statistics on the state of the memory subsystem as
1655 * well as cumulative event counters that show past behavior.
1656 *
1657 * This list is ordered following a combination of these gradients:
1658 * 1) generic big picture -> specifics and details
1659 * 2) reflecting userspace activity -> reflecting kernel heuristics
1660 *
1661 * Current memory state:
1662 */
1663 mem_cgroup_flush_stats(memcg);
1664
1665 for (i = 0; i < ARRAY_SIZE(memory_stats); i++) {
1666 u64 size;
1667
1668 size = memcg_page_state_output(memcg, memory_stats[i].idx);
1669 seq_buf_printf(s, "%s %llu\n", memory_stats[i].name, size);
1670
1671 if (unlikely(memory_stats[i].idx == NR_SLAB_UNRECLAIMABLE_B)) {
1672 size += memcg_page_state_output(memcg,
1673 NR_SLAB_RECLAIMABLE_B);
1674 seq_buf_printf(s, "slab %llu\n", size);
1675 }
1676 }
1677
1678 /* Accumulated memory events */
1679 seq_buf_printf(s, "pgscan %lu\n",
1680 memcg_events(memcg, PGSCAN_KSWAPD) +
1681 memcg_events(memcg, PGSCAN_DIRECT) +
1682 memcg_events(memcg, PGSCAN_KHUGEPAGED));
1683 seq_buf_printf(s, "pgsteal %lu\n",
1684 memcg_events(memcg, PGSTEAL_KSWAPD) +
1685 memcg_events(memcg, PGSTEAL_DIRECT) +
1686 memcg_events(memcg, PGSTEAL_KHUGEPAGED));
1687
1688 for (i = 0; i < ARRAY_SIZE(memcg_vm_event_stat); i++) {
1689 if (memcg_vm_event_stat[i] == PGPGIN ||
1690 memcg_vm_event_stat[i] == PGPGOUT)
1691 continue;
1692
1693 seq_buf_printf(s, "%s %lu\n",
1694 vm_event_name(memcg_vm_event_stat[i]),
1695 memcg_events(memcg, memcg_vm_event_stat[i]));
1696 }
1697
1698 /* The above should easily fit into one page */
1699 WARN_ON_ONCE(seq_buf_has_overflowed(s));
1700 }
1701
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2024-04-23 14:41 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-23 5:18 [PATCH 0/4] memcg: reduce memory consumption by memcg stats Shakeel Butt
2024-04-23 5:18 ` [PATCH 1/4] mm: rearrange node_stat_item to put memcg stats at start Shakeel Butt
2024-04-23 13:58 ` Johannes Weiner
2024-04-23 17:44 ` Shakeel Butt
2024-04-23 18:30 ` Johannes Weiner
2024-04-25 22:54 ` Chris Li
2024-04-25 18:01 ` Chris Li
2024-04-23 5:18 ` [PATCH 2/4] memcg: reduce memory for the lruvec and memcg stats Shakeel Butt
2024-04-23 14:40 ` kernel test robot [this message]
2024-04-23 20:58 ` kernel test robot
2024-04-23 5:22 ` [PATCH 3/4] memcg: use proper type for mod_memcg_state Shakeel Butt
2024-04-23 5:23 ` [PATCH 4/4] memcg: restrict __mod_memcg_lruvec_state to memcg stats Shakeel Butt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202404232230.94gQwAI2-lkp@intel.com \
--to=lkp@intel.com \
--cc=akpm@linux-foundation.org \
--cc=hannes@cmpxchg.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=llvm@lists.linux.dev \
--cc=mhocko@kernel.org \
--cc=muchun.song@linux.dev \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=roman.gushchin@linux.dev \
--cc=shakeel.butt@linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.