GNU Linux-libre 4.19.264-gnu1
[releases.git] / arch / arm64 / include / asm / uprobes.h
1 /*
2  * Copyright (C) 2014-2016 Pratyush Anand <panand@redhat.com>
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License version 2 as
6  * published by the Free Software Foundation.
7  */
8
9 #ifndef _ASM_UPROBES_H
10 #define _ASM_UPROBES_H
11
12 #include <asm/debug-monitors.h>
13 #include <asm/insn.h>
14 #include <asm/probes.h>
15
16 #define MAX_UINSN_BYTES         AARCH64_INSN_SIZE
17
18 #define UPROBE_SWBP_INSN        BRK64_OPCODE_UPROBES
19 #define UPROBE_SWBP_INSN_SIZE   AARCH64_INSN_SIZE
20 #define UPROBE_XOL_SLOT_BYTES   MAX_UINSN_BYTES
21
22 typedef u32 uprobe_opcode_t;
23
24 struct arch_uprobe_task {
25 };
26
27 struct arch_uprobe {
28         union {
29                 u8 insn[MAX_UINSN_BYTES];
30                 u8 ixol[MAX_UINSN_BYTES];
31         };
32         struct arch_probe_insn api;
33         bool simulate;
34 };
35
36 #endif