From: kernel test robot <lkp@intel.com>
To: oe-kbuild@lists.linux.dev
Cc: lkp@intel.com
Subject: Re: [PATCH] mm: workingset: judge cross-memcg refaults by generation age
Date: Thu, 27 Aug 2026 07:44:07 +0800 [thread overview]
Message-ID: <202608270754.MUJBalZd-lkp@intel.com> (raw)
::::::
:::::: Manual check reason: "__compiletime_assert_NNN"
::::::
BCC: lkp@intel.com
CC: llvm@lists.linux.dev
CC: oe-kbuild-all@lists.linux.dev
In-Reply-To: <20260826075133.751049-1-zhaoyang.huang@unisoc.com>
References: <20260826075133.751049-1-zhaoyang.huang@unisoc.com>
TO: "zhaoyang.huang" <zhaoyang.huang@unisoc.com>
TO: Andrew Morton <akpm@linux-foundation.org>
CC: Linux Memory Management List <linux-mm@kvack.org>
TO: David Hildenbrand <david@kernel.org>
TO: Axel Rasmussen <axelrasmussen@google.com>
TO: Yuanchu Xie <yuanchu@google.com>
TO: Wei Xu <weixugc@google.com>
TO: Johannes Weiner <hannes@cmpxchg.org>
TO: Michal Hocko <mhocko@kernel.org>
TO: Qi Zheng <zhengqi.arch@bytedance.com>
TO: Shakeel Butt <shakeel.butt@linux.dev>
TO: Lorenzo Stoakes <ljs@kernel.org>
TO: Barry Song <baohua@kernel.org>
TO: linux-kernel@vger.kernel.org
TO: Zhaoyang Huang <huangzhaoyang@gmail.com>
TO: steve.kang@unisoc.com
Hi zhaoyang.huang,
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/zhaoyang-huang/mm-workingset-judge-cross-memcg-refaults-by-generation-age/20260826-155133
base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything
patch link: https://lore.kernel.org/r/20260826075133.751049-1-zhaoyang.huang%40unisoc.com
patch subject: [PATCH] mm: workingset: judge cross-memcg refaults by generation age
:::::: branch date: 16 hours ago
:::::: commit date: 16 hours ago
config: hexagon-randconfig-002-20260827 (https://download.01.org/0day-ci/archive/20260827/202608270754.MUJBalZd-lkp@intel.com/config)
compiler: clang version 24.0.0git (https://github.com/llvm/llvm-project 771bdfdab2d66a4eb85b8ea7673cfa30152718b1)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260827/202608270754.MUJBalZd-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/r/202608270754.MUJBalZd-lkp@intel.com/
All errors (new ones prefixed by >>):
>> mm/workingset.c:275:2: error: call to '__compiletime_assert_655' declared with 'error' attribute: BUILD_BUG_ON failed: EVICT_TS_WIDTH <= 0
275 | BUILD_BUG_ON(EVICT_TS_WIDTH <= 0);
| ^
include/linux/build_bug.h:51:2: note: expanded from macro 'BUILD_BUG_ON'
51 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^
include/linux/build_bug.h:40:37: note: expanded from macro 'BUILD_BUG_ON_MSG'
40 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^
include/linux/compiler_types.h:702:2: note: expanded from macro 'compiletime_assert'
702 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^
include/linux/compiler_types.h:690:2: note: expanded from macro '_compiletime_assert'
690 | __compiletime_assert(condition, msg, prefix, suffix)
| ^
include/linux/compiler_types.h:683:4: note: expanded from macro '__compiletime_assert'
683 | prefix ## suffix(); \
| ^
<scratch space>:22:1: note: expanded from here
22 | __compiletime_assert_655
| ^
mm/workingset.c:275:2: note: called by function 'lru_gen_eviction'
include/linux/build_bug.h:51:2: note: expanded from macro 'BUILD_BUG_ON'
51 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^
include/linux/build_bug.h:40:37: note: expanded from macro 'BUILD_BUG_ON_MSG'
40 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^
include/linux/compiler_types.h:702:2: note: expanded from macro 'compiletime_assert'
702 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^
include/linux/compiler_types.h:690:2: note: expanded from macro '_compiletime_assert'
690 | __compiletime_assert(condition, msg, prefix, suffix)
| ^
include/linux/compiler_types.h:683:4: note: expanded from macro '__compiletime_assert'
683 | prefix ## suffix(); \
| ^
<scratch space>:22:1: note: expanded from here
22 | __compiletime_assert_655
| ^
mm/workingset.c:275:2: note: inlined by function 'workingset_eviction'
include/linux/build_bug.h:51:2: note: expanded from macro 'BUILD_BUG_ON'
51 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^
include/linux/build_bug.h:40:37: note: expanded from macro 'BUILD_BUG_ON_MSG'
40 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^
include/linux/compiler_types.h:702:2: note: expanded from macro 'compiletime_assert'
702 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^
include/linux/compiler_types.h:690:2: note: expanded from macro '_compiletime_assert'
690 | __compiletime_assert(condition, msg, prefix, suffix)
| ^
include/linux/compiler_types.h:683:4: note: expanded from macro '__compiletime_assert'
683 | prefix ## suffix(); \
| ^
<scratch space>:22:1: note: expanded from here
22 | __compiletime_assert_655
| ^
1 error generated.
vim +275 mm/workingset.c
ac35a490237446 Yu Zhao 2022-09-18 256
ac35a490237446 Yu Zhao 2022-09-18 257 static void *lru_gen_eviction(struct folio *folio)
ac35a490237446 Yu Zhao 2022-09-18 258 {
ac35a490237446 Yu Zhao 2022-09-18 259 int hist;
ac35a490237446 Yu Zhao 2022-09-18 260 unsigned long token;
ac35a490237446 Yu Zhao 2022-09-18 261 unsigned long min_seq;
ac35a490237446 Yu Zhao 2022-09-18 262 struct lruvec *lruvec;
391655fe08d1f9 Yu Zhao 2022-12-21 263 struct lru_gen_folio *lrugen;
ac35a490237446 Yu Zhao 2022-09-18 264 int type = folio_is_file_lru(folio);
ac35a490237446 Yu Zhao 2022-09-18 265 int delta = folio_nr_pages(folio);
ac35a490237446 Yu Zhao 2022-09-18 266 int refs = folio_lru_refs(folio);
4d5d14a01e2c90 Yu Zhao 2024-12-30 267 bool workingset = folio_test_workingset(folio);
4d5d14a01e2c90 Yu Zhao 2024-12-30 268 int tier = lru_tier_from_refs(refs, workingset);
b3ca98297cd98a Muchun Song 2026-03-05 269 struct mem_cgroup *memcg;
ac35a490237446 Yu Zhao 2022-09-18 270 struct pglist_data *pgdat = folio_pgdat(folio);
b3ca98297cd98a Muchun Song 2026-03-05 271 unsigned short memcg_id;
ac35a490237446 Yu Zhao 2022-09-18 272
f3d652b0604375 Kairui Song 2026-02-18 273 BUILD_BUG_ON(LRU_GEN_WIDTH + LRU_REFS_WIDTH >
f3d652b0604375 Kairui Song 2026-02-18 274 BITS_PER_LONG - max(EVICTION_SHIFT, EVICTION_SHIFT_ANON));
21d81639858ca7 Zhaoyang Huang 2026-08-26 @275 BUILD_BUG_ON(EVICT_TS_WIDTH <= 0);
21d81639858ca7 Zhaoyang Huang 2026-08-26 276 BUILD_BUG_ON(EVICT_SEQ_WIDTH < 16);
21d81639858ca7 Zhaoyang Huang 2026-08-26 277 BUILD_BUG_ON(LRU_REFS_WIDTH + EVICT_SEQ_WIDTH +
21d81639858ca7 Zhaoyang Huang 2026-08-26 278 EVICT_TS_WIDTH != EVICTION_BITS);
ac35a490237446 Yu Zhao 2022-09-18 279
b3ca98297cd98a Muchun Song 2026-03-05 280 rcu_read_lock();
b3ca98297cd98a Muchun Song 2026-03-05 281 memcg = folio_memcg(folio);
ac35a490237446 Yu Zhao 2022-09-18 282 lruvec = mem_cgroup_lruvec(memcg, pgdat);
ac35a490237446 Yu Zhao 2022-09-18 283 lrugen = &lruvec->lrugen;
ac35a490237446 Yu Zhao 2022-09-18 284 min_seq = READ_ONCE(lrugen->min_seq[type]);
21d81639858ca7 Zhaoyang Huang 2026-08-26 285 token = ((min_seq & EVICT_SEQ_MASK) << LRU_REFS_WIDTH) |
21d81639858ca7 Zhaoyang Huang 2026-08-26 286 max(refs - 1, 0);
21d81639858ca7 Zhaoyang Huang 2026-08-26 287 token |= (jiffies & EVICT_TS_MASK) << EVICT_TS_PGOFF;
ac35a490237446 Yu Zhao 2022-09-18 288
ac35a490237446 Yu Zhao 2022-09-18 289 hist = lru_hist_from_seq(min_seq);
ac35a490237446 Yu Zhao 2022-09-18 290 atomic_long_add(delta, &lrugen->evicted[hist][type][tier]);
b3ca98297cd98a Muchun Song 2026-03-05 291 memcg_id = mem_cgroup_private_id(memcg);
b3ca98297cd98a Muchun Song 2026-03-05 292 rcu_read_unlock();
ac35a490237446 Yu Zhao 2022-09-18 293
b3ca98297cd98a Muchun Song 2026-03-05 294 return pack_shadow(memcg_id, pgdat, token, workingset, type);
ac35a490237446 Yu Zhao 2022-09-18 295 }
ac35a490237446 Yu Zhao 2022-09-18 296
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next reply other threads:[~2026-08-26 23:44 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-26 23:44 kernel test robot [this message]
-- strict thread matches above, loose matches on Subject: below --
2026-08-26 7:51 [PATCH] mm: workingset: judge cross-memcg refaults by generation age zhaoyang.huang
2026-08-26 16:23 ` kernel test robot
2026-08-26 21:58 ` Barry Song
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=202608270754.MUJBalZd-lkp@intel.com \
--to=lkp@intel.com \
--cc=oe-kbuild@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.