mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-26 13:44:15 +08:00
[PATCH] lockdep: annotate bh_lock_sock()
Teach special (recursive) locking code to the lock validator. Has no effect on non-lockdep kernels. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Arjan van de Ven <arjan@linux.intel.com> Cc: "David S. Miller" <davem@davemloft.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
a09785a241
commit
c636618485
@ -751,6 +751,9 @@ extern void FASTCALL(release_sock(struct sock *sk));
|
||||
|
||||
/* BH context may only use the following locking interface. */
|
||||
#define bh_lock_sock(__sk) spin_lock(&((__sk)->sk_lock.slock))
|
||||
#define bh_lock_sock_nested(__sk) \
|
||||
spin_lock_nested(&((__sk)->sk_lock.slock), \
|
||||
SINGLE_DEPTH_NESTING)
|
||||
#define bh_unlock_sock(__sk) spin_unlock(&((__sk)->sk_lock.slock))
|
||||
|
||||
extern struct sock *sk_alloc(int family,
|
||||
|
@ -1090,7 +1090,7 @@ process:
|
||||
|
||||
skb->dev = NULL;
|
||||
|
||||
bh_lock_sock(sk);
|
||||
bh_lock_sock_nested(sk);
|
||||
ret = 0;
|
||||
if (!sock_owned_by_user(sk)) {
|
||||
#ifdef CONFIG_NET_DMA
|
||||
|
Loading…
Reference in New Issue
Block a user