summaryrefslogtreecommitdiff
path: root/kprobe
diff options
context:
space:
mode:
authorVyacheslav Cherkashin <v.cherkashin@samsung.com>2013-03-29 17:04:12 +0400
committerVyacheslav Cherkashin <v.cherkashin@samsung.com>2013-03-29 18:04:58 +0400
commit8fcf7e964b0a97ab651e6337abc6ef45ec2363f7 (patch)
treecb95ccfb2963be562d0b45aee1c6d33a6384c010 /kprobe
parent2c1315497801fa83c8e0ba71fb2516f80ae4bbae (diff)
downloadswap-modules-8fcf7e964b0a97ab651e6337abc6ef45ec2363f7.tar.gz
swap-modules-8fcf7e964b0a97ab651e6337abc6ef45ec2363f7.tar.bz2
swap-modules-8fcf7e964b0a97ab651e6337abc6ef45ec2363f7.zip
[REFACTOR] move trampoline for thumb in uprobe module
from src/modules/kprobe/arch/asm-arm/dbi_kprobes_thumb.* to src/modules/uprobe/arch/asm-arm/trampoline_thumb.*
Diffstat (limited to 'kprobe')
-rw-r--r--kprobe/Kbuild2
-rw-r--r--kprobe/arch/asm-arm/dbi_kprobes.c1
-rw-r--r--kprobe/arch/asm-arm/dbi_kprobes_thumb.S46
-rw-r--r--kprobe/arch/asm-arm/dbi_kprobes_thumb.h10
4 files changed, 1 insertions, 58 deletions
diff --git a/kprobe/Kbuild b/kprobe/Kbuild
index 964c88bd..ad90b7cb 100644
--- a/kprobe/Kbuild
+++ b/kprobe/Kbuild
@@ -2,4 +2,4 @@ EXTRA_CFLAGS := $(extra_cflags)
obj-m := swap_kprobe.o
swap_kprobe-y := dbi_kprobes_deps.o dbi_insn_slots.o arch/asm/dbi_kprobes.o arch/dbi_kprobes.o dbi_kprobes.o
-swap_kprobe-$(CONFIG_ARM) += arch/asm/dbi_kprobes_arm.o arch/asm/dbi_kprobes_thumb.o
+swap_kprobe-$(CONFIG_ARM) += arch/asm/dbi_kprobes_arm.o
diff --git a/kprobe/arch/asm-arm/dbi_kprobes.c b/kprobe/arch/asm-arm/dbi_kprobes.c
index 11a809f3..787ca7c4 100644
--- a/kprobe/arch/asm-arm/dbi_kprobes.c
+++ b/kprobe/arch/asm-arm/dbi_kprobes.c
@@ -34,7 +34,6 @@
#include "dbi_kprobes.h"
#include "dbi_kprobes_arm.h"
-#include "dbi_kprobes_thumb.h"
#include "../dbi_kprobes.h"
#include "../../dbi_kprobes.h"
diff --git a/kprobe/arch/asm-arm/dbi_kprobes_thumb.S b/kprobe/arch/asm-arm/dbi_kprobes_thumb.S
deleted file mode 100644
index 94ba3ddd..00000000
--- a/kprobe/arch/asm-arm/dbi_kprobes_thumb.S
+++ /dev/null
@@ -1,46 +0,0 @@
- .thumb
-
- .global gen_insn_execbuf_thumb
-gen_insn_execbuf_thumb:
- nop
- nop
- nop // original instruction
- nop // original instruction
- nop
- nop
- nop
- sub sp, sp, #8
- str r0, [sp, #0]
- ldr r0, [pc, #12]
- str r0, [sp, #4]
- nop
- pop {r0, pc} // ssbreak
- nop // retbreak
- nop
- nop
- nop // stored PC-4(next insn addr) hi
- nop // stored PC-4(next insn addr) lo
-
- nop
-
- .global pc_dep_insn_execbuf_thumb
- .align 4
-pc_dep_insn_execbuf_thumb:
- push {r6, r7}
- ldr r6, i1
- mov r7, sp
- mov sp, r6
- nop // PC -> SP
- nop // PC -> SP
- mov sp, r7
- pop {r6, r7}
- push {r0, r1}
- ldr r0, i2
- nop
- str r0, [sp, #4]
- pop {r0, pc} // ssbreak
- nop // retbreak
-i1: nop // stored PC hi
- nop // stored PC lo
-i2: nop // stored PC-4(next insn addr) hi
- nop // stored PC-4(next insn addr) lo
diff --git a/kprobe/arch/asm-arm/dbi_kprobes_thumb.h b/kprobe/arch/asm-arm/dbi_kprobes_thumb.h
deleted file mode 100644
index da737dae..00000000
--- a/kprobe/arch/asm-arm/dbi_kprobes_thumb.h
+++ /dev/null
@@ -1,10 +0,0 @@
-#ifndef _DBI_KPROBES_THUMB_H
-#define _DBI_KPROBES_THUMB_H
-
-void gen_insn_execbuf_thumb(void);
-EXPORT_SYMBOL_GPL(gen_insn_execbuf_thumb);
-
-void pc_dep_insn_execbuf_thumb(void);
-EXPORT_SYMBOL_GPL(pc_dep_insn_execbuf_thumb);
-
-#endif /* _DBI_KPROBES_THUMB_H */