summaryrefslogtreecommitdiff
path: root/tools/lib/lockdep/tests/ABCDBDDA.c
blob: 680c6cf3e919c9eb059bdab8c49e540fdfc862c4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <liblockdep/mutex.h>
#include "common.h"

void main(void)
{
	pthread_mutex_t a, b, c, d;

	pthread_mutex_init(&a, NULL);
	pthread_mutex_init(&b, NULL);
	pthread_mutex_init(&c, NULL);
	pthread_mutex_init(&d, NULL);

	LOCK_UNLOCK_2(a, b);
	LOCK_UNLOCK_2(c, d);
	LOCK_UNLOCK_2(b, d);
	LOCK_UNLOCK_2(d, a);
}
class='oid'>a0fc1812afaf992b01042e2bf081c455addc16ab /net/ipv6 parent6a413e269b170d6d3bd32a71de4d5dcf987d6843 (diff)
udp: properly cope with csum errors
Dmitry reported that UDP sockets being destroyed would trigger the WARN_ON(atomic_read(&sk->sk_rmem_alloc)); in inet_sock_destruct() It turns out we do not properly destroy skb(s) that have wrong UDP checksum. Thanks again to syzkaller team. Fixes : 7c13f97ffde6 ("udp: do fwd memory scheduling on dequeue") Reported-by: Dmitry Vyukov <dvyukov@google.com> Signed-off-by: Eric Dumazet <edumazet@google.com> Cc: Paolo Abeni <pabeni@redhat.com> Cc: Hannes Frederic Sowa <hannes@stressinduktion.org> Acked-by: Paolo Abeni <pabeni@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6')
-rw-r--r--net/ipv6/udp.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv6/udp.c b/net/ipv6/udp.c