* [ast-bpf:trylock 7/7] mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
@ 2025-04-11 9:27 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2025-04-11 9:27 UTC (permalink / raw)
To: Alexei Starovoitov; +Cc: oe-kbuild-all
tree: https://git.kernel.org/pub/scm/linux/kernel/git/ast/bpf.git trylock
head: 28e3f03dae020bb273ab4d5dd660849e08e89bb9
commit: 28e3f03dae020bb273ab4d5dd660849e08e89bb9 [7/7] slab: Introduce try_kmalloc() and kfree_nolock().
config: nios2-randconfig-002-20250411 (https://download.01.org/0day-ci/archive/20250411/202504111706.PioXoxAe-lkp@intel.com/config)
compiler: nios2-linux-gcc (GCC) 7.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250411/202504111706.PioXoxAe-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/202504111706.PioXoxAe-lkp@intel.com/
All errors (new ones prefixed by >>):
In file included from <command-line>:0:0:
mm/slub.c: In function 'try_kmalloc_noprof':
>> mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^
include/linux/compiler_types.h:537:9: note: in definition of macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
include/linux/compiler_types.h:557:2: note: in expansion of macro '_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~
include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
compiletime_assert_rwonce_type(x); \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/local_lock_internal.h:169:33: note: in expansion of macro 'READ_ONCE'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~
include/linux/percpu-defs.h:263:2: note: in expansion of macro '__verify_pcpu_ptr'
__verify_pcpu_ptr(ptr); \
^~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:267:26: note: in expansion of macro 'per_cpu_ptr'
#define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
^~~~~~~~~~~
include/linux/percpu-defs.h:268:27: note: in expansion of macro 'raw_cpu_ptr'
#define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:43: note: in expansion of macro 'this_cpu_ptr'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~~~~
include/linux/local_lock.h:69:32: note: in expansion of macro '__local_lock_held'
#define local_lock_held(lock) __local_lock_held(lock)
^~~~~~~~~~~~~~~~~
mm/slub.c:4430:20: note: in expansion of macro 'local_lock_held'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^~~~~~~~~~~~~~~
>> mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^
include/linux/compiler_types.h:537:9: note: in definition of macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
include/linux/compiler_types.h:557:2: note: in expansion of macro '_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~
include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
compiletime_assert_rwonce_type(x); \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/local_lock_internal.h:169:33: note: in expansion of macro 'READ_ONCE'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~
include/linux/percpu-defs.h:225:3: note: in expansion of macro 'TYPEOF_UNQUAL'
(TYPEOF_UNQUAL(*(__p)) __force __kernel *)((__force unsigned long)(__p))
^~~~~~~~~~~~~
include/linux/percpu-defs.h:264:2: note: in expansion of macro 'PERCPU_PTR'
PERCPU_PTR(ptr); \
^~~~~~~~~~
include/linux/percpu-defs.h:267:26: note: in expansion of macro 'per_cpu_ptr'
#define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
^~~~~~~~~~~
include/linux/percpu-defs.h:268:27: note: in expansion of macro 'raw_cpu_ptr'
#define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:43: note: in expansion of macro 'this_cpu_ptr'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~~~~
include/linux/local_lock.h:69:32: note: in expansion of macro '__local_lock_held'
#define local_lock_held(lock) __local_lock_held(lock)
^~~~~~~~~~~~~~~~~
mm/slub.c:4430:20: note: in expansion of macro 'local_lock_held'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^~~~~~~~~~~~~~~
>> mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^
include/linux/compiler_types.h:537:9: note: in definition of macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
include/linux/compiler_types.h:557:2: note: in expansion of macro '_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~
include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
compiletime_assert_rwonce_type(x); \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/local_lock_internal.h:169:33: note: in expansion of macro 'READ_ONCE'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~
include/linux/percpu-defs.h:264:2: note: in expansion of macro 'PERCPU_PTR'
PERCPU_PTR(ptr); \
^~~~~~~~~~
include/linux/percpu-defs.h:267:26: note: in expansion of macro 'per_cpu_ptr'
#define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
^~~~~~~~~~~
include/linux/percpu-defs.h:268:27: note: in expansion of macro 'raw_cpu_ptr'
#define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:43: note: in expansion of macro 'this_cpu_ptr'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~~~~
include/linux/local_lock.h:69:32: note: in expansion of macro '__local_lock_held'
#define local_lock_held(lock) __local_lock_held(lock)
^~~~~~~~~~~~~~~~~
mm/slub.c:4430:20: note: in expansion of macro 'local_lock_held'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^~~~~~~~~~~~~~~
>> mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^
include/linux/compiler_types.h:537:9: note: in definition of macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
include/linux/compiler_types.h:557:2: note: in expansion of macro '_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~
include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
compiletime_assert_rwonce_type(x); \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/local_lock_internal.h:169:33: note: in expansion of macro 'READ_ONCE'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~
include/linux/percpu-defs.h:263:2: note: in expansion of macro '__verify_pcpu_ptr'
__verify_pcpu_ptr(ptr); \
^~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:267:26: note: in expansion of macro 'per_cpu_ptr'
#define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
^~~~~~~~~~~
include/linux/percpu-defs.h:268:27: note: in expansion of macro 'raw_cpu_ptr'
#define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:43: note: in expansion of macro 'this_cpu_ptr'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~~~~
include/linux/local_lock.h:69:32: note: in expansion of macro '__local_lock_held'
#define local_lock_held(lock) __local_lock_held(lock)
^~~~~~~~~~~~~~~~~
mm/slub.c:4430:20: note: in expansion of macro 'local_lock_held'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^~~~~~~~~~~~~~~
>> mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^
include/linux/compiler_types.h:537:9: note: in definition of macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
include/linux/compiler_types.h:557:2: note: in expansion of macro '_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~
include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
compiletime_assert_rwonce_type(x); \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/local_lock_internal.h:169:33: note: in expansion of macro 'READ_ONCE'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~
include/linux/percpu-defs.h:225:3: note: in expansion of macro 'TYPEOF_UNQUAL'
(TYPEOF_UNQUAL(*(__p)) __force __kernel *)((__force unsigned long)(__p))
^~~~~~~~~~~~~
include/linux/percpu-defs.h:264:2: note: in expansion of macro 'PERCPU_PTR'
PERCPU_PTR(ptr); \
^~~~~~~~~~
include/linux/percpu-defs.h:267:26: note: in expansion of macro 'per_cpu_ptr'
#define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
^~~~~~~~~~~
include/linux/percpu-defs.h:268:27: note: in expansion of macro 'raw_cpu_ptr'
#define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:43: note: in expansion of macro 'this_cpu_ptr'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~~~~
include/linux/local_lock.h:69:32: note: in expansion of macro '__local_lock_held'
#define local_lock_held(lock) __local_lock_held(lock)
^~~~~~~~~~~~~~~~~
mm/slub.c:4430:20: note: in expansion of macro 'local_lock_held'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^~~~~~~~~~~~~~~
>> mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^
include/linux/compiler_types.h:537:9: note: in definition of macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
include/linux/compiler_types.h:557:2: note: in expansion of macro '_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~
include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
compiletime_assert_rwonce_type(x); \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/local_lock_internal.h:169:33: note: in expansion of macro 'READ_ONCE'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~
include/linux/percpu-defs.h:264:2: note: in expansion of macro 'PERCPU_PTR'
PERCPU_PTR(ptr); \
^~~~~~~~~~
include/linux/percpu-defs.h:267:26: note: in expansion of macro 'per_cpu_ptr'
#define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
^~~~~~~~~~~
include/linux/percpu-defs.h:268:27: note: in expansion of macro 'raw_cpu_ptr'
#define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:43: note: in expansion of macro 'this_cpu_ptr'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~~~~
include/linux/local_lock.h:69:32: note: in expansion of macro '__local_lock_held'
#define local_lock_held(lock) __local_lock_held(lock)
^~~~~~~~~~~~~~~~~
mm/slub.c:4430:20: note: in expansion of macro 'local_lock_held'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^~~~~~~~~~~~~~~
>> mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^
include/linux/compiler_types.h:537:9: note: in definition of macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
include/linux/compiler_types.h:557:2: note: in expansion of macro '_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~
include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
compiletime_assert_rwonce_type(x); \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/local_lock_internal.h:169:33: note: in expansion of macro 'READ_ONCE'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~
include/linux/percpu-defs.h:263:2: note: in expansion of macro '__verify_pcpu_ptr'
__verify_pcpu_ptr(ptr); \
^~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:267:26: note: in expansion of macro 'per_cpu_ptr'
#define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
^~~~~~~~~~~
include/linux/percpu-defs.h:268:27: note: in expansion of macro 'raw_cpu_ptr'
#define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:43: note: in expansion of macro 'this_cpu_ptr'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~~~~
include/linux/local_lock.h:69:32: note: in expansion of macro '__local_lock_held'
#define local_lock_held(lock) __local_lock_held(lock)
^~~~~~~~~~~~~~~~~
mm/slub.c:4430:20: note: in expansion of macro 'local_lock_held'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^~~~~~~~~~~~~~~
>> mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^
include/linux/compiler_types.h:537:9: note: in definition of macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
include/linux/compiler_types.h:557:2: note: in expansion of macro '_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~
include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
compiletime_assert_rwonce_type(x); \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/local_lock_internal.h:169:33: note: in expansion of macro 'READ_ONCE'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~
include/linux/percpu-defs.h:225:3: note: in expansion of macro 'TYPEOF_UNQUAL'
(TYPEOF_UNQUAL(*(__p)) __force __kernel *)((__force unsigned long)(__p))
^~~~~~~~~~~~~
include/linux/percpu-defs.h:264:2: note: in expansion of macro 'PERCPU_PTR'
PERCPU_PTR(ptr); \
^~~~~~~~~~
include/linux/percpu-defs.h:267:26: note: in expansion of macro 'per_cpu_ptr'
#define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
^~~~~~~~~~~
include/linux/percpu-defs.h:268:27: note: in expansion of macro 'raw_cpu_ptr'
#define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:43: note: in expansion of macro 'this_cpu_ptr'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~~~~
include/linux/local_lock.h:69:32: note: in expansion of macro '__local_lock_held'
#define local_lock_held(lock) __local_lock_held(lock)
^~~~~~~~~~~~~~~~~
mm/slub.c:4430:20: note: in expansion of macro 'local_lock_held'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^~~~~~~~~~~~~~~
>> mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^
include/linux/compiler_types.h:537:9: note: in definition of macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
include/linux/compiler_types.h:557:2: note: in expansion of macro '_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~
include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
compiletime_assert_rwonce_type(x); \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/local_lock_internal.h:169:33: note: in expansion of macro 'READ_ONCE'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~
include/linux/percpu-defs.h:264:2: note: in expansion of macro 'PERCPU_PTR'
PERCPU_PTR(ptr); \
^~~~~~~~~~
include/linux/percpu-defs.h:267:26: note: in expansion of macro 'per_cpu_ptr'
#define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
^~~~~~~~~~~
include/linux/percpu-defs.h:268:27: note: in expansion of macro 'raw_cpu_ptr'
#define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:43: note: in expansion of macro 'this_cpu_ptr'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~~~~
include/linux/local_lock.h:69:32: note: in expansion of macro '__local_lock_held'
#define local_lock_held(lock) __local_lock_held(lock)
^~~~~~~~~~~~~~~~~
mm/slub.c:4430:20: note: in expansion of macro 'local_lock_held'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^~~~~~~~~~~~~~~
>> mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^
include/linux/compiler_types.h:537:9: note: in definition of macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
include/linux/compiler_types.h:557:2: note: in expansion of macro '_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~
include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
compiletime_assert_rwonce_type(x); \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/local_lock_internal.h:169:33: note: in expansion of macro 'READ_ONCE'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~
include/linux/percpu-defs.h:263:2: note: in expansion of macro '__verify_pcpu_ptr'
__verify_pcpu_ptr(ptr); \
^~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:267:26: note: in expansion of macro 'per_cpu_ptr'
#define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
^~~~~~~~~~~
include/linux/percpu-defs.h:268:27: note: in expansion of macro 'raw_cpu_ptr'
#define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:43: note: in expansion of macro 'this_cpu_ptr'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~~~~
include/linux/local_lock.h:69:32: note: in expansion of macro '__local_lock_held'
#define local_lock_held(lock) __local_lock_held(lock)
^~~~~~~~~~~~~~~~~
mm/slub.c:4430:20: note: in expansion of macro 'local_lock_held'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^~~~~~~~~~~~~~~
>> mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^
include/linux/compiler_types.h:537:9: note: in definition of macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
include/linux/compiler_types.h:557:2: note: in expansion of macro '_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~
include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
compiletime_assert_rwonce_type(x); \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/local_lock_internal.h:169:33: note: in expansion of macro 'READ_ONCE'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~
include/linux/percpu-defs.h:225:3: note: in expansion of macro 'TYPEOF_UNQUAL'
(TYPEOF_UNQUAL(*(__p)) __force __kernel *)((__force unsigned long)(__p))
^~~~~~~~~~~~~
include/linux/percpu-defs.h:264:2: note: in expansion of macro 'PERCPU_PTR'
PERCPU_PTR(ptr); \
^~~~~~~~~~
include/linux/percpu-defs.h:267:26: note: in expansion of macro 'per_cpu_ptr'
#define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
^~~~~~~~~~~
include/linux/percpu-defs.h:268:27: note: in expansion of macro 'raw_cpu_ptr'
#define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:43: note: in expansion of macro 'this_cpu_ptr'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~~~~
include/linux/local_lock.h:69:32: note: in expansion of macro '__local_lock_held'
#define local_lock_held(lock) __local_lock_held(lock)
^~~~~~~~~~~~~~~~~
mm/slub.c:4430:20: note: in expansion of macro 'local_lock_held'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^~~~~~~~~~~~~~~
>> mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^
include/linux/compiler_types.h:537:9: note: in definition of macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
include/linux/compiler_types.h:557:2: note: in expansion of macro '_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:21: note: in expansion of macro '__native_word'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~
include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
compiletime_assert_rwonce_type(x); \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/local_lock_internal.h:169:33: note: in expansion of macro 'READ_ONCE'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~
include/linux/percpu-defs.h:264:2: note: in expansion of macro 'PERCPU_PTR'
PERCPU_PTR(ptr); \
^~~~~~~~~~
include/linux/percpu-defs.h:267:26: note: in expansion of macro 'per_cpu_ptr'
#define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
^~~~~~~~~~~
include/linux/percpu-defs.h:268:27: note: in expansion of macro 'raw_cpu_ptr'
#define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:43: note: in expansion of macro 'this_cpu_ptr'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~~~~
include/linux/local_lock.h:69:32: note: in expansion of macro '__local_lock_held'
#define local_lock_held(lock) __local_lock_held(lock)
^~~~~~~~~~~~~~~~~
mm/slub.c:4430:20: note: in expansion of macro 'local_lock_held'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^~~~~~~~~~~~~~~
>> mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^
include/linux/compiler_types.h:537:9: note: in definition of macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
include/linux/compiler_types.h:557:2: note: in expansion of macro '_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
compiletime_assert_rwonce_type(x); \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/local_lock_internal.h:169:33: note: in expansion of macro 'READ_ONCE'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~
include/linux/percpu-defs.h:263:2: note: in expansion of macro '__verify_pcpu_ptr'
__verify_pcpu_ptr(ptr); \
^~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:267:26: note: in expansion of macro 'per_cpu_ptr'
#define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
^~~~~~~~~~~
include/linux/percpu-defs.h:268:27: note: in expansion of macro 'raw_cpu_ptr'
#define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:43: note: in expansion of macro 'this_cpu_ptr'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~~~~
include/linux/local_lock.h:69:32: note: in expansion of macro '__local_lock_held'
#define local_lock_held(lock) __local_lock_held(lock)
^~~~~~~~~~~~~~~~~
mm/slub.c:4430:20: note: in expansion of macro 'local_lock_held'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^~~~~~~~~~~~~~~
>> mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^
include/linux/compiler_types.h:537:9: note: in definition of macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
include/linux/compiler_types.h:557:2: note: in expansion of macro '_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
compiletime_assert_rwonce_type(x); \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/local_lock_internal.h:169:33: note: in expansion of macro 'READ_ONCE'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~
include/linux/percpu-defs.h:225:3: note: in expansion of macro 'TYPEOF_UNQUAL'
(TYPEOF_UNQUAL(*(__p)) __force __kernel *)((__force unsigned long)(__p))
^~~~~~~~~~~~~
include/linux/percpu-defs.h:264:2: note: in expansion of macro 'PERCPU_PTR'
PERCPU_PTR(ptr); \
^~~~~~~~~~
include/linux/percpu-defs.h:267:26: note: in expansion of macro 'per_cpu_ptr'
#define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
^~~~~~~~~~~
include/linux/percpu-defs.h:268:27: note: in expansion of macro 'raw_cpu_ptr'
#define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:43: note: in expansion of macro 'this_cpu_ptr'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~~~~
include/linux/local_lock.h:69:32: note: in expansion of macro '__local_lock_held'
#define local_lock_held(lock) __local_lock_held(lock)
^~~~~~~~~~~~~~~~~
mm/slub.c:4430:20: note: in expansion of macro 'local_lock_held'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^~~~~~~~~~~~~~~
>> mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^
include/linux/compiler_types.h:537:9: note: in definition of macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
include/linux/compiler_types.h:557:2: note: in expansion of macro '_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:36:2: note: in expansion of macro 'compiletime_assert'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^~~~~~~~~~~~~~~~~~
include/asm-generic/rwonce.h:49:2: note: in expansion of macro 'compiletime_assert_rwonce_type'
compiletime_assert_rwonce_type(x); \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/local_lock_internal.h:169:33: note: in expansion of macro 'READ_ONCE'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~
include/linux/percpu-defs.h:264:2: note: in expansion of macro 'PERCPU_PTR'
PERCPU_PTR(ptr); \
^~~~~~~~~~
include/linux/percpu-defs.h:267:26: note: in expansion of macro 'per_cpu_ptr'
#define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
^~~~~~~~~~~
include/linux/percpu-defs.h:268:27: note: in expansion of macro 'raw_cpu_ptr'
#define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:43: note: in expansion of macro 'this_cpu_ptr'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~~~~
include/linux/local_lock.h:69:32: note: in expansion of macro '__local_lock_held'
#define local_lock_held(lock) __local_lock_held(lock)
^~~~~~~~~~~~~~~~~
mm/slub.c:4430:20: note: in expansion of macro 'local_lock_held'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^~~~~~~~~~~~~~~
>> mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^
include/linux/compiler_types.h:513:13: note: in definition of macro '__unqual_scalar_typeof'
_Generic((x), \
^
include/asm-generic/rwonce.h:50:2: note: in expansion of macro '__READ_ONCE'
__READ_ONCE(x); \
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:33: note: in expansion of macro 'READ_ONCE'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~
include/linux/percpu-defs.h:263:2: note: in expansion of macro '__verify_pcpu_ptr'
__verify_pcpu_ptr(ptr); \
^~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:267:26: note: in expansion of macro 'per_cpu_ptr'
#define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
^~~~~~~~~~~
include/linux/percpu-defs.h:268:27: note: in expansion of macro 'raw_cpu_ptr'
#define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:43: note: in expansion of macro 'this_cpu_ptr'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~~~~
include/linux/local_lock.h:69:32: note: in expansion of macro '__local_lock_held'
#define local_lock_held(lock) __local_lock_held(lock)
^~~~~~~~~~~~~~~~~
mm/slub.c:4430:20: note: in expansion of macro 'local_lock_held'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^~~~~~~~~~~~~~~
>> mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^
include/linux/compiler_types.h:513:13: note: in definition of macro '__unqual_scalar_typeof'
_Generic((x), \
^
include/asm-generic/rwonce.h:50:2: note: in expansion of macro '__READ_ONCE'
__READ_ONCE(x); \
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:33: note: in expansion of macro 'READ_ONCE'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~
include/linux/percpu-defs.h:225:3: note: in expansion of macro 'TYPEOF_UNQUAL'
(TYPEOF_UNQUAL(*(__p)) __force __kernel *)((__force unsigned long)(__p))
^~~~~~~~~~~~~
include/linux/percpu-defs.h:264:2: note: in expansion of macro 'PERCPU_PTR'
PERCPU_PTR(ptr); \
^~~~~~~~~~
include/linux/percpu-defs.h:267:26: note: in expansion of macro 'per_cpu_ptr'
#define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
^~~~~~~~~~~
include/linux/percpu-defs.h:268:27: note: in expansion of macro 'raw_cpu_ptr'
#define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:43: note: in expansion of macro 'this_cpu_ptr'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~~~~
include/linux/local_lock.h:69:32: note: in expansion of macro '__local_lock_held'
#define local_lock_held(lock) __local_lock_held(lock)
^~~~~~~~~~~~~~~~~
mm/slub.c:4430:20: note: in expansion of macro 'local_lock_held'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^~~~~~~~~~~~~~~
>> mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^
include/linux/compiler_types.h:513:13: note: in definition of macro '__unqual_scalar_typeof'
_Generic((x), \
^
include/asm-generic/rwonce.h:50:2: note: in expansion of macro '__READ_ONCE'
__READ_ONCE(x); \
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:33: note: in expansion of macro 'READ_ONCE'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~
include/linux/percpu-defs.h:264:2: note: in expansion of macro 'PERCPU_PTR'
PERCPU_PTR(ptr); \
^~~~~~~~~~
include/linux/percpu-defs.h:267:26: note: in expansion of macro 'per_cpu_ptr'
#define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
^~~~~~~~~~~
include/linux/percpu-defs.h:268:27: note: in expansion of macro 'raw_cpu_ptr'
#define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:43: note: in expansion of macro 'this_cpu_ptr'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~~~~
include/linux/local_lock.h:69:32: note: in expansion of macro '__local_lock_held'
#define local_lock_held(lock) __local_lock_held(lock)
^~~~~~~~~~~~~~~~~
mm/slub.c:4430:20: note: in expansion of macro 'local_lock_held'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^~~~~~~~~~~~~~~
In file included from ./arch/nios2/include/generated/asm/rwonce.h:1:0,
from include/linux/compiler.h:390,
from include/asm-generic/bug.h:5,
from ./arch/nios2/include/generated/asm/bug.h:1,
from include/linux/bug.h:5,
from include/linux/mmdebug.h:5,
from include/linux/mm.h:6,
from mm/slub.c:13:
>> mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^
include/asm-generic/rwonce.h:44:72: note: in definition of macro '__READ_ONCE'
#define __READ_ONCE(x) (*(const volatile __unqual_scalar_typeof(x) *)&(x))
^
include/linux/local_lock_internal.h:169:33: note: in expansion of macro 'READ_ONCE'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~
include/linux/percpu-defs.h:263:2: note: in expansion of macro '__verify_pcpu_ptr'
__verify_pcpu_ptr(ptr); \
^~~~~~~~~~~~~~~~~
include/linux/percpu-defs.h:267:26: note: in expansion of macro 'per_cpu_ptr'
#define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
^~~~~~~~~~~
include/linux/percpu-defs.h:268:27: note: in expansion of macro 'raw_cpu_ptr'
#define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:43: note: in expansion of macro 'this_cpu_ptr'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~~~~
include/linux/local_lock.h:69:32: note: in expansion of macro '__local_lock_held'
#define local_lock_held(lock) __local_lock_held(lock)
^~~~~~~~~~~~~~~~~
mm/slub.c:4430:20: note: in expansion of macro 'local_lock_held'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^~~~~~~~~~~~~~~
>> mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^
include/asm-generic/rwonce.h:44:72: note: in definition of macro '__READ_ONCE'
#define __READ_ONCE(x) (*(const volatile __unqual_scalar_typeof(x) *)&(x))
^
include/linux/local_lock_internal.h:169:33: note: in expansion of macro 'READ_ONCE'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~
include/linux/percpu-defs.h:225:3: note: in expansion of macro 'TYPEOF_UNQUAL'
(TYPEOF_UNQUAL(*(__p)) __force __kernel *)((__force unsigned long)(__p))
^~~~~~~~~~~~~
include/linux/percpu-defs.h:264:2: note: in expansion of macro 'PERCPU_PTR'
PERCPU_PTR(ptr); \
^~~~~~~~~~
include/linux/percpu-defs.h:267:26: note: in expansion of macro 'per_cpu_ptr'
#define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
^~~~~~~~~~~
include/linux/percpu-defs.h:268:27: note: in expansion of macro 'raw_cpu_ptr'
#define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:43: note: in expansion of macro 'this_cpu_ptr'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~~~~
include/linux/local_lock.h:69:32: note: in expansion of macro '__local_lock_held'
#define local_lock_held(lock) __local_lock_held(lock)
^~~~~~~~~~~~~~~~~
mm/slub.c:4430:20: note: in expansion of macro 'local_lock_held'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^~~~~~~~~~~~~~~
mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^
include/asm-generic/rwonce.h:44:72: note: in definition of macro '__READ_ONCE'
#define __READ_ONCE(x) (*(const volatile __unqual_scalar_typeof(x) *)&(x))
^
include/linux/local_lock_internal.h:169:33: note: in expansion of macro 'READ_ONCE'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~
include/linux/percpu-defs.h:264:2: note: in expansion of macro 'PERCPU_PTR'
PERCPU_PTR(ptr); \
^~~~~~~~~~
include/linux/percpu-defs.h:267:26: note: in expansion of macro 'per_cpu_ptr'
#define raw_cpu_ptr(ptr) per_cpu_ptr(ptr, 0)
^~~~~~~~~~~
include/linux/percpu-defs.h:268:27: note: in expansion of macro 'raw_cpu_ptr'
#define this_cpu_ptr(ptr) raw_cpu_ptr(ptr)
^~~~~~~~~~~
include/linux/local_lock_internal.h:169:43: note: in expansion of macro 'this_cpu_ptr'
#define __local_lock_held(lock) READ_ONCE(this_cpu_ptr(lock)->acquired)
^~~~~~~~~~~~
include/linux/local_lock.h:69:32: note: in expansion of macro '__local_lock_held'
#define local_lock_held(lock) __local_lock_held(lock)
^~~~~~~~~~~~~~~~~
mm/slub.c:4430:20: note: in expansion of macro 'local_lock_held'
if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
^~~~~~~~~~~~~~~
vim +4430 mm/slub.c
4394
4395 void *try_kmalloc_noprof(size_t size, gfp_t gfp_flags, int node)
4396 {
4397 gfp_t alloc_gfp = __GFP_NOWARN | __GFP_NOMEMALLOC | gfp_flags;
4398 struct kmem_cache *s;
4399 bool can_retry = true;
4400 void *ret = ERR_PTR(-EBUSY);
4401
4402 VM_WARN_ON_ONCE(gfp_flags & ~(__GFP_ACCOUNT | __GFP_ZERO));
4403
4404 if (unlikely(size > KMALLOC_MAX_CACHE_SIZE))
4405 return NULL;
4406 if (unlikely(!size))
4407 return ZERO_SIZE_PTR;
4408
4409 retry:
4410 s = kmalloc_slab(size, NULL, alloc_gfp, _RET_IP_);
4411
4412 if (!USE_LOCKLESS_FAST_PATH() || !(s->flags & __CMPXCHG_DOUBLE))
4413 /*
4414 * try_kmalloc() is not supported in PREEMPT_RT and
4415 * on architectures that don't implement cmpxchg16b.
4416 */
4417 return NULL;
4418
4419 /*
4420 * Do not call slab_alloc_node(), since trylock mode isn't
4421 * compatible with slab_pre_alloc_hook/should_failslab and
4422 * kfence_alloc.
4423 *
4424 * In !PREEMPT_RT ___slab_alloc() manipulates (freelist,tid) pair
4425 * in irq saved region. It assumes that the same cpu will not
4426 * __update_cpu_freelist_fast() into the same (freelist,tid) pair.
4427 * Therefore in_nmi() check whether particular bucket is in
4428 * irq protected.
4429 */
> 4430 if (!in_nmi() || !local_lock_held(&s->cpu_slab->lock))
4431 ret = __slab_alloc_node(s, alloc_gfp, node, _RET_IP_, size);
4432
4433 if (PTR_ERR(ret) == -EBUSY) {
4434 if (can_retry) {
4435 /* pick the next kmalloc bucket */
4436 size = s->object_size + 1;
4437 /*
4438 * Another alternative is to
4439 * if (memcg) alloc_gfp &= ~__GFP_ACCOUNT;
4440 * else if (!memcg) alloc_gfp |= __GFP_ACCOUNT;
4441 * to retry from bucket of the same size.
4442 */
4443 can_retry = false;
4444 goto retry;
4445 }
4446 ret = NULL;
4447 }
4448
4449 maybe_wipe_obj_freeptr(s, ret);
4450 /*
4451 * Make sure memcg_stock.stock_lock doesn't change cpu
4452 * when memcg layers access it.
4453 */
4454 preempt_disable();
4455 slab_post_alloc_hook(s, NULL, alloc_gfp, 1, &ret,
4456 slab_want_init_on_alloc(alloc_gfp, s), size);
4457 preempt_enable();
4458
4459 ret = kasan_kmalloc(s, ret, size, alloc_gfp);
4460 return ret;
4461 }
4462 EXPORT_SYMBOL_GPL(try_kmalloc_noprof);
4463
--
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:[~2025-04-11 9:27 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-04-11 9:27 [ast-bpf:trylock 7/7] mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab' 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.