blob: c1552c28507e472159ebd3fecee88811e51ff263 [file] [log] [blame]
Sasha Levin5634bd72013-06-13 18:41:17 -04001#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
Sasha Levin95f75472014-04-01 09:29:15 -040013#define asmlinkage
14#define __visible
15
Sasha Levin5634bd72013-06-13 18:41:17 -040016#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