From: kernel test robot <lkp@intel.com>
To: Kumar Kartikeya Dwivedi <memxor@gmail.com>,
bpf@vger.kernel.org, linux-kernel@vger.kernel.org
Cc: oe-kbuild-all@lists.linux.dev,
Peter Zijlstra <peterz@infradead.org>,
Waiman Long <llong@redhat.com>,
Alexei Starovoitov <ast@kernel.org>,
Andrii Nakryiko <andrii@kernel.org>,
Daniel Borkmann <daniel@iogearbox.net>,
Martin KaFai Lau <martin.lau@kernel.org>,
Eduard Zingerman <eddyz87@gmail.com>,
"Paul E. McKenney" <paulmck@kernel.org>,
Tejun Heo <tj@kernel.org>, Barret Rhoden <brho@google.com>,
Josh Don <joshdon@google.com>, Dohyun Kim <dohyunkim@google.com>,
kernel-team@meta.com
Subject: Re: [PATCH bpf-next v1 20/22] bpf: Introduce rqspinlock kfuncs
Date: Wed, 8 Jan 2025 18:23:37 +0800 [thread overview]
Message-ID: <202501081853.1N3CiU6j-lkp@intel.com> (raw)
In-Reply-To: <20250107140004.2732830-21-memxor@gmail.com>
Hi Kumar,
kernel test robot noticed the following build errors:
[auto build test ERROR on f44275e7155dc310d36516fc25be503da099781c]
url: https://github.com/intel-lab-lkp/linux/commits/Kumar-Kartikeya-Dwivedi/locking-Move-MCS-struct-definition-to-public-header/20250107-220615
base: f44275e7155dc310d36516fc25be503da099781c
patch link: https://lore.kernel.org/r/20250107140004.2732830-21-memxor%40gmail.com
patch subject: [PATCH bpf-next v1 20/22] bpf: Introduce rqspinlock kfuncs
config: loongarch-allnoconfig (https://download.01.org/0day-ci/archive/20250108/202501081853.1N3CiU6j-lkp@intel.com/config)
compiler: loongarch64-linux-gcc (GCC) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250108/202501081853.1N3CiU6j-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/202501081853.1N3CiU6j-lkp@intel.com/
All errors (new ones prefixed by >>):
In file included from include/asm-generic/qspinlock.h:42,
from arch/loongarch/include/asm/qspinlock.h:39,
from include/asm-generic/rqspinlock.h:15,
from ./arch/loongarch/include/generated/asm/rqspinlock.h:1,
from include/linux/bpf.h:33,
from include/linux/security.h:35,
from kernel/printk/printk.c:34:
include/asm-generic/qspinlock_types.h:44:3: error: conflicting types for 'arch_spinlock_t'; have 'struct qspinlock'
44 | } arch_spinlock_t;
| ^~~~~~~~~~~~~~~
In file included from include/linux/spinlock_types_raw.h:9,
from include/linux/ratelimit_types.h:7,
from include/linux/printk.h:9,
from include/linux/kernel.h:31,
from kernel/printk/printk.c:22:
include/linux/spinlock_types_up.h:25:20: note: previous declaration of 'arch_spinlock_t' with type 'arch_spinlock_t'
25 | typedef struct { } arch_spinlock_t;
| ^~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:9: warning: "__ARCH_SPIN_LOCK_UNLOCKED" redefined
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_up.h:27:9: note: this is the location of the previous definition
27 | #define __ARCH_SPIN_LOCK_UNLOCKED { }
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock.h:144:9: warning: "arch_spin_is_locked" redefined
144 | #define arch_spin_is_locked(l) queued_spin_is_locked(l)
| ^~~~~~~~~~~~~~~~~~~
In file included from include/linux/spinlock.h:97,
from include/linux/mmzone.h:8,
from include/linux/gfp.h:7,
from include/linux/mm.h:7,
from kernel/printk/printk.c:23:
include/linux/spinlock_up.h:62:9: note: this is the location of the previous definition
62 | #define arch_spin_is_locked(lock) ((void)(lock), 0)
| ^~~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock.h:145:9: warning: "arch_spin_is_contended" redefined
145 | #define arch_spin_is_contended(l) queued_spin_is_contended(l)
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_up.h:69:9: note: this is the location of the previous definition
69 | #define arch_spin_is_contended(lock) (((void)(lock), 0))
| ^~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock.h:147:9: warning: "arch_spin_lock" redefined
147 | #define arch_spin_lock(l) queued_spin_lock(l)
| ^~~~~~~~~~~~~~
include/linux/spinlock_up.h:64:10: note: this is the location of the previous definition
64 | # define arch_spin_lock(lock) do { barrier(); (void)(lock); } while (0)
| ^~~~~~~~~~~~~~
include/asm-generic/qspinlock.h:148:9: warning: "arch_spin_trylock" redefined
148 | #define arch_spin_trylock(l) queued_spin_trylock(l)
| ^~~~~~~~~~~~~~~~~
include/linux/spinlock_up.h:66:10: note: this is the location of the previous definition
66 | # define arch_spin_trylock(lock) ({ barrier(); (void)(lock); 1; })
| ^~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock.h:149:9: warning: "arch_spin_unlock" redefined
149 | #define arch_spin_unlock(l) queued_spin_unlock(l)
| ^~~~~~~~~~~~~~~~
include/linux/spinlock_up.h:65:10: note: this is the location of the previous definition
65 | # define arch_spin_unlock(lock) do { barrier(); (void)(lock); } while (0)
| ^~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: error: extra brace group at end of initializer
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:81:32: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
81 | , .wait_lock = __RAW_SPIN_LOCK_UNLOCKED(lockname.wait_lock) \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:87:34: note: in expansion of macro '__MUTEX_INITIALIZER'
87 | struct mutex mutexname = __MUTEX_INITIALIZER(mutexname)
| ^~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:89:8: note: in expansion of macro 'DEFINE_MUTEX'
89 | static DEFINE_MUTEX(console_mutex);
| ^~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: note: (near initialization for '(anonymous).raw_lock')
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:81:32: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
81 | , .wait_lock = __RAW_SPIN_LOCK_UNLOCKED(lockname.wait_lock) \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:87:34: note: in expansion of macro '__MUTEX_INITIALIZER'
87 | struct mutex mutexname = __MUTEX_INITIALIZER(mutexname)
| ^~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:89:8: note: in expansion of macro 'DEFINE_MUTEX'
89 | static DEFINE_MUTEX(console_mutex);
| ^~~~~~~~~~~~
In file included from include/linux/atomic.h:7,
from include/asm-generic/bitops/atomic.h:5,
from arch/loongarch/include/asm/bitops.h:27,
from include/linux/bitops.h:68,
from include/linux/kernel.h:23:
>> arch/loongarch/include/asm/atomic.h:32:27: error: extra brace group at end of initializer
32 | #define ATOMIC_INIT(i) { (i) }
| ^
include/asm-generic/qspinlock_types.h:49:52: note: in expansion of macro 'ATOMIC_INIT'
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^~~~~~~~~~~
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:81:32: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
81 | , .wait_lock = __RAW_SPIN_LOCK_UNLOCKED(lockname.wait_lock) \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:87:34: note: in expansion of macro '__MUTEX_INITIALIZER'
87 | struct mutex mutexname = __MUTEX_INITIALIZER(mutexname)
| ^~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:89:8: note: in expansion of macro 'DEFINE_MUTEX'
89 | static DEFINE_MUTEX(console_mutex);
| ^~~~~~~~~~~~
arch/loongarch/include/asm/atomic.h:32:27: note: (near initialization for '(anonymous).raw_lock')
32 | #define ATOMIC_INIT(i) { (i) }
| ^
include/asm-generic/qspinlock_types.h:49:52: note: in expansion of macro 'ATOMIC_INIT'
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^~~~~~~~~~~
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:81:32: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
81 | , .wait_lock = __RAW_SPIN_LOCK_UNLOCKED(lockname.wait_lock) \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:87:34: note: in expansion of macro '__MUTEX_INITIALIZER'
87 | struct mutex mutexname = __MUTEX_INITIALIZER(mutexname)
| ^~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:89:8: note: in expansion of macro 'DEFINE_MUTEX'
89 | static DEFINE_MUTEX(console_mutex);
| ^~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: warning: excess elements in struct initializer
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:81:32: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
81 | , .wait_lock = __RAW_SPIN_LOCK_UNLOCKED(lockname.wait_lock) \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:87:34: note: in expansion of macro '__MUTEX_INITIALIZER'
87 | struct mutex mutexname = __MUTEX_INITIALIZER(mutexname)
| ^~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:89:8: note: in expansion of macro 'DEFINE_MUTEX'
89 | static DEFINE_MUTEX(console_mutex);
| ^~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: note: (near initialization for '(anonymous).raw_lock')
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:81:32: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
81 | , .wait_lock = __RAW_SPIN_LOCK_UNLOCKED(lockname.wait_lock) \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:87:34: note: in expansion of macro '__MUTEX_INITIALIZER'
87 | struct mutex mutexname = __MUTEX_INITIALIZER(mutexname)
| ^~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:89:8: note: in expansion of macro 'DEFINE_MUTEX'
89 | static DEFINE_MUTEX(console_mutex);
| ^~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: error: extra brace group at end of initializer
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/semaphore.h:23:27: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
23 | .lock = __RAW_SPIN_LOCK_UNLOCKED((name).lock), \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/semaphore.h:35:34: note: in expansion of macro '__SEMAPHORE_INITIALIZER'
35 | struct semaphore _name = __SEMAPHORE_INITIALIZER(_name, _n)
| ^~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:95:8: note: in expansion of macro 'DEFINE_SEMAPHORE'
95 | static DEFINE_SEMAPHORE(console_sem, 1);
| ^~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: note: (near initialization for '(anonymous).raw_lock')
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/semaphore.h:23:27: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
23 | .lock = __RAW_SPIN_LOCK_UNLOCKED((name).lock), \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/semaphore.h:35:34: note: in expansion of macro '__SEMAPHORE_INITIALIZER'
35 | struct semaphore _name = __SEMAPHORE_INITIALIZER(_name, _n)
| ^~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:95:8: note: in expansion of macro 'DEFINE_SEMAPHORE'
95 | static DEFINE_SEMAPHORE(console_sem, 1);
| ^~~~~~~~~~~~~~~~
>> arch/loongarch/include/asm/atomic.h:32:27: error: extra brace group at end of initializer
32 | #define ATOMIC_INIT(i) { (i) }
| ^
include/asm-generic/qspinlock_types.h:49:52: note: in expansion of macro 'ATOMIC_INIT'
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^~~~~~~~~~~
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/semaphore.h:23:27: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
23 | .lock = __RAW_SPIN_LOCK_UNLOCKED((name).lock), \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/semaphore.h:35:34: note: in expansion of macro '__SEMAPHORE_INITIALIZER'
35 | struct semaphore _name = __SEMAPHORE_INITIALIZER(_name, _n)
| ^~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:95:8: note: in expansion of macro 'DEFINE_SEMAPHORE'
95 | static DEFINE_SEMAPHORE(console_sem, 1);
| ^~~~~~~~~~~~~~~~
arch/loongarch/include/asm/atomic.h:32:27: note: (near initialization for '(anonymous).raw_lock')
32 | #define ATOMIC_INIT(i) { (i) }
| ^
include/asm-generic/qspinlock_types.h:49:52: note: in expansion of macro 'ATOMIC_INIT'
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^~~~~~~~~~~
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/semaphore.h:23:27: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
23 | .lock = __RAW_SPIN_LOCK_UNLOCKED((name).lock), \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/semaphore.h:35:34: note: in expansion of macro '__SEMAPHORE_INITIALIZER'
35 | struct semaphore _name = __SEMAPHORE_INITIALIZER(_name, _n)
| ^~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:95:8: note: in expansion of macro 'DEFINE_SEMAPHORE'
95 | static DEFINE_SEMAPHORE(console_sem, 1);
| ^~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: warning: excess elements in struct initializer
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/semaphore.h:23:27: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
23 | .lock = __RAW_SPIN_LOCK_UNLOCKED((name).lock), \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/semaphore.h:35:34: note: in expansion of macro '__SEMAPHORE_INITIALIZER'
35 | struct semaphore _name = __SEMAPHORE_INITIALIZER(_name, _n)
| ^~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:95:8: note: in expansion of macro 'DEFINE_SEMAPHORE'
95 | static DEFINE_SEMAPHORE(console_sem, 1);
| ^~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: note: (near initialization for '(anonymous).raw_lock')
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/semaphore.h:23:27: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
23 | .lock = __RAW_SPIN_LOCK_UNLOCKED((name).lock), \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/semaphore.h:35:34: note: in expansion of macro '__SEMAPHORE_INITIALIZER'
35 | struct semaphore _name = __SEMAPHORE_INITIALIZER(_name, _n)
| ^~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:95:8: note: in expansion of macro 'DEFINE_SEMAPHORE'
95 | static DEFINE_SEMAPHORE(console_sem, 1);
| ^~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: error: extra brace group at end of initializer
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/swait.h:62:27: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
62 | .lock = __RAW_SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/srcutiny.h:36:20: note: in expansion of macro '__SWAIT_QUEUE_HEAD_INITIALIZER'
36 | .srcu_wq = __SWAIT_QUEUE_HEAD_INITIALIZER(name.srcu_wq), \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/srcutiny.h:49:42: note: in expansion of macro '__SRCU_STRUCT_INIT'
49 | static struct srcu_struct name = __SRCU_STRUCT_INIT(name, name, name)
| ^~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:98:1: note: in expansion of macro 'DEFINE_STATIC_SRCU'
98 | DEFINE_STATIC_SRCU(console_srcu);
| ^~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: note: (near initialization for '(anonymous).raw_lock')
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/swait.h:62:27: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
62 | .lock = __RAW_SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/srcutiny.h:36:20: note: in expansion of macro '__SWAIT_QUEUE_HEAD_INITIALIZER'
36 | .srcu_wq = __SWAIT_QUEUE_HEAD_INITIALIZER(name.srcu_wq), \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/srcutiny.h:49:42: note: in expansion of macro '__SRCU_STRUCT_INIT'
49 | static struct srcu_struct name = __SRCU_STRUCT_INIT(name, name, name)
| ^~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:98:1: note: in expansion of macro 'DEFINE_STATIC_SRCU'
98 | DEFINE_STATIC_SRCU(console_srcu);
| ^~~~~~~~~~~~~~~~~~
>> arch/loongarch/include/asm/atomic.h:32:27: error: extra brace group at end of initializer
32 | #define ATOMIC_INIT(i) { (i) }
| ^
include/asm-generic/qspinlock_types.h:49:52: note: in expansion of macro 'ATOMIC_INIT'
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^~~~~~~~~~~
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/swait.h:62:27: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
62 | .lock = __RAW_SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/srcutiny.h:36:20: note: in expansion of macro '__SWAIT_QUEUE_HEAD_INITIALIZER'
36 | .srcu_wq = __SWAIT_QUEUE_HEAD_INITIALIZER(name.srcu_wq), \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/srcutiny.h:49:42: note: in expansion of macro '__SRCU_STRUCT_INIT'
49 | static struct srcu_struct name = __SRCU_STRUCT_INIT(name, name, name)
| ^~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:98:1: note: in expansion of macro 'DEFINE_STATIC_SRCU'
98 | DEFINE_STATIC_SRCU(console_srcu);
| ^~~~~~~~~~~~~~~~~~
arch/loongarch/include/asm/atomic.h:32:27: note: (near initialization for '(anonymous).raw_lock')
32 | #define ATOMIC_INIT(i) { (i) }
| ^
include/asm-generic/qspinlock_types.h:49:52: note: in expansion of macro 'ATOMIC_INIT'
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^~~~~~~~~~~
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/swait.h:62:27: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
62 | .lock = __RAW_SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/srcutiny.h:36:20: note: in expansion of macro '__SWAIT_QUEUE_HEAD_INITIALIZER'
36 | .srcu_wq = __SWAIT_QUEUE_HEAD_INITIALIZER(name.srcu_wq), \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/srcutiny.h:49:42: note: in expansion of macro '__SRCU_STRUCT_INIT'
49 | static struct srcu_struct name = __SRCU_STRUCT_INIT(name, name, name)
| ^~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:98:1: note: in expansion of macro 'DEFINE_STATIC_SRCU'
98 | DEFINE_STATIC_SRCU(console_srcu);
| ^~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: warning: excess elements in struct initializer
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/swait.h:62:27: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
62 | .lock = __RAW_SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/srcutiny.h:36:20: note: in expansion of macro '__SWAIT_QUEUE_HEAD_INITIALIZER'
36 | .srcu_wq = __SWAIT_QUEUE_HEAD_INITIALIZER(name.srcu_wq), \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/srcutiny.h:49:42: note: in expansion of macro '__SRCU_STRUCT_INIT'
49 | static struct srcu_struct name = __SRCU_STRUCT_INIT(name, name, name)
| ^~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:98:1: note: in expansion of macro 'DEFINE_STATIC_SRCU'
98 | DEFINE_STATIC_SRCU(console_srcu);
| ^~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: note: (near initialization for '(anonymous).raw_lock')
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/swait.h:62:27: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
62 | .lock = __RAW_SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/srcutiny.h:36:20: note: in expansion of macro '__SWAIT_QUEUE_HEAD_INITIALIZER'
36 | .srcu_wq = __SWAIT_QUEUE_HEAD_INITIALIZER(name.srcu_wq), \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/srcutiny.h:49:42: note: in expansion of macro '__SRCU_STRUCT_INIT'
49 | static struct srcu_struct name = __SRCU_STRUCT_INIT(name, name, name)
| ^~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:98:1: note: in expansion of macro 'DEFINE_STATIC_SRCU'
98 | DEFINE_STATIC_SRCU(console_srcu);
| ^~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: error: extra brace group at end of initializer
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:81:32: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
81 | , .wait_lock = __RAW_SPIN_LOCK_UNLOCKED(lockname.wait_lock) \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:87:34: note: in expansion of macro '__MUTEX_INITIALIZER'
87 | struct mutex mutexname = __MUTEX_INITIALIZER(mutexname)
| ^~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:465:8: note: in expansion of macro 'DEFINE_MUTEX'
465 | static DEFINE_MUTEX(syslog_lock);
| ^~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: note: (near initialization for '(anonymous).raw_lock')
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:81:32: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
81 | , .wait_lock = __RAW_SPIN_LOCK_UNLOCKED(lockname.wait_lock) \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:87:34: note: in expansion of macro '__MUTEX_INITIALIZER'
87 | struct mutex mutexname = __MUTEX_INITIALIZER(mutexname)
| ^~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:465:8: note: in expansion of macro 'DEFINE_MUTEX'
465 | static DEFINE_MUTEX(syslog_lock);
| ^~~~~~~~~~~~
>> arch/loongarch/include/asm/atomic.h:32:27: error: extra brace group at end of initializer
32 | #define ATOMIC_INIT(i) { (i) }
| ^
include/asm-generic/qspinlock_types.h:49:52: note: in expansion of macro 'ATOMIC_INIT'
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^~~~~~~~~~~
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:81:32: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
81 | , .wait_lock = __RAW_SPIN_LOCK_UNLOCKED(lockname.wait_lock) \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:87:34: note: in expansion of macro '__MUTEX_INITIALIZER'
87 | struct mutex mutexname = __MUTEX_INITIALIZER(mutexname)
| ^~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:465:8: note: in expansion of macro 'DEFINE_MUTEX'
465 | static DEFINE_MUTEX(syslog_lock);
| ^~~~~~~~~~~~
arch/loongarch/include/asm/atomic.h:32:27: note: (near initialization for '(anonymous).raw_lock')
32 | #define ATOMIC_INIT(i) { (i) }
| ^
include/asm-generic/qspinlock_types.h:49:52: note: in expansion of macro 'ATOMIC_INIT'
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^~~~~~~~~~~
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:81:32: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
81 | , .wait_lock = __RAW_SPIN_LOCK_UNLOCKED(lockname.wait_lock) \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:87:34: note: in expansion of macro '__MUTEX_INITIALIZER'
87 | struct mutex mutexname = __MUTEX_INITIALIZER(mutexname)
| ^~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:465:8: note: in expansion of macro 'DEFINE_MUTEX'
465 | static DEFINE_MUTEX(syslog_lock);
| ^~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: warning: excess elements in struct initializer
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:81:32: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
81 | , .wait_lock = __RAW_SPIN_LOCK_UNLOCKED(lockname.wait_lock) \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:87:34: note: in expansion of macro '__MUTEX_INITIALIZER'
87 | struct mutex mutexname = __MUTEX_INITIALIZER(mutexname)
| ^~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:465:8: note: in expansion of macro 'DEFINE_MUTEX'
465 | static DEFINE_MUTEX(syslog_lock);
| ^~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: note: (near initialization for '(anonymous).raw_lock')
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:81:32: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
81 | , .wait_lock = __RAW_SPIN_LOCK_UNLOCKED(lockname.wait_lock) \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:87:34: note: in expansion of macro '__MUTEX_INITIALIZER'
87 | struct mutex mutexname = __MUTEX_INITIALIZER(mutexname)
| ^~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:465:8: note: in expansion of macro 'DEFINE_MUTEX'
465 | static DEFINE_MUTEX(syslog_lock);
| ^~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: error: extra brace group at end of initializer
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types.h:33:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
33 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:38:22: note: in expansion of macro '___SPIN_LOCK_INITIALIZER'
38 | { { .rlock = ___SPIN_LOCK_INITIALIZER(lockname) } }
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:41:22: note: in expansion of macro '__SPIN_LOCK_INITIALIZER'
41 | (spinlock_t) __SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:56:27: note: in expansion of macro '__SPIN_LOCK_UNLOCKED'
56 | .lock = __SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:60:39: note: in expansion of macro '__WAIT_QUEUE_HEAD_INITIALIZER'
60 | struct wait_queue_head name = __WAIT_QUEUE_HEAD_INITIALIZER(name)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:493:1: note: in expansion of macro 'DECLARE_WAIT_QUEUE_HEAD'
493 | DECLARE_WAIT_QUEUE_HEAD(log_wait);
| ^~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: note: (near initialization for '(anonymous).<anonymous>.rlock.raw_lock')
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types.h:33:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
33 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:38:22: note: in expansion of macro '___SPIN_LOCK_INITIALIZER'
38 | { { .rlock = ___SPIN_LOCK_INITIALIZER(lockname) } }
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:41:22: note: in expansion of macro '__SPIN_LOCK_INITIALIZER'
41 | (spinlock_t) __SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:56:27: note: in expansion of macro '__SPIN_LOCK_UNLOCKED'
56 | .lock = __SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:60:39: note: in expansion of macro '__WAIT_QUEUE_HEAD_INITIALIZER'
60 | struct wait_queue_head name = __WAIT_QUEUE_HEAD_INITIALIZER(name)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:493:1: note: in expansion of macro 'DECLARE_WAIT_QUEUE_HEAD'
493 | DECLARE_WAIT_QUEUE_HEAD(log_wait);
| ^~~~~~~~~~~~~~~~~~~~~~~
>> arch/loongarch/include/asm/atomic.h:32:27: error: extra brace group at end of initializer
32 | #define ATOMIC_INIT(i) { (i) }
| ^
include/asm-generic/qspinlock_types.h:49:52: note: in expansion of macro 'ATOMIC_INIT'
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^~~~~~~~~~~
include/linux/spinlock_types.h:33:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
33 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:38:22: note: in expansion of macro '___SPIN_LOCK_INITIALIZER'
38 | { { .rlock = ___SPIN_LOCK_INITIALIZER(lockname) } }
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:41:22: note: in expansion of macro '__SPIN_LOCK_INITIALIZER'
41 | (spinlock_t) __SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:56:27: note: in expansion of macro '__SPIN_LOCK_UNLOCKED'
56 | .lock = __SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:60:39: note: in expansion of macro '__WAIT_QUEUE_HEAD_INITIALIZER'
60 | struct wait_queue_head name = __WAIT_QUEUE_HEAD_INITIALIZER(name)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:493:1: note: in expansion of macro 'DECLARE_WAIT_QUEUE_HEAD'
493 | DECLARE_WAIT_QUEUE_HEAD(log_wait);
| ^~~~~~~~~~~~~~~~~~~~~~~
arch/loongarch/include/asm/atomic.h:32:27: note: (near initialization for '(anonymous).<anonymous>.rlock.raw_lock')
32 | #define ATOMIC_INIT(i) { (i) }
| ^
include/asm-generic/qspinlock_types.h:49:52: note: in expansion of macro 'ATOMIC_INIT'
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^~~~~~~~~~~
include/linux/spinlock_types.h:33:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
33 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:38:22: note: in expansion of macro '___SPIN_LOCK_INITIALIZER'
38 | { { .rlock = ___SPIN_LOCK_INITIALIZER(lockname) } }
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:41:22: note: in expansion of macro '__SPIN_LOCK_INITIALIZER'
41 | (spinlock_t) __SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:56:27: note: in expansion of macro '__SPIN_LOCK_UNLOCKED'
56 | .lock = __SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:60:39: note: in expansion of macro '__WAIT_QUEUE_HEAD_INITIALIZER'
60 | struct wait_queue_head name = __WAIT_QUEUE_HEAD_INITIALIZER(name)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:493:1: note: in expansion of macro 'DECLARE_WAIT_QUEUE_HEAD'
493 | DECLARE_WAIT_QUEUE_HEAD(log_wait);
| ^~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: warning: excess elements in struct initializer
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types.h:33:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
33 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:38:22: note: in expansion of macro '___SPIN_LOCK_INITIALIZER'
38 | { { .rlock = ___SPIN_LOCK_INITIALIZER(lockname) } }
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:41:22: note: in expansion of macro '__SPIN_LOCK_INITIALIZER'
41 | (spinlock_t) __SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:56:27: note: in expansion of macro '__SPIN_LOCK_UNLOCKED'
56 | .lock = __SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:60:39: note: in expansion of macro '__WAIT_QUEUE_HEAD_INITIALIZER'
60 | struct wait_queue_head name = __WAIT_QUEUE_HEAD_INITIALIZER(name)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:493:1: note: in expansion of macro 'DECLARE_WAIT_QUEUE_HEAD'
493 | DECLARE_WAIT_QUEUE_HEAD(log_wait);
| ^~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: note: (near initialization for '(anonymous).<anonymous>.rlock.raw_lock')
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types.h:33:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
33 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:38:22: note: in expansion of macro '___SPIN_LOCK_INITIALIZER'
38 | { { .rlock = ___SPIN_LOCK_INITIALIZER(lockname) } }
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:41:22: note: in expansion of macro '__SPIN_LOCK_INITIALIZER'
41 | (spinlock_t) __SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:56:27: note: in expansion of macro '__SPIN_LOCK_UNLOCKED'
56 | .lock = __SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:60:39: note: in expansion of macro '__WAIT_QUEUE_HEAD_INITIALIZER'
60 | struct wait_queue_head name = __WAIT_QUEUE_HEAD_INITIALIZER(name)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:493:1: note: in expansion of macro 'DECLARE_WAIT_QUEUE_HEAD'
493 | DECLARE_WAIT_QUEUE_HEAD(log_wait);
| ^~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: error: extra brace group at end of initializer
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types.h:33:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
33 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:38:22: note: in expansion of macro '___SPIN_LOCK_INITIALIZER'
38 | { { .rlock = ___SPIN_LOCK_INITIALIZER(lockname) } }
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:41:22: note: in expansion of macro '__SPIN_LOCK_INITIALIZER'
41 | (spinlock_t) __SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:56:27: note: in expansion of macro '__SPIN_LOCK_UNLOCKED'
56 | .lock = __SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:60:39: note: in expansion of macro '__WAIT_QUEUE_HEAD_INITIALIZER'
60 | struct wait_queue_head name = __WAIT_QUEUE_HEAD_INITIALIZER(name)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:494:8: note: in expansion of macro 'DECLARE_WAIT_QUEUE_HEAD'
494 | static DECLARE_WAIT_QUEUE_HEAD(legacy_wait);
| ^~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: note: (near initialization for '(anonymous).<anonymous>.rlock.raw_lock')
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types.h:33:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
33 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:38:22: note: in expansion of macro '___SPIN_LOCK_INITIALIZER'
38 | { { .rlock = ___SPIN_LOCK_INITIALIZER(lockname) } }
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:41:22: note: in expansion of macro '__SPIN_LOCK_INITIALIZER'
41 | (spinlock_t) __SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:56:27: note: in expansion of macro '__SPIN_LOCK_UNLOCKED'
56 | .lock = __SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:60:39: note: in expansion of macro '__WAIT_QUEUE_HEAD_INITIALIZER'
60 | struct wait_queue_head name = __WAIT_QUEUE_HEAD_INITIALIZER(name)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:494:8: note: in expansion of macro 'DECLARE_WAIT_QUEUE_HEAD'
494 | static DECLARE_WAIT_QUEUE_HEAD(legacy_wait);
| ^~~~~~~~~~~~~~~~~~~~~~~
>> arch/loongarch/include/asm/atomic.h:32:27: error: extra brace group at end of initializer
32 | #define ATOMIC_INIT(i) { (i) }
| ^
include/asm-generic/qspinlock_types.h:49:52: note: in expansion of macro 'ATOMIC_INIT'
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^~~~~~~~~~~
include/linux/spinlock_types.h:33:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
33 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:38:22: note: in expansion of macro '___SPIN_LOCK_INITIALIZER'
38 | { { .rlock = ___SPIN_LOCK_INITIALIZER(lockname) } }
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:41:22: note: in expansion of macro '__SPIN_LOCK_INITIALIZER'
41 | (spinlock_t) __SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:56:27: note: in expansion of macro '__SPIN_LOCK_UNLOCKED'
56 | .lock = __SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:60:39: note: in expansion of macro '__WAIT_QUEUE_HEAD_INITIALIZER'
60 | struct wait_queue_head name = __WAIT_QUEUE_HEAD_INITIALIZER(name)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:494:8: note: in expansion of macro 'DECLARE_WAIT_QUEUE_HEAD'
494 | static DECLARE_WAIT_QUEUE_HEAD(legacy_wait);
| ^~~~~~~~~~~~~~~~~~~~~~~
arch/loongarch/include/asm/atomic.h:32:27: note: (near initialization for '(anonymous).<anonymous>.rlock.raw_lock')
32 | #define ATOMIC_INIT(i) { (i) }
| ^
include/asm-generic/qspinlock_types.h:49:52: note: in expansion of macro 'ATOMIC_INIT'
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^~~~~~~~~~~
include/linux/spinlock_types.h:33:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
33 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:38:22: note: in expansion of macro '___SPIN_LOCK_INITIALIZER'
38 | { { .rlock = ___SPIN_LOCK_INITIALIZER(lockname) } }
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:41:22: note: in expansion of macro '__SPIN_LOCK_INITIALIZER'
41 | (spinlock_t) __SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:56:27: note: in expansion of macro '__SPIN_LOCK_UNLOCKED'
56 | .lock = __SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:60:39: note: in expansion of macro '__WAIT_QUEUE_HEAD_INITIALIZER'
60 | struct wait_queue_head name = __WAIT_QUEUE_HEAD_INITIALIZER(name)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:494:8: note: in expansion of macro 'DECLARE_WAIT_QUEUE_HEAD'
494 | static DECLARE_WAIT_QUEUE_HEAD(legacy_wait);
| ^~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: warning: excess elements in struct initializer
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types.h:33:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
33 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:38:22: note: in expansion of macro '___SPIN_LOCK_INITIALIZER'
38 | { { .rlock = ___SPIN_LOCK_INITIALIZER(lockname) } }
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:41:22: note: in expansion of macro '__SPIN_LOCK_INITIALIZER'
41 | (spinlock_t) __SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:56:27: note: in expansion of macro '__SPIN_LOCK_UNLOCKED'
56 | .lock = __SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:60:39: note: in expansion of macro '__WAIT_QUEUE_HEAD_INITIALIZER'
60 | struct wait_queue_head name = __WAIT_QUEUE_HEAD_INITIALIZER(name)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:494:8: note: in expansion of macro 'DECLARE_WAIT_QUEUE_HEAD'
494 | static DECLARE_WAIT_QUEUE_HEAD(legacy_wait);
| ^~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: note: (near initialization for '(anonymous).<anonymous>.rlock.raw_lock')
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types.h:33:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
33 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:38:22: note: in expansion of macro '___SPIN_LOCK_INITIALIZER'
38 | { { .rlock = ___SPIN_LOCK_INITIALIZER(lockname) } }
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:41:22: note: in expansion of macro '__SPIN_LOCK_INITIALIZER'
41 | (spinlock_t) __SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:56:27: note: in expansion of macro '__SPIN_LOCK_UNLOCKED'
56 | .lock = __SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~
include/linux/wait.h:60:39: note: in expansion of macro '__WAIT_QUEUE_HEAD_INITIALIZER'
60 | struct wait_queue_head name = __WAIT_QUEUE_HEAD_INITIALIZER(name)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:494:8: note: in expansion of macro 'DECLARE_WAIT_QUEUE_HEAD'
494 | static DECLARE_WAIT_QUEUE_HEAD(legacy_wait);
| ^~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: error: extra brace group at end of initializer
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:71:52: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
71 | #define DEFINE_RAW_SPINLOCK(x) raw_spinlock_t x = __RAW_SPIN_LOCK_UNLOCKED(x)
| ^~~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:1891:8: note: in expansion of macro 'DEFINE_RAW_SPINLOCK'
1891 | static DEFINE_RAW_SPINLOCK(console_owner_lock);
| ^~~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: note: (near initialization for '(anonymous).raw_lock')
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:71:52: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
71 | #define DEFINE_RAW_SPINLOCK(x) raw_spinlock_t x = __RAW_SPIN_LOCK_UNLOCKED(x)
| ^~~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:1891:8: note: in expansion of macro 'DEFINE_RAW_SPINLOCK'
1891 | static DEFINE_RAW_SPINLOCK(console_owner_lock);
| ^~~~~~~~~~~~~~~~~~~
>> arch/loongarch/include/asm/atomic.h:32:27: error: extra brace group at end of initializer
32 | #define ATOMIC_INIT(i) { (i) }
| ^
include/asm-generic/qspinlock_types.h:49:52: note: in expansion of macro 'ATOMIC_INIT'
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^~~~~~~~~~~
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:71:52: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
71 | #define DEFINE_RAW_SPINLOCK(x) raw_spinlock_t x = __RAW_SPIN_LOCK_UNLOCKED(x)
| ^~~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:1891:8: note: in expansion of macro 'DEFINE_RAW_SPINLOCK'
1891 | static DEFINE_RAW_SPINLOCK(console_owner_lock);
| ^~~~~~~~~~~~~~~~~~~
arch/loongarch/include/asm/atomic.h:32:27: note: (near initialization for '(anonymous).raw_lock')
32 | #define ATOMIC_INIT(i) { (i) }
| ^
include/asm-generic/qspinlock_types.h:49:52: note: in expansion of macro 'ATOMIC_INIT'
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^~~~~~~~~~~
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:71:52: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
71 | #define DEFINE_RAW_SPINLOCK(x) raw_spinlock_t x = __RAW_SPIN_LOCK_UNLOCKED(x)
| ^~~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:1891:8: note: in expansion of macro 'DEFINE_RAW_SPINLOCK'
1891 | static DEFINE_RAW_SPINLOCK(console_owner_lock);
| ^~~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: warning: excess elements in struct initializer
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:71:52: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
71 | #define DEFINE_RAW_SPINLOCK(x) raw_spinlock_t x = __RAW_SPIN_LOCK_UNLOCKED(x)
| ^~~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:1891:8: note: in expansion of macro 'DEFINE_RAW_SPINLOCK'
1891 | static DEFINE_RAW_SPINLOCK(console_owner_lock);
| ^~~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: note: (near initialization for '(anonymous).raw_lock')
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:71:52: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
71 | #define DEFINE_RAW_SPINLOCK(x) raw_spinlock_t x = __RAW_SPIN_LOCK_UNLOCKED(x)
| ^~~~~~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:1891:8: note: in expansion of macro 'DEFINE_RAW_SPINLOCK'
1891 | static DEFINE_RAW_SPINLOCK(console_owner_lock);
| ^~~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: error: extra brace group at end of initializer
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ratelimit_types.h:27:35: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
27 | .lock = __RAW_SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ratelimit_types.h:34:9: note: in expansion of macro 'RATELIMIT_STATE_INIT_FLAGS'
34 | RATELIMIT_STATE_INIT_FLAGS(name, interval_init, burst_init, 0)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ratelimit_types.h:42:17: note: in expansion of macro 'RATELIMIT_STATE_INIT'
42 | RATELIMIT_STATE_INIT(name, interval_init, burst_init) \
| ^~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:4592:1: note: in expansion of macro 'DEFINE_RATELIMIT_STATE'
4592 | DEFINE_RATELIMIT_STATE(printk_ratelimit_state, 5 * HZ, 10);
| ^~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: note: (near initialization for '(anonymous).raw_lock')
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ratelimit_types.h:27:35: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
27 | .lock = __RAW_SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ratelimit_types.h:34:9: note: in expansion of macro 'RATELIMIT_STATE_INIT_FLAGS'
34 | RATELIMIT_STATE_INIT_FLAGS(name, interval_init, burst_init, 0)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ratelimit_types.h:42:17: note: in expansion of macro 'RATELIMIT_STATE_INIT'
42 | RATELIMIT_STATE_INIT(name, interval_init, burst_init) \
| ^~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:4592:1: note: in expansion of macro 'DEFINE_RATELIMIT_STATE'
4592 | DEFINE_RATELIMIT_STATE(printk_ratelimit_state, 5 * HZ, 10);
| ^~~~~~~~~~~~~~~~~~~~~~
>> arch/loongarch/include/asm/atomic.h:32:27: error: extra brace group at end of initializer
32 | #define ATOMIC_INIT(i) { (i) }
| ^
include/asm-generic/qspinlock_types.h:49:52: note: in expansion of macro 'ATOMIC_INIT'
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^~~~~~~~~~~
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ratelimit_types.h:27:35: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
27 | .lock = __RAW_SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ratelimit_types.h:34:9: note: in expansion of macro 'RATELIMIT_STATE_INIT_FLAGS'
34 | RATELIMIT_STATE_INIT_FLAGS(name, interval_init, burst_init, 0)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ratelimit_types.h:42:17: note: in expansion of macro 'RATELIMIT_STATE_INIT'
42 | RATELIMIT_STATE_INIT(name, interval_init, burst_init) \
| ^~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:4592:1: note: in expansion of macro 'DEFINE_RATELIMIT_STATE'
4592 | DEFINE_RATELIMIT_STATE(printk_ratelimit_state, 5 * HZ, 10);
| ^~~~~~~~~~~~~~~~~~~~~~
arch/loongarch/include/asm/atomic.h:32:27: note: (near initialization for '(anonymous).raw_lock')
32 | #define ATOMIC_INIT(i) { (i) }
| ^
include/asm-generic/qspinlock_types.h:49:52: note: in expansion of macro 'ATOMIC_INIT'
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^~~~~~~~~~~
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ratelimit_types.h:27:35: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
27 | .lock = __RAW_SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ratelimit_types.h:34:9: note: in expansion of macro 'RATELIMIT_STATE_INIT_FLAGS'
34 | RATELIMIT_STATE_INIT_FLAGS(name, interval_init, burst_init, 0)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ratelimit_types.h:42:17: note: in expansion of macro 'RATELIMIT_STATE_INIT'
42 | RATELIMIT_STATE_INIT(name, interval_init, burst_init) \
| ^~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:4592:1: note: in expansion of macro 'DEFINE_RATELIMIT_STATE'
4592 | DEFINE_RATELIMIT_STATE(printk_ratelimit_state, 5 * HZ, 10);
| ^~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: warning: excess elements in struct initializer
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ratelimit_types.h:27:35: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
27 | .lock = __RAW_SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ratelimit_types.h:34:9: note: in expansion of macro 'RATELIMIT_STATE_INIT_FLAGS'
34 | RATELIMIT_STATE_INIT_FLAGS(name, interval_init, burst_init, 0)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ratelimit_types.h:42:17: note: in expansion of macro 'RATELIMIT_STATE_INIT'
42 | RATELIMIT_STATE_INIT(name, interval_init, burst_init) \
| ^~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:4592:1: note: in expansion of macro 'DEFINE_RATELIMIT_STATE'
4592 | DEFINE_RATELIMIT_STATE(printk_ratelimit_state, 5 * HZ, 10);
| ^~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: note: (near initialization for '(anonymous).raw_lock')
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types_raw.h:64:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
64 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types_raw.h:69:26: note: in expansion of macro '__RAW_SPIN_LOCK_INITIALIZER'
69 | (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ratelimit_types.h:27:35: note: in expansion of macro '__RAW_SPIN_LOCK_UNLOCKED'
27 | .lock = __RAW_SPIN_LOCK_UNLOCKED(name.lock), \
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ratelimit_types.h:34:9: note: in expansion of macro 'RATELIMIT_STATE_INIT_FLAGS'
34 | RATELIMIT_STATE_INIT_FLAGS(name, interval_init, burst_init, 0)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ratelimit_types.h:42:17: note: in expansion of macro 'RATELIMIT_STATE_INIT'
42 | RATELIMIT_STATE_INIT(name, interval_init, burst_init) \
| ^~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:4592:1: note: in expansion of macro 'DEFINE_RATELIMIT_STATE'
4592 | DEFINE_RATELIMIT_STATE(printk_ratelimit_state, 5 * HZ, 10);
| ^~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: error: extra brace group at end of initializer
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types.h:33:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
33 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:38:22: note: in expansion of macro '___SPIN_LOCK_INITIALIZER'
38 | { { .rlock = ___SPIN_LOCK_INITIALIZER(lockname) } }
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:41:22: note: in expansion of macro '__SPIN_LOCK_INITIALIZER'
41 | (spinlock_t) __SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:43:48: note: in expansion of macro '__SPIN_LOCK_UNLOCKED'
43 | #define DEFINE_SPINLOCK(x) spinlock_t x = __SPIN_LOCK_UNLOCKED(x)
| ^~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:4622:8: note: in expansion of macro 'DEFINE_SPINLOCK'
4622 | static DEFINE_SPINLOCK(dump_list_lock);
| ^~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: note: (near initialization for '(anonymous).<anonymous>.rlock.raw_lock')
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types.h:33:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
33 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:38:22: note: in expansion of macro '___SPIN_LOCK_INITIALIZER'
38 | { { .rlock = ___SPIN_LOCK_INITIALIZER(lockname) } }
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:41:22: note: in expansion of macro '__SPIN_LOCK_INITIALIZER'
41 | (spinlock_t) __SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:43:48: note: in expansion of macro '__SPIN_LOCK_UNLOCKED'
43 | #define DEFINE_SPINLOCK(x) spinlock_t x = __SPIN_LOCK_UNLOCKED(x)
| ^~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:4622:8: note: in expansion of macro 'DEFINE_SPINLOCK'
4622 | static DEFINE_SPINLOCK(dump_list_lock);
| ^~~~~~~~~~~~~~~
>> arch/loongarch/include/asm/atomic.h:32:27: error: extra brace group at end of initializer
32 | #define ATOMIC_INIT(i) { (i) }
| ^
include/asm-generic/qspinlock_types.h:49:52: note: in expansion of macro 'ATOMIC_INIT'
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^~~~~~~~~~~
include/linux/spinlock_types.h:33:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
33 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:38:22: note: in expansion of macro '___SPIN_LOCK_INITIALIZER'
38 | { { .rlock = ___SPIN_LOCK_INITIALIZER(lockname) } }
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:41:22: note: in expansion of macro '__SPIN_LOCK_INITIALIZER'
41 | (spinlock_t) __SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:43:48: note: in expansion of macro '__SPIN_LOCK_UNLOCKED'
43 | #define DEFINE_SPINLOCK(x) spinlock_t x = __SPIN_LOCK_UNLOCKED(x)
| ^~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:4622:8: note: in expansion of macro 'DEFINE_SPINLOCK'
4622 | static DEFINE_SPINLOCK(dump_list_lock);
| ^~~~~~~~~~~~~~~
arch/loongarch/include/asm/atomic.h:32:27: note: (near initialization for '(anonymous).<anonymous>.rlock.raw_lock')
32 | #define ATOMIC_INIT(i) { (i) }
| ^
include/asm-generic/qspinlock_types.h:49:52: note: in expansion of macro 'ATOMIC_INIT'
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^~~~~~~~~~~
include/linux/spinlock_types.h:33:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
33 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:38:22: note: in expansion of macro '___SPIN_LOCK_INITIALIZER'
38 | { { .rlock = ___SPIN_LOCK_INITIALIZER(lockname) } }
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:41:22: note: in expansion of macro '__SPIN_LOCK_INITIALIZER'
41 | (spinlock_t) __SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:43:48: note: in expansion of macro '__SPIN_LOCK_UNLOCKED'
43 | #define DEFINE_SPINLOCK(x) spinlock_t x = __SPIN_LOCK_UNLOCKED(x)
| ^~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:4622:8: note: in expansion of macro 'DEFINE_SPINLOCK'
4622 | static DEFINE_SPINLOCK(dump_list_lock);
| ^~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: warning: excess elements in struct initializer
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types.h:33:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
33 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:38:22: note: in expansion of macro '___SPIN_LOCK_INITIALIZER'
38 | { { .rlock = ___SPIN_LOCK_INITIALIZER(lockname) } }
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:41:22: note: in expansion of macro '__SPIN_LOCK_INITIALIZER'
41 | (spinlock_t) __SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:43:48: note: in expansion of macro '__SPIN_LOCK_UNLOCKED'
43 | #define DEFINE_SPINLOCK(x) spinlock_t x = __SPIN_LOCK_UNLOCKED(x)
| ^~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:4622:8: note: in expansion of macro 'DEFINE_SPINLOCK'
4622 | static DEFINE_SPINLOCK(dump_list_lock);
| ^~~~~~~~~~~~~~~
include/asm-generic/qspinlock_types.h:49:43: note: (near initialization for '(anonymous).<anonymous>.rlock.raw_lock')
49 | #define __ARCH_SPIN_LOCK_UNLOCKED { { .val = ATOMIC_INIT(0) } }
| ^
include/linux/spinlock_types.h:33:21: note: in expansion of macro '__ARCH_SPIN_LOCK_UNLOCKED'
33 | .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:38:22: note: in expansion of macro '___SPIN_LOCK_INITIALIZER'
38 | { { .rlock = ___SPIN_LOCK_INITIALIZER(lockname) } }
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:41:22: note: in expansion of macro '__SPIN_LOCK_INITIALIZER'
41 | (spinlock_t) __SPIN_LOCK_INITIALIZER(lockname)
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/spinlock_types.h:43:48: note: in expansion of macro '__SPIN_LOCK_UNLOCKED'
43 | #define DEFINE_SPINLOCK(x) spinlock_t x = __SPIN_LOCK_UNLOCKED(x)
| ^~~~~~~~~~~~~~~~~~~~
kernel/printk/printk.c:4622:8: note: in expansion of macro 'DEFINE_SPINLOCK'
4622 | static DEFINE_SPINLOCK(dump_list_lock);
| ^~~~~~~~~~~~~~~
vim +32 arch/loongarch/include/asm/atomic.h
5b0b14e550a006 Huacai Chen 2022-05-31 31
5b0b14e550a006 Huacai Chen 2022-05-31 @32 #define ATOMIC_INIT(i) { (i) }
5b0b14e550a006 Huacai Chen 2022-05-31 33
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2025-01-08 10:24 UTC|newest]
Thread overview: 63+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-07 13:59 [PATCH bpf-next v1 00/22] Resilient Queued Spin Lock Kumar Kartikeya Dwivedi
2025-01-07 13:59 ` [PATCH bpf-next v1 01/22] locking: Move MCS struct definition to public header Kumar Kartikeya Dwivedi
2025-01-07 13:59 ` [PATCH bpf-next v1 02/22] locking: Move common qspinlock helpers to a private header Kumar Kartikeya Dwivedi
2025-01-07 13:59 ` [PATCH bpf-next v1 03/22] locking: Allow obtaining result of arch_mcs_spin_lock_contended Kumar Kartikeya Dwivedi
2025-01-07 13:59 ` [PATCH bpf-next v1 04/22] locking: Copy out qspinlock.c to rqspinlock.c Kumar Kartikeya Dwivedi
2025-01-07 13:59 ` [PATCH bpf-next v1 05/22] rqspinlock: Add rqspinlock.h header Kumar Kartikeya Dwivedi
2025-01-07 13:59 ` [PATCH bpf-next v1 06/22] rqspinlock: Drop PV and virtualization support Kumar Kartikeya Dwivedi
2025-01-07 13:59 ` [PATCH bpf-next v1 07/22] rqspinlock: Add support for timeouts Kumar Kartikeya Dwivedi
2025-01-07 14:50 ` Peter Zijlstra
2025-01-07 17:14 ` Kumar Kartikeya Dwivedi
2025-01-07 13:59 ` [PATCH bpf-next v1 08/22] rqspinlock: Protect pending bit owners from stalls Kumar Kartikeya Dwivedi
2025-01-07 14:51 ` Peter Zijlstra
2025-01-07 17:14 ` Kumar Kartikeya Dwivedi
2025-01-07 19:17 ` Peter Zijlstra
2025-01-07 19:22 ` Peter Zijlstra
2025-01-07 19:54 ` Kumar Kartikeya Dwivedi
2025-01-08 2:19 ` Waiman Long
2025-01-08 20:13 ` Kumar Kartikeya Dwivedi
2025-01-07 13:59 ` [PATCH bpf-next v1 09/22] rqspinlock: Protect waiters in queue " Kumar Kartikeya Dwivedi
2025-01-08 3:38 ` Waiman Long
2025-01-08 20:42 ` Kumar Kartikeya Dwivedi
2025-01-07 13:59 ` [PATCH bpf-next v1 10/22] rqspinlock: Protect waiters in trylock fallback " Kumar Kartikeya Dwivedi
2025-01-07 13:59 ` [PATCH bpf-next v1 11/22] rqspinlock: Add deadlock detection and recovery Kumar Kartikeya Dwivedi
2025-01-08 16:06 ` Waiman Long
2025-01-08 20:19 ` Kumar Kartikeya Dwivedi
2025-01-09 0:32 ` Waiman Long
2025-01-07 13:59 ` [PATCH bpf-next v1 12/22] rqspinlock: Add basic support for CONFIG_PARAVIRT Kumar Kartikeya Dwivedi
2025-01-08 16:27 ` Waiman Long
2025-01-08 20:32 ` Kumar Kartikeya Dwivedi
2025-01-09 0:48 ` Waiman Long
2025-01-09 2:42 ` Alexei Starovoitov
2025-01-09 2:58 ` Waiman Long
2025-01-09 3:37 ` Alexei Starovoitov
2025-01-09 3:46 ` Waiman Long
2025-01-09 3:53 ` Alexei Starovoitov
2025-01-09 3:58 ` Waiman Long
2025-01-07 13:59 ` [PATCH bpf-next v1 13/22] rqspinlock: Add helper to print a splat on timeout or deadlock Kumar Kartikeya Dwivedi
2025-01-07 13:59 ` [PATCH bpf-next v1 14/22] rqspinlock: Add macros for rqspinlock usage Kumar Kartikeya Dwivedi
2025-01-08 16:55 ` Waiman Long
2025-01-08 20:41 ` Kumar Kartikeya Dwivedi
2025-01-09 1:11 ` Waiman Long
2025-01-09 3:30 ` Alexei Starovoitov
2025-01-09 4:09 ` Waiman Long
2025-01-07 13:59 ` [PATCH bpf-next v1 15/22] rqspinlock: Add locktorture support Kumar Kartikeya Dwivedi
2025-01-07 13:59 ` [PATCH bpf-next v1 16/22] rqspinlock: Add entry to Makefile, MAINTAINERS Kumar Kartikeya Dwivedi
2025-01-07 13:59 ` [PATCH bpf-next v1 17/22] bpf: Convert hashtab.c to rqspinlock Kumar Kartikeya Dwivedi
2025-01-07 14:00 ` [PATCH bpf-next v1 18/22] bpf: Convert percpu_freelist.c " Kumar Kartikeya Dwivedi
2025-01-07 14:00 ` [PATCH bpf-next v1 19/22] bpf: Convert lpm_trie.c " Kumar Kartikeya Dwivedi
2025-01-07 14:00 ` [PATCH bpf-next v1 20/22] bpf: Introduce rqspinlock kfuncs Kumar Kartikeya Dwivedi
2025-01-08 10:23 ` kernel test robot
2025-01-08 10:23 ` kernel test robot [this message]
2025-01-08 10:44 ` kernel test robot
2025-01-07 14:00 ` [PATCH bpf-next v1 21/22] bpf: Implement verifier support for rqspinlock Kumar Kartikeya Dwivedi
2025-01-07 14:00 ` [PATCH bpf-next v1 22/22] selftests/bpf: Add tests " Kumar Kartikeya Dwivedi
2025-01-07 23:54 ` [PATCH bpf-next v1 00/22] Resilient Queued Spin Lock Linus Torvalds
2025-01-08 9:18 ` Peter Zijlstra
2025-01-08 20:12 ` Kumar Kartikeya Dwivedi
2025-01-08 20:30 ` Linus Torvalds
2025-01-08 21:06 ` Kumar Kartikeya Dwivedi
2025-01-08 21:30 ` Paul E. McKenney
2025-01-09 13:59 ` Waiman Long
2025-01-09 21:13 ` Kumar Kartikeya Dwivedi
2025-01-09 21:18 ` Waiman Long
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=202501081853.1N3CiU6j-lkp@intel.com \
--to=lkp@intel.com \
--cc=andrii@kernel.org \
--cc=ast@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=brho@google.com \
--cc=daniel@iogearbox.net \
--cc=dohyunkim@google.com \
--cc=eddyz87@gmail.com \
--cc=joshdon@google.com \
--cc=kernel-team@meta.com \
--cc=linux-kernel@vger.kernel.org \
--cc=llong@redhat.com \
--cc=martin.lau@kernel.org \
--cc=memxor@gmail.com \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=paulmck@kernel.org \
--cc=peterz@infradead.org \
--cc=tj@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox