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 
18 struct 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 
28 extern 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 
init_utsname(void)43 static 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