1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 2 #ifndef _ASM_UPROBES_H 3 #define _ASM_UPROBES_H 4 /* 5 * User-space Probes (UProbes) for powerpc 6 * 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 15 typedef ppc_opcode_t uprobe_opcode_t; 16 17 #define MAX_UINSN_BYTES 8 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 { 26 u32 insn[2]; 27 u32 ixol[2]; 28 }; 29 }; 30 31 struct arch_uprobe_task { 32 unsigned long saved_trap_nr; 33 }; 34 35 #endif /* _ASM_UPROBES_H */ 36