From: kernel test robot <lkp@intel.com>
To: Alexei Starovoitov <ast@kernel.org>
Cc: oe-kbuild-all@lists.linux.dev
Subject: [ast-bpf:trylock 7/7] mm/slub.c:4430:38: error: 'struct kmem_cache' has no member named 'cpu_slab'
Date: Fri, 11 Apr 2025 17:27:42 +0800 [thread overview]
Message-ID: <202504111706.PioXoxAe-lkp@intel.com> (raw)
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
reply other threads:[~2025-04-11 9:27 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=202504111706.PioXoxAe-lkp@intel.com \
--to=lkp@intel.com \
--cc=ast@kernel.org \
--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.