From: kernel test robot <lkp@intel.com>
To: Joshua Hahn <joshua.hahnjy@gmail.com>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev
Subject: Re: [RFC PATCH 5/6] mm/memcontrol, page_counter: Make memory.low tier-aware
Date: Tue, 24 Feb 2026 13:36:59 +0800 [thread overview]
Message-ID: <202602241310.PE1e03sT-lkp@intel.com> (raw)
In-Reply-To: <20260223223830.586018-6-joshua.hahnjy@gmail.com>
Hi Joshua,
[This is a private test report for your RFC patch.]
kernel test robot noticed the following build errors:
[auto build test ERROR on akpm-mm/mm-everything]
url: https://github.com/intel-lab-lkp/linux/commits/Joshua-Hahn/mm-page_counter-Introduce-tiered-memory-awareness-to-page_counter/20260224-073845
base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything
patch link: https://lore.kernel.org/r/20260223223830.586018-6-joshua.hahnjy%40gmail.com
patch subject: [RFC PATCH 5/6] mm/memcontrol, page_counter: Make memory.low tier-aware
config: x86_64-allnoconfig (https://download.01.org/0day-ci/archive/20260224/202602241310.PE1e03sT-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260224/202602241310.PE1e03sT-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/202602241310.PE1e03sT-lkp@intel.com/
All errors (new ones prefixed by >>):
>> mm/vmscan.c:6003:6: error: use of undeclared identifier 'tier_aware_memcg_limits'
6003 | tier_aware_memcg_limits && toptier)) {
| ^
1 error generated.
vim +/tier_aware_memcg_limits +6003 mm/vmscan.c
5957
5958 static void shrink_node_memcgs(pg_data_t *pgdat, struct scan_control *sc)
5959 {
5960 struct mem_cgroup *target_memcg = sc->target_mem_cgroup;
5961 struct mem_cgroup_reclaim_cookie reclaim = {
5962 .pgdat = pgdat,
5963 };
5964 struct mem_cgroup_reclaim_cookie *partial = &reclaim;
5965 struct mem_cgroup *memcg;
5966 bool toptier = node_is_toptier(pgdat->node_id);
5967
5968 /*
5969 * In most cases, direct reclaimers can do partial walks
5970 * through the cgroup tree, using an iterator state that
5971 * persists across invocations. This strikes a balance between
5972 * fairness and allocation latency.
5973 *
5974 * For kswapd, reliable forward progress is more important
5975 * than a quick return to idle. Always do full walks.
5976 */
5977 if (current_is_kswapd() || sc->memcg_full_walk)
5978 partial = NULL;
5979
5980 memcg = mem_cgroup_iter(target_memcg, NULL, partial);
5981 do {
5982 struct lruvec *lruvec = mem_cgroup_lruvec(memcg, pgdat);
5983 unsigned long reclaimed;
5984 unsigned long scanned;
5985
5986 /*
5987 * This loop can become CPU-bound when target memcgs
5988 * aren't eligible for reclaim - either because they
5989 * don't have any reclaimable pages, or because their
5990 * memory is explicitly protected. Avoid soft lockups.
5991 */
5992 cond_resched();
5993
5994 mem_cgroup_calculate_protection(target_memcg, memcg, toptier);
5995
5996 if (mem_cgroup_below_min(target_memcg, memcg)) {
5997 /*
5998 * Hard protection.
5999 * If there is no reclaimable memory, OOM.
6000 */
6001 continue;
6002 } else if (mem_cgroup_below_low(target_memcg, memcg,
> 6003 tier_aware_memcg_limits && toptier)) {
6004 /*
6005 * Soft protection.
6006 * Respect the protection only as long as
6007 * there is an unprotected supply
6008 * of reclaimable memory from other cgroups.
6009 */
6010 if (!sc->memcg_low_reclaim) {
6011 sc->memcg_low_skipped = 1;
6012 continue;
6013 }
6014 memcg_memory_event(memcg, MEMCG_LOW);
6015 }
6016
6017 reclaimed = sc->nr_reclaimed;
6018 scanned = sc->nr_scanned;
6019
6020 shrink_lruvec(lruvec, sc);
6021
6022 shrink_slab(sc->gfp_mask, pgdat->node_id, memcg,
6023 sc->priority);
6024
6025 /* Record the group's reclaim efficiency */
6026 if (!sc->proactive)
6027 vmpressure(sc->gfp_mask, memcg, false,
6028 sc->nr_scanned - scanned,
6029 sc->nr_reclaimed - reclaimed);
6030
6031 /* If partial walks are allowed, bail once goal is reached */
6032 if (partial && sc->nr_reclaimed >= sc->nr_to_reclaim) {
6033 mem_cgroup_iter_break(target_memcg, memcg);
6034 break;
6035 }
6036 } while ((memcg = mem_cgroup_iter(target_memcg, memcg, partial)));
6037 }
6038
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2026-02-24 5:38 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-23 22:38 [RFC PATCH 0/6] mm/memcontrol: Make memcg limits tier-aware Joshua Hahn
2026-02-23 22:38 ` [RFC PATCH 1/6] mm/memory-tiers: Introduce tier-aware memcg limit sysfs Joshua Hahn
2026-02-23 22:38 ` [RFC PATCH 2/6] mm/page_counter: Introduce tiered memory awareness to page_counter Joshua Hahn
2026-02-24 9:25 ` kernel test robot
2026-02-23 22:38 ` [RFC PATCH 3/6] mm/memory-tiers, memcontrol: Introduce toptier capacity updates Joshua Hahn
2026-02-23 22:38 ` [RFC PATCH 4/6] mm/memcontrol: Charge and uncharge from toptier Joshua Hahn
2026-02-23 22:38 ` [RFC PATCH 5/6] mm/memcontrol, page_counter: Make memory.low tier-aware Joshua Hahn
2026-02-24 3:33 ` kernel test robot
2026-02-24 5:36 ` kernel test robot [this message]
2026-02-23 22:38 ` [RFC PATCH 6/6] mm/memcontrol: Make memory.high tier-aware Joshua Hahn
2026-02-24 6:47 ` kernel test robot
2026-03-11 22:05 ` Bing Jiao
2026-03-12 19:44 ` Joshua Hahn
2026-03-24 10:51 ` Donet Tom
2026-03-24 15:23 ` Gregory Price
2026-03-24 15:46 ` Donet Tom
2026-03-24 15:44 ` Joshua Hahn
2026-03-24 16:06 ` Donet Tom
2026-02-24 11:27 ` [RFC PATCH 0/6] mm/memcontrol: Make memcg limits tier-aware Michal Hocko
2026-02-24 16:13 ` Joshua Hahn
2026-02-24 18:49 ` Gregory Price
2026-02-24 20:03 ` Kaiyang Zhao
2026-02-26 8:04 ` Michal Hocko
2026-02-26 16:08 ` Joshua Hahn
2026-03-24 10:30 ` Donet Tom
2026-03-24 14:58 ` Joshua Hahn
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=202602241310.PE1e03sT-lkp@intel.com \
--to=lkp@intel.com \
--cc=joshua.hahnjy@gmail.com \
--cc=llvm@lists.linux.dev \
--cc=oe-kbuild-all@lists.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.