mirror of
https://github.com/torvalds/linux.git
synced 2026-07-27 09:36:22 +02:00
cleanup: Specify nonnull argument index
The guard constructors were annotated with an empty __nonnull_args(), relying on __nonnull__() marking every pointer parameter as non-NULL. Sparse cannot parse the empty argument list. Both constructors take the lock pointer as their first parameter, so specify the index explicitly: __nonnull_args(1). Reported-by: Dan Carpenter <error27@gmail.com> Closes: https://lore.kernel.org/all/aiJi0WcYE8FZt-jO@stanley.mountain/ Signed-off-by: Dmitry Ilvokhin <d@ilvokhin.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Link: https://patch.msgid.link/aiKpH3cLBEj3TF2Q@shell.ilvokhin.com
This commit is contained in:
parent
608323bf7b
commit
a40e0f8ead
|
|
@ -397,7 +397,7 @@ static __maybe_unused const bool class_##_name##_is_conditional = _is_cond
|
|||
__DEFINE_GUARD_LOCK_PTR(_name, _T)
|
||||
|
||||
#define DEFINE_GUARD(_name, _type, _lock, _unlock) \
|
||||
static __always_inline __nonnull_args() _type class_##_name##_constructor(_type _T); \
|
||||
static __always_inline __nonnull_args(1) _type class_##_name##_constructor(_type _T); \
|
||||
DEFINE_CLASS(_name, _type, _unlock, ({ _lock; _T; }), _type _T); \
|
||||
DEFINE_CLASS_IS_GUARD(_name)
|
||||
|
||||
|
|
@ -498,7 +498,7 @@ static __always_inline void class_##_name##_destructor(class_##_name##_t *_T) \
|
|||
__DEFINE_GUARD_LOCK_PTR(_name, &_T->lock)
|
||||
|
||||
#define __DEFINE_LOCK_GUARD_1(_name, _type, ...) \
|
||||
static __always_inline __nonnull_args() \
|
||||
static __always_inline __nonnull_args(1) \
|
||||
class_##_name##_t class_##_name##_constructor(_type *l) \
|
||||
__no_context_analysis \
|
||||
{ \
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user