ila: make lockdep happy again
authorCong Wang <xiyou.wangcong@gmail.com>
Tue, 14 Aug 2018 22:21:31 +0000 (15:21 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 16 Aug 2018 19:14:42 +0000 (12:14 -0700)
commitff93bca769925a2d8fd7f910cdf543d992e17f07
treebab8928bc5d1fe07c2c206c5462e1b1aef8b8c74
parent32039eac4c48f70dfaad36a84f30356ededc7ea8
ila: make lockdep happy again

Previously, alloc_ila_locks() and bucket_table_alloc() call
spin_lock_init() separately, therefore they have two different
lock names and lock class keys. However, after commit b893281715ab
("ila: Call library function alloc_bucket_locks") they both call
helper alloc_bucket_spinlocks() which now only has one lock
name and lock class key. This causes a few bogus lockdep warnings
as reported by syzbot.

Fix this by making alloc_bucket_locks() a macro and pass declaration
name as lock name and a static lock class key inside the macro.

Fixes: b893281715ab ("ila: Call library function alloc_bucket_locks")
Reported-by: <syzbot+b66a5a554991a8ed027c@syzkaller.appspotmail.com>
Cc: Tom Herbert <tom@quantonium.net>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/spinlock.h
lib/bucket_locks.c