This source file includes following definitions.
- user_disable_single_step
- user_enable_single_step
- trace_trap
1
2
3
4
5
6
7
8
9
10
11
12 #include <linux/linkage.h>
13 #include <linux/sched/signal.h>
14 #include <linux/errno.h>
15 #include <asm/ptrace.h>
16
17 #define CCR_MASK 0x6f
18 #define EXR_TRACE 0x80
19
20
21 void user_disable_single_step(struct task_struct *child)
22 {
23 unsigned char exr;
24
25 exr = h8300_get_reg(child, PT_EXR);
26 exr &= ~EXR_TRACE;
27 h8300_put_reg(child, PT_EXR, exr);
28 }
29
30
31 void user_enable_single_step(struct task_struct *child)
32 {
33 unsigned char exr;
34
35 exr = h8300_get_reg(child, PT_EXR);
36 exr |= EXR_TRACE;
37 h8300_put_reg(child, PT_EXR, exr);
38 }
39
40 asmlinkage void trace_trap(unsigned long bp)
41 {
42 (void)bp;
43 force_sig(SIGTRAP);
44 }