blob: 9cf1226a1de2b7a2e619b72a80ad340ecbd36f31 (
plain)
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
|
////////////////////////////////////////////////////////////////////////////////////
//
// FILE: probes_manager.h
//
// DESCRIPTION:
//
// SEE ALSO: probes_manager.c
// AUTHOR: L.Komkov, A.Gerenkov
// COMPANY NAME: Samsung Research Center in Moscow
// DEPT NAME: Advanced Software Group
// CREATED: 2008.02.15
// VERSION: 1.0
// REVISION DATE: 2008.12.03
//
////////////////////////////////////////////////////////////////////////////////////
#if !defined(__PROBES_MANAGER_H__)
#define __PROBES_MANAGER_H__
#include "ec_probe.h"
#include "probes.h"
typedef struct
{
unsigned long addr;
struct jprobe jprobe;
struct kretprobe retprobe;
struct hlist_node hlist;
} kernel_probe_t;
extern int add_probe(unsigned long addr,
unsigned long pre_handler,
unsigned long jp_handler,
unsigned long rp_handler);
extern int reset_probes(void);
int set_kernel_probes(void);
int unset_kernel_probes(void);
void dbi_install_user_handlers(void);
void dbi_uninstall_user_handlers(void);
int install_kern_otg_probe(unsigned long addr,
unsigned long pre_handler,
unsigned long jp_handler,
unsigned long rp_handler);
#endif // !defined(__PROBES_MANAGER_H__)
|