1#ifndef _LIBLOCKDEP_LOCKDEP_H_
2#define _LIBLOCKDEP_LOCKDEP_H_
3
4#include <sys/prctl.h>
5#include <sys/syscall.h>
6#include <string.h>
7#include <limits.h>
8#include <linux/utsname.h>
9
10
11#define MAX_LOCK_DEPTH 2000UL
12
13#define asmlinkage
14#define __visible
15
16#include "../../../include/linux/lockdep.h"
17
18struct task_struct {
19	u64 curr_chain_key;
20	int lockdep_depth;
21	unsigned int lockdep_recursion;
22	struct held_lock held_locks[MAX_LOCK_DEPTH];
23	gfp_t lockdep_reclaim_gfp;
24	int pid;
25	char comm[17];
26};
27
28extern struct task_struct *__curr(void);
29
30#define current (__curr())
31
32#define debug_locks_off() 1
33#define task_pid_nr(tsk) ((tsk)->pid)
34
35#define KSYM_NAME_LEN 128
36#define printk printf
37
38#define list_del_rcu list_del
39
40#define atomic_t unsigned long
41#define atomic_inc(x) ((*(x))++)
42
43static struct new_utsname *init_utsname(void)
44{
45	static struct new_utsname n = (struct new_utsname) {
46		.release = "liblockdep",
47		.version = LIBLOCKDEP_VERSION,
48	};
49
50	return &n;
51}
52
53#define print_tainted() ""
54#define static_obj(x) 1
55
56#define debug_show_all_locks()
57
58#endif
59