9b307576f3
Because of circular inclusion of asm/hw_breakpoint.h, we need to move definition of asm/reg.h outside of inst.h so that asm/hw_breakpoint.h gets it without including asm/inst.h Also remove asm/inst.h from asm/uprobes.h as it's not needed anymore. Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/4b79f1491118af96b1ac0735e74aeca02ea4c04e.1638208156.git.christophe.leroy@csgroup.eu
36 lines
779 B
C
36 lines
779 B
C
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
|
#ifndef _ASM_UPROBES_H
|
|
#define _ASM_UPROBES_H
|
|
/*
|
|
* User-space Probes (UProbes) for powerpc
|
|
*
|
|
* Copyright IBM Corporation, 2007-2012
|
|
*
|
|
* Adapted from the x86 port by Ananth N Mavinakayanahalli <ananth@in.ibm.com>
|
|
*/
|
|
|
|
#include <linux/notifier.h>
|
|
#include <asm/probes.h>
|
|
|
|
typedef ppc_opcode_t uprobe_opcode_t;
|
|
|
|
#define MAX_UINSN_BYTES 8
|
|
#define UPROBE_XOL_SLOT_BYTES (MAX_UINSN_BYTES)
|
|
|
|
/* The following alias is needed for reference from arch-agnostic code */
|
|
#define UPROBE_SWBP_INSN BREAKPOINT_INSTRUCTION
|
|
#define UPROBE_SWBP_INSN_SIZE 4 /* swbp insn size in bytes */
|
|
|
|
struct arch_uprobe {
|
|
union {
|
|
u32 insn[2];
|
|
u32 ixol[2];
|
|
};
|
|
};
|
|
|
|
struct arch_uprobe_task {
|
|
unsigned long saved_trap_nr;
|
|
};
|
|
|
|
#endif /* _ASM_UPROBES_H */
|