blob: 4266262101fe48833b941639f7a0d8a0d16dd654 [file] [log] [blame]
b.liue9582032025-04-17 19:18:16 +08001/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * arch/arm64/include/asm/probes.h
4 *
5 * Copyright (C) 2013 Linaro Limited
6 */
7#ifndef _ARM_PROBES_H
8#define _ARM_PROBES_H
9
10typedef u32 probe_opcode_t;
11typedef void (probes_handler_t) (u32 opcode, long addr, struct pt_regs *);
12
13/* architecture specific copy of original instruction */
14struct arch_probe_insn {
15 probe_opcode_t *insn;
16 pstate_check_t *pstate_cc;
17 probes_handler_t *handler;
18 /* restore address after step xol */
19 unsigned long restore;
20};
21#ifdef CONFIG_KPROBES
22typedef u32 kprobe_opcode_t;
23struct arch_specific_insn {
24 struct arch_probe_insn api;
25};
26#endif
27
28#endif