summaryrefslogtreecommitdiff
path: root/driver/sspt/sspt.h
diff options
context:
space:
mode:
Diffstat (limited to 'driver/sspt/sspt.h')
-rw-r--r--driver/sspt/sspt.h16
1 files changed, 7 insertions, 9 deletions
diff --git a/driver/sspt/sspt.h b/driver/sspt/sspt.h
index 0cfe5307..e11be73a 100644
--- a/driver/sspt/sspt.h
+++ b/driver/sspt/sspt.h
@@ -30,6 +30,7 @@
#include "sspt_file.h"
#include "sspt_procs.h"
#include "sspt_debug.h"
+#include "../us_proc_inst.h"
#include "../storage.h"
@@ -37,7 +38,7 @@
static void print_proc_probes(const struct sspt_procs *procs);
-struct sspt_procs *get_file_probes(const inst_us_proc_t *task_inst_info)
+static inline struct sspt_procs *get_file_probes(const inst_us_proc_t *task_inst_info)
{
struct sspt_procs *procs = sspt_procs_create(task_inst_info->m_f_dentry, 0);
@@ -52,9 +53,9 @@ struct sspt_procs *get_file_probes(const inst_us_proc_t *task_inst_info)
int k, j;
us_proc_lib_t *p_libs = &task_inst_info->p_libs[i];
struct dentry *dentry = p_libs->m_f_dentry;
- const char *path = p_libs->path;
+ char *path = p_libs->path;
char *name = strrchr(path, '/');
- name = name ? ++name : path;
+ name = name ? name + 1 : path;
for (k = 0; k < p_libs->ips_count; ++k) {
struct ip_data pd;
@@ -72,7 +73,7 @@ struct sspt_procs *get_file_probes(const inst_us_proc_t *task_inst_info)
pd.offset = ip->offset;
pd.got_addr = got_addr;
pd.pre_handler = ip->jprobe.pre_entry;
- pd.jp_handler = ip->jprobe.entry;
+ pd.jp_handler = (unsigned long) ip->jprobe.entry;
pd.rp_handler = ip->retprobe.handler;
sspt_procs_add_ip_data(procs, dentry, name, &pd);
@@ -96,15 +97,12 @@ enum US_FLAGS {
US_DISARM
};
-static int register_usprobe(struct task_struct *task, struct us_ip *ip, int atomic);
-static int unregister_usprobe(struct task_struct *task, struct us_ip *ip, int atomic, int no_rp2);
-
-static int register_usprobe_my(struct task_struct *task, struct us_ip *ip)
+static inline int register_usprobe_my(struct task_struct *task, struct us_ip *ip)
{
return register_usprobe(task, ip, 1);
}
-static int unregister_usprobe_my(struct task_struct *task, struct us_ip *ip, enum US_FLAGS flag)
+static inline int unregister_usprobe_my(struct task_struct *task, struct us_ip *ip, enum US_FLAGS flag)
{
int err = 0;