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