* [harry:slab-allow-runtime-parameter-tuning-rfc-v1r1-wip 6/6] mm/slub.c:3173:2: error: member reference type 'void' is not a pointer
@ 2026-05-13 11:48 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-05-13 11:48 UTC (permalink / raw)
To: Harry Yoo; +Cc: llvm, oe-kbuild-all
tree: https://git.kernel.org/pub/scm/linux/kernel/git/harry/linux.git slab-allow-runtime-parameter-tuning-rfc-v1r1-wip
head: 10c188407341817c6baf9dad9c788928f8387800
commit: 10c188407341817c6baf9dad9c788928f8387800 [6/6] mm/slab: allow changing sheaf_capacity at runtime
config: arm64-randconfig-004-20260513 (https://download.01.org/0day-ci/archive/20260513/202605131900.xMLYUDLG-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/20260513/202605131900.xMLYUDLG-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/202605131900.xMLYUDLG-lkp@intel.com/
All errors (new ones prefixed by >>):
mm/slub.c:3173:44: error: no member named 'cache' in 'struct slab_sheaf'
3173 | lockdep_assert_held(this_cpu_ptr(&(sheaf->cache)->cpu_sheaves->lock));
| ~~~~~ ^
include/linux/percpu-defs.h:252:20: note: expanded from macro 'this_cpu_ptr'
252 | __verify_pcpu_ptr(ptr); \
| ^~~
include/linux/percpu-defs.h:221:47: note: expanded from macro '__verify_pcpu_ptr'
221 | const void __percpu *__vpp_verify = (typeof((ptr) + 0))NULL; \
| ^~~
include/linux/lockdep.h:285:38: note: expanded from macro 'lockdep_assert_held'
285 | do { lockdep_assert(lockdep_is_held(l) != LOCK_STATE_NOT_HELD); __assume_ctx_lock(l); } while (0)
| ^
include/linux/lockdep.h:252:47: note: expanded from macro 'lockdep_is_held'
252 | #define lockdep_is_held(lock) lock_is_held(&(lock)->dep_map)
| ^~~~
include/linux/lockdep.h:279:32: note: expanded from macro 'lockdep_assert'
279 | do { WARN_ON(debug_locks && !(cond)); } while (0)
| ^~~~
include/asm-generic/bug.h:205:25: note: expanded from macro 'WARN_ON'
205 | int __ret_warn_on = !!(condition); \
| ^~~~~~~~~
mm/slub.c:3173:44: error: no member named 'cache' in 'struct slab_sheaf'
3173 | lockdep_assert_held(this_cpu_ptr(&(sheaf->cache)->cpu_sheaves->lock));
| ~~~~~ ^
include/linux/percpu-defs.h:253:19: note: expanded from macro 'this_cpu_ptr'
253 | SHIFT_PERCPU_PTR(ptr, my_cpu_offset); \
| ^~~
include/linux/percpu-defs.h:235:24: note: expanded from macro 'SHIFT_PERCPU_PTR'
235 | RELOC_HIDE(PERCPU_PTR(__p), (__offset))
| ^~~
include/linux/percpu-defs.h:226:19: note: expanded from macro 'PERCPU_PTR'
226 | (TYPEOF_UNQUAL(*(__p)) __force __kernel *)((__force unsigned long)(__p))
| ^~~
note: (skipping 3 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
include/linux/lockdep.h:252:47: note: expanded from macro 'lockdep_is_held'
252 | #define lockdep_is_held(lock) lock_is_held(&(lock)->dep_map)
| ^~~~
include/linux/lockdep.h:279:32: note: expanded from macro 'lockdep_assert'
279 | do { WARN_ON(debug_locks && !(cond)); } while (0)
| ^~~~
include/asm-generic/bug.h:205:25: note: expanded from macro 'WARN_ON'
205 | int __ret_warn_on = !!(condition); \
| ^~~~~~~~~
mm/slub.c:3173:44: error: no member named 'cache' in 'struct slab_sheaf'
3173 | lockdep_assert_held(this_cpu_ptr(&(sheaf->cache)->cpu_sheaves->lock));
| ~~~~~ ^
include/linux/percpu-defs.h:253:19: note: expanded from macro 'this_cpu_ptr'
253 | SHIFT_PERCPU_PTR(ptr, my_cpu_offset); \
| ^~~
include/linux/percpu-defs.h:235:24: note: expanded from macro 'SHIFT_PERCPU_PTR'
235 | RELOC_HIDE(PERCPU_PTR(__p), (__offset))
| ^~~
include/linux/percpu-defs.h:226:69: note: expanded from macro 'PERCPU_PTR'
226 | (TYPEOF_UNQUAL(*(__p)) __force __kernel *)((__force unsigned long)(__p))
| ^~~
note: (skipping 2 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
include/linux/lockdep.h:252:47: note: expanded from macro 'lockdep_is_held'
252 | #define lockdep_is_held(lock) lock_is_held(&(lock)->dep_map)
| ^~~~
include/linux/lockdep.h:279:32: note: expanded from macro 'lockdep_assert'
279 | do { WARN_ON(debug_locks && !(cond)); } while (0)
| ^~~~
include/asm-generic/bug.h:205:25: note: expanded from macro 'WARN_ON'
205 | int __ret_warn_on = !!(condition); \
| ^~~~~~~~~
>> mm/slub.c:3173:2: error: member reference type 'void' is not a pointer
3173 | lockdep_assert_held(this_cpu_ptr(&(sheaf->cache)->cpu_sheaves->lock));
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/lockdep.h:285:22: note: expanded from macro 'lockdep_assert_held'
285 | do { lockdep_assert(lockdep_is_held(l) != LOCK_STATE_NOT_HELD); __assume_ctx_lock(l); } while (0)
| ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/lockdep.h:252:54: note: expanded from macro 'lockdep_is_held'
252 | #define lockdep_is_held(lock) lock_is_held(&(lock)->dep_map)
| ^
include/linux/lockdep.h:279:32: note: expanded from macro 'lockdep_assert'
279 | do { WARN_ON(debug_locks && !(cond)); } while (0)
| ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
include/asm-generic/bug.h:205:25: note: expanded from macro 'WARN_ON'
205 | int __ret_warn_on = !!(condition); \
| ^~~~~~~~~
mm/slub.c:3173:44: error: no member named 'cache' in 'struct slab_sheaf'
3173 | lockdep_assert_held(this_cpu_ptr(&(sheaf->cache)->cpu_sheaves->lock));
| ~~~~~ ^
include/linux/percpu-defs.h:252:20: note: expanded from macro 'this_cpu_ptr'
252 | __verify_pcpu_ptr(ptr); \
| ^~~
include/linux/percpu-defs.h:221:47: note: expanded from macro '__verify_pcpu_ptr'
221 | const void __percpu *__vpp_verify = (typeof((ptr) + 0))NULL; \
| ^~~
include/linux/lockdep.h:285:84: note: expanded from macro 'lockdep_assert_held'
285 | do { lockdep_assert(lockdep_is_held(l) != LOCK_STATE_NOT_HELD); __assume_ctx_lock(l); } while (0)
| ^
include/linux/compiler-context-analysis.h:172:47: note: expanded from macro '__assume_ctx_lock'
172 | # define __assume_ctx_lock(var) do { (void)(var); } while (0)
| ^~~
mm/slub.c:3173:44: error: no member named 'cache' in 'struct slab_sheaf'
3173 | lockdep_assert_held(this_cpu_ptr(&(sheaf->cache)->cpu_sheaves->lock));
| ~~~~~ ^
include/linux/percpu-defs.h:253:19: note: expanded from macro 'this_cpu_ptr'
253 | SHIFT_PERCPU_PTR(ptr, my_cpu_offset); \
| ^~~
include/linux/percpu-defs.h:235:24: note: expanded from macro 'SHIFT_PERCPU_PTR'
235 | RELOC_HIDE(PERCPU_PTR(__p), (__offset))
| ^~~
include/linux/percpu-defs.h:226:19: note: expanded from macro 'PERCPU_PTR'
226 | (TYPEOF_UNQUAL(*(__p)) __force __kernel *)((__force unsigned long)(__p))
| ^~~
note: (skipping 1 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
include/linux/compiler.h:152:40: note: expanded from macro 'RELOC_HIDE'
152 | # define RELOC_HIDE(ptr, off) ((typeof(ptr))((unsigned long)(ptr) + (off)))
| ^~~
include/linux/lockdep.h:285:84: note: expanded from macro 'lockdep_assert_held'
285 | do { lockdep_assert(lockdep_is_held(l) != LOCK_STATE_NOT_HELD); __assume_ctx_lock(l); } while (0)
| ^
include/linux/compiler-context-analysis.h:172:47: note: expanded from macro '__assume_ctx_lock'
172 | # define __assume_ctx_lock(var) do { (void)(var); } while (0)
| ^~~
mm/slub.c:3173:44: error: no member named 'cache' in 'struct slab_sheaf'
3173 | lockdep_assert_held(this_cpu_ptr(&(sheaf->cache)->cpu_sheaves->lock));
| ~~~~~ ^
include/linux/percpu-defs.h:253:19: note: expanded from macro 'this_cpu_ptr'
253 | SHIFT_PERCPU_PTR(ptr, my_cpu_offset); \
| ^~~
include/linux/percpu-defs.h:235:24: note: expanded from macro 'SHIFT_PERCPU_PTR'
235 | RELOC_HIDE(PERCPU_PTR(__p), (__offset))
| ^~~
include/linux/percpu-defs.h:226:69: note: expanded from macro 'PERCPU_PTR'
226 | (TYPEOF_UNQUAL(*(__p)) __force __kernel *)((__force unsigned long)(__p))
| ^~~
include/linux/compiler.h:152:40: note: expanded from macro 'RELOC_HIDE'
152 | # define RELOC_HIDE(ptr, off) ((typeof(ptr))((unsigned long)(ptr) + (off)))
| ^~~
include/linux/lockdep.h:285:84: note: expanded from macro 'lockdep_assert_held'
285 | do { lockdep_assert(lockdep_is_held(l) != LOCK_STATE_NOT_HELD); __assume_ctx_lock(l); } while (0)
| ^
include/linux/compiler-context-analysis.h:172:47: note: expanded from macro '__assume_ctx_lock'
172 | # define __assume_ctx_lock(var) do { (void)(var); } while (0)
| ^~~
mm/slub.c:3187:44: error: no member named 'cache' in 'struct slab_sheaf'
3187 | lockdep_assert_held(this_cpu_ptr(&(sheaf->cache)->cpu_sheaves->lock));
| ~~~~~ ^
include/linux/percpu-defs.h:252:20: note: expanded from macro 'this_cpu_ptr'
252 | __verify_pcpu_ptr(ptr); \
| ^~~
include/linux/percpu-defs.h:221:47: note: expanded from macro '__verify_pcpu_ptr'
221 | const void __percpu *__vpp_verify = (typeof((ptr) + 0))NULL; \
| ^~~
include/linux/lockdep.h:285:38: note: expanded from macro 'lockdep_assert_held'
285 | do { lockdep_assert(lockdep_is_held(l) != LOCK_STATE_NOT_HELD); __assume_ctx_lock(l); } while (0)
| ^
include/linux/lockdep.h:252:47: note: expanded from macro 'lockdep_is_held'
252 | #define lockdep_is_held(lock) lock_is_held(&(lock)->dep_map)
| ^~~~
include/linux/lockdep.h:279:32: note: expanded from macro 'lockdep_assert'
279 | do { WARN_ON(debug_locks && !(cond)); } while (0)
| ^~~~
include/asm-generic/bug.h:205:25: note: expanded from macro 'WARN_ON'
205 | int __ret_warn_on = !!(condition); \
| ^~~~~~~~~
mm/slub.c:3187:44: error: no member named 'cache' in 'struct slab_sheaf'
3187 | lockdep_assert_held(this_cpu_ptr(&(sheaf->cache)->cpu_sheaves->lock));
| ~~~~~ ^
include/linux/percpu-defs.h:253:19: note: expanded from macro 'this_cpu_ptr'
253 | SHIFT_PERCPU_PTR(ptr, my_cpu_offset); \
| ^~~
include/linux/percpu-defs.h:235:24: note: expanded from macro 'SHIFT_PERCPU_PTR'
vim +/void +3173 mm/slub.c
3162
3163 /*
3164 * The following two functions are used mainly in cases where we have to undo an
3165 * intended action due to a race or cpu migration. Thus they do not check the
3166 * empty or full sheaf limits for simplicity.
3167 */
3168
3169 static void barn_put_empty_sheaf(struct node_barn *barn, struct slab_sheaf *sheaf)
3170 {
3171 unsigned long flags;
3172
> 3173 lockdep_assert_held(this_cpu_ptr(&(sheaf->cache)->cpu_sheaves->lock));
3174
3175 spin_lock_irqsave(&barn->lock, flags);
3176
3177 list_add(&sheaf->barn_list, &barn->sheaves_empty);
3178 barn->nr_empty++;
3179
3180 spin_unlock_irqrestore(&barn->lock, flags);
3181 }
3182
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-05-13 11:49 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-13 11:48 [harry:slab-allow-runtime-parameter-tuning-rfc-v1r1-wip 6/6] mm/slub.c:3173:2: error: member reference type 'void' is not a pointer kernel test robot
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.