diff options
author | kenistoj <kenistoj> | 2007-10-16 23:40:49 +0000 |
---|---|---|
committer | kenistoj <kenistoj> | 2007-10-16 23:40:49 +0000 |
commit | de14b6dab7064616fe2828c7ead9cca6a48463ce (patch) | |
tree | 6b0afe6dede588b4ddd32e05c973ed9a5f07a6d5 /runtime/uprobes/uprobes_s390.h | |
parent | e3632368cea4bb761f90d001744f03b6b81f339e (diff) | |
download | systemtap-steved-de14b6dab7064616fe2828c7ead9cca6a48463ce.tar.gz systemtap-steved-de14b6dab7064616fe2828c7ead9cca6a48463ce.tar.xz systemtap-steved-de14b6dab7064616fe2828c7ead9cca6a48463ce.zip |
* runtime/uprobes/uprobes.[ch], uprobes_i386.[ch],
uprobes_ppc64.h, uprobes_s390.h: Adjusted SLOT_IP and
arch_validate_probed_insn to accept task pointer (needed by
x86_64); added uprobe_probept_arch_info and uprobe_task_arch_info
(ditto).
* runtime/uprobes/uprobes_i386.c: Fixed a couple of glitches
discovered when porting to x86_64
Diffstat (limited to 'runtime/uprobes/uprobes_s390.h')
-rw-r--r-- | runtime/uprobes/uprobes_s390.h | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/runtime/uprobes/uprobes_s390.h b/runtime/uprobes/uprobes_s390.h index 4f3a8187..5c711275 100644 --- a/runtime/uprobes/uprobes_s390.h +++ b/runtime/uprobes/uprobes_s390.h @@ -40,9 +40,9 @@ typedef u16 uprobe_opcode_t; #define SSTEP_SIGNAL SIGTRAP #ifdef CONFIG_COMPAT -#define SLOT_IP (test_tsk_thread_flag(current, TIF_31BIT) ? 0x04 : 0x08) +#define SLOT_IP(tsk) (test_tsk_thread_flag(tsk, TIF_31BIT) ? 0x04 : 0x08) #else -#define SLOT_IP 0x08 +#define SLOT_IP(tsk) 0x08 #endif #define FIXUP_PSW_NORMAL 0x08 @@ -50,12 +50,16 @@ typedef u16 uprobe_opcode_t; #define FIXUP_RETURN_REGISTER 0x02 #define FIXUP_NOT_REQUIRED 0x01 +struct uprobe_probept_arch_info {}; +struct uprobe_task_arch_info {}; + /* Architecture specific switch for where the IP points after a bp hit */ #define ARCH_BP_INST_PTR(inst_ptr) (inst_ptr - BP_INSN_SIZE) struct uprobe_probept; struct uprobe_task; -static int arch_validate_probed_insn(struct uprobe_probept *ppt); +static int arch_validate_probed_insn(struct uprobe_probept *ppt, + struct task_struct *tsk); /* * On s390, a trap leaves the instruction pointer pointing past the |