Commit | Line | Data |
---|---|---|
1a59d1b8 | 1 | /* SPDX-License-Identifier: GPL-2.0-or-later */ |
8b7b80b9 AM |
2 | #ifndef _ASM_UPROBES_H |
3 | #define _ASM_UPROBES_H | |
4 | /* | |
5 | * User-space Probes (UProbes) for powerpc | |
6 | * | |
8b7b80b9 AM |
7 | * Copyright IBM Corporation, 2007-2012 |
8 | * | |
9 | * Adapted from the x86 port by Ananth N Mavinakayanahalli <ananth@in.ibm.com> | |
10 | */ | |
11 | ||
12 | #include <linux/notifier.h> | |
13 | #include <asm/probes.h> | |
14 | ||
7b48377e | 15 | typedef u32 uprobe_opcode_t; |
8b7b80b9 | 16 | |
650b55b7 | 17 | #define MAX_UINSN_BYTES 8 |
8b7b80b9 AM |
18 | #define UPROBE_XOL_SLOT_BYTES (MAX_UINSN_BYTES) |
19 | ||
20 | /* The following alias is needed for reference from arch-agnostic code */ | |
21 | #define UPROBE_SWBP_INSN BREAKPOINT_INSTRUCTION | |
22 | #define UPROBE_SWBP_INSN_SIZE 4 /* swbp insn size in bytes */ | |
23 | ||
24 | struct arch_uprobe { | |
25 | union { | |
69d4d6e5 CL |
26 | u32 insn[2]; |
27 | u32 ixol[2]; | |
8b7b80b9 AM |
28 | }; |
29 | }; | |
30 | ||
31 | struct arch_uprobe_task { | |
32 | unsigned long saved_trap_nr; | |
33 | }; | |
34 | ||
8b7b80b9 | 35 | #endif /* _ASM_UPROBES_H */ |