public inbox for llvm@lists.linux.dev
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Gabriel Krisman Bertazi <krisman@suse.de>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev
Subject: Re: [RFC PATCH 3/4] mm: Avoid percpu MM counters on single-threaded tasks
Date: Fri, 28 Nov 2025 11:55:57 +0800	[thread overview]
Message-ID: <202511281118.Q9mK711R-lkp@intel.com> (raw)
In-Reply-To: <20251127233635.4170047-4-krisman@suse.de>

Hi Gabriel,

[This is a private test report for your RFC patch.]
kernel test robot noticed the following build errors:

[auto build test ERROR on linus/master]
[also build test ERROR on v6.18-rc7 next-20251127]
[cannot apply to akpm-mm/mm-everything dennis-percpu/for-next kees/for-next/execve]
[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/Gabriel-Krisman-Bertazi/lib-percpu_counter-Split-out-a-helper-to-insert-into-hotplug-list/20251128-073934
base:   linus/master
patch link:    https://lore.kernel.org/r/20251127233635.4170047-4-krisman%40suse.de
patch subject: [RFC PATCH 3/4] mm: Avoid percpu MM counters on single-threaded tasks
config: x86_64-allnoconfig (https://download.01.org/0day-ci/archive/20251128/202511281118.Q9mK711R-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/20251128/202511281118.Q9mK711R-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/202511281118.Q9mK711R-lkp@intel.com/

All errors (new ones prefixed by >>):

   In file included from arch/x86/kernel/asm-offsets.c:9:
   In file included from include/linux/crypto.h:18:
   In file included from include/linux/slab.h:16:
   In file included from include/linux/gfp.h:7:
   In file included from include/linux/mmzone.h:22:
   In file included from include/linux/mm_types.h:21:
>> include/linux/lazy_percpu_counter.h:48:36: error: no member named 'remote' in 'struct percpu_counter'
      48 |         return !(atomic_long_read(&lpc->c.remote) & LAZY_INIT_BIAS);
         |                                    ~~~~~~ ^
   include/linux/lazy_percpu_counter.h:56:29: error: no member named 'remote' in 'struct percpu_counter'
      56 |                 atomic_long_set(&lpc[i].c.remote, LAZY_INIT_BIAS);
         |                                  ~~~~~~~~ ^
>> include/linux/lazy_percpu_counter.h:57:32: error: no member named 'lock' in 'struct percpu_counter'
      57 |                 raw_spin_lock_init(&lpc[i].c.lock);
         |                                     ~~~~~~~~ ^
   include/linux/spinlock.h:113:9: note: expanded from macro 'raw_spin_lock_init'
     113 |         do { *(lock) = __RAW_SPIN_LOCK_UNLOCKED(lock); } while (0)
         |                ^~~~
   In file included from arch/x86/kernel/asm-offsets.c:9:
   In file included from include/linux/crypto.h:18:
   In file included from include/linux/slab.h:16:
   In file included from include/linux/gfp.h:7:
   In file included from include/linux/mmzone.h:22:
   In file included from include/linux/mm_types.h:21:
   include/linux/lazy_percpu_counter.h:67:38: error: no member named 'remote' in 'struct percpu_counter'
      67 |                 counter = atomic_long_read(&lpc->c.remote);
         |                                             ~~~~~~ ^
   include/linux/lazy_percpu_counter.h:72:47: error: no member named 'remote' in 'struct percpu_counter'
      72 |         } while (atomic_long_cmpxchg_relaxed(&lpc->c.remote, counter, (counter+x)) != counter);
         |                                               ~~~~~~ ^
   include/linux/lazy_percpu_counter.h:94:46: error: no member named 'remote' in 'struct percpu_counter'
      94 |         return remove_bias(atomic_long_read(&lpc->c.remote));
         |                                              ~~~~~~ ^
   include/linux/lazy_percpu_counter.h:101:46: error: no member named 'remote' in 'struct percpu_counter'
     101 |         return remove_bias(atomic_long_read(&lpc->c.remote)) + lpc->c.count;
         |                                              ~~~~~~ ^
   include/linux/lazy_percpu_counter.h:115:46: error: no member named 'remote' in 'struct percpu_counter'
     115 |         return remove_bias(atomic_long_read(&lpc->c.remote)) + lpc->c.count;
         |                                              ~~~~~~ ^
   In file included from arch/x86/kernel/asm-offsets.c:14:
   In file included from include/linux/suspend.h:5:
   In file included from include/linux/swap.h:9:
   In file included from include/linux/memcontrol.h:13:
   In file included from include/linux/cgroup.h:17:
   In file included from include/linux/fs.h:34:
   In file included from include/linux/percpu-rwsem.h:7:
   In file included from include/linux/rcuwait.h:6:
   In file included from include/linux/sched/signal.h:6:
   include/linux/signal.h:98:11: warning: array index 3 is past the end of the array (that has type 'unsigned long[1]') [-Warray-bounds]
      98 |                 return (set->sig[3] | set->sig[2] |
         |                         ^        ~
   arch/x86/include/asm/signal.h:24:2: note: array 'sig' declared here
      24 |         unsigned long sig[_NSIG_WORDS];
         |         ^
   In file included from arch/x86/kernel/asm-offsets.c:14:
   In file included from include/linux/suspend.h:5:
   In file included from include/linux/swap.h:9:
   In file included from include/linux/memcontrol.h:13:
   In file included from include/linux/cgroup.h:17:
   In file included from include/linux/fs.h:34:
   In file included from include/linux/percpu-rwsem.h:7:
   In file included from include/linux/rcuwait.h:6:
   In file included from include/linux/sched/signal.h:6:
   include/linux/signal.h:98:25: warning: array index 2 is past the end of the array (that has type 'unsigned long[1]') [-Warray-bounds]
      98 |                 return (set->sig[3] | set->sig[2] |
         |                                       ^        ~
   arch/x86/include/asm/signal.h:24:2: note: array 'sig' declared here
      24 |         unsigned long sig[_NSIG_WORDS];
         |         ^
   In file included from arch/x86/kernel/asm-offsets.c:14:
   In file included from include/linux/suspend.h:5:
   In file included from include/linux/swap.h:9:
   In file included from include/linux/memcontrol.h:13:
   In file included from include/linux/cgroup.h:17:
   In file included from include/linux/fs.h:34:
   In file included from include/linux/percpu-rwsem.h:7:
   In file included from include/linux/rcuwait.h:6:
   In file included from include/linux/sched/signal.h:6:
   include/linux/signal.h:99:4: warning: array index 1 is past the end of the array (that has type 'unsigned long[1]') [-Warray-bounds]
      99 |                         set->sig[1] | set->sig[0]) == 0;
         |                         ^        ~
   arch/x86/include/asm/signal.h:24:2: note: array 'sig' declared here
      24 |         unsigned long sig[_NSIG_WORDS];
         |         ^
   In file included from arch/x86/kernel/asm-offsets.c:14:
   In file included from include/linux/suspend.h:5:
   In file included from include/linux/swap.h:9:
   In file included from include/linux/memcontrol.h:13:
   In file included from include/linux/cgroup.h:17:
   In file included from include/linux/fs.h:34:
   In file included from include/linux/percpu-rwsem.h:7:
   In file included from include/linux/rcuwait.h:6:
   In file included from include/linux/sched/signal.h:6:
   include/linux/signal.h:101:11: warning: array index 1 is past the end of the array (that has type 'unsigned long[1]') [-Warray-bounds]
     101 |                 return (set->sig[1] | set->sig[0]) == 0;
         |                         ^        ~
   arch/x86/include/asm/signal.h:24:2: note: array 'sig' declared here
      24 |         unsigned long sig[_NSIG_WORDS];
         |         ^
   In file included from arch/x86/kernel/asm-offsets.c:14:
   In file included from include/linux/suspend.h:5:
   In file included from include/linux/swap.h:9:
   In file included from include/linux/memcontrol.h:13:
   In file included from include/linux/cgroup.h:17:
   In file included from include/linux/fs.h:34:
   In file included from include/linux/percpu-rwsem.h:7:
   In file included from include/linux/rcuwait.h:6:
   In file included from include/linux/sched/signal.h:6:
   include/linux/signal.h:114:11: warning: array index 3 is past the end of the array (that has type 'const unsigned long[1]') [-Warray-bounds]
     114 |                 return  (set1->sig[3] == set2->sig[3]) &&
         |                          ^         ~
   arch/x86/include/asm/signal.h:24:2: note: array 'sig' declared here
      24 |         unsigned long sig[_NSIG_WORDS];


vim +48 include/linux/lazy_percpu_counter.h

64259dc8f53734d Gabriel Krisman Bertazi 2025-11-27  45  
64259dc8f53734d Gabriel Krisman Bertazi 2025-11-27  46  static inline bool lazy_percpu_counter_initialized(struct lazy_percpu_counter *lpc)
64259dc8f53734d Gabriel Krisman Bertazi 2025-11-27  47  {
64259dc8f53734d Gabriel Krisman Bertazi 2025-11-27 @48  	return !(atomic_long_read(&lpc->c.remote) & LAZY_INIT_BIAS);
64259dc8f53734d Gabriel Krisman Bertazi 2025-11-27  49  }
64259dc8f53734d Gabriel Krisman Bertazi 2025-11-27  50  
64259dc8f53734d Gabriel Krisman Bertazi 2025-11-27  51  static inline void lazy_percpu_counter_init_many(struct lazy_percpu_counter *lpc, int amount,
64259dc8f53734d Gabriel Krisman Bertazi 2025-11-27  52  					       int nr_counters)
64259dc8f53734d Gabriel Krisman Bertazi 2025-11-27  53  {
64259dc8f53734d Gabriel Krisman Bertazi 2025-11-27  54  	for (int i = 0; i < nr_counters; i++) {
64259dc8f53734d Gabriel Krisman Bertazi 2025-11-27  55  		lpc[i].c.count = amount;
64259dc8f53734d Gabriel Krisman Bertazi 2025-11-27  56  		atomic_long_set(&lpc[i].c.remote, LAZY_INIT_BIAS);
64259dc8f53734d Gabriel Krisman Bertazi 2025-11-27 @57  		raw_spin_lock_init(&lpc[i].c.lock);
64259dc8f53734d Gabriel Krisman Bertazi 2025-11-27  58  	}
64259dc8f53734d Gabriel Krisman Bertazi 2025-11-27  59  }
64259dc8f53734d Gabriel Krisman Bertazi 2025-11-27  60  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

           reply	other threads:[~2025-11-28  3:56 UTC|newest]

Thread overview: expand[flat|nested]  mbox.gz  Atom feed
 [parent not found: <20251127233635.4170047-4-krisman@suse.de>]

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=202511281118.Q9mK711R-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=krisman@suse.de \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox