forked from AndroidReverser-Test/Kernel-Trace
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathkernel_trace.h
More file actions
77 lines (64 loc) · 1.62 KB
/
kernel_trace.h
File metadata and controls
77 lines (64 loc) · 1.62 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#include <asm/ptrace.h>
#include <linux/spinlock.h>
#include "uprobe_trace.h"
#include "mrbtree.h"
#define _THIS_IP_ ({ __label__ __here; __here: (unsigned long)&&__here; })
#define MAX_PATH_LEN 300
#define MAX_FUN_NAME 150
#define LOOKUP_FOLLOW 0x0001
#define HASH_LEN_DECLARE u32 hash; u32 len
struct inode;
struct mm_struct;
struct vfsmount;
struct hlist_bl_node {
struct hlist_bl_node *next, **pprev;
};
struct qstr {
union {
struct {
HASH_LEN_DECLARE;
};
u64 hash_len;
};
const unsigned char *name;
};
struct dentry {
/* RCU lookup touched fields */
unsigned int d_flags; /* protected by d_lock */
spinlock_t d_seq; /* per dentry seqlock */
struct hlist_bl_node d_hash; /* lookup hash list */
struct dentry *d_parent; /* parent directory */
struct qstr d_name;
struct inode *d_inode;
};
struct path {
struct vfsmount *mnt;
struct dentry *dentry;
} __randomize_layout;
enum uprobe_filter_ctx {
UPROBE_FILTER_REGISTER,
UPROBE_FILTER_UNREGISTER,
UPROBE_FILTER_MMAP,
};
struct mpt_regs {
union {
struct user_pt_regs user_regs;
struct {
u64 regs[31];
u64 sp;
u64 pc;
u64 pstate;
};
};
};
struct uprobe_consumer {
int (*handler)(struct uprobe_consumer *self, struct mpt_regs *regs);
int (*ret_handler)(struct uprobe_consumer *self,
unsigned long func,
struct mpt_regs *regs);
bool (*filter)(struct uprobe_consumer *self,
enum uprobe_filter_ctx ctx,
struct mm_struct *mm);
struct uprobe_consumer *next;
};
struct pid_namespace;