Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v6.19-rc8 35 lines 927 B view raw
1/* SPDX-License-Identifier: GPL-2.0-only */ 2#ifndef __ASM_LOONGARCH_UPROBES_H 3#define __ASM_LOONGARCH_UPROBES_H 4 5#include <asm/inst.h> 6 7typedef u32 uprobe_opcode_t; 8 9#define MAX_UINSN_BYTES 8 10#define UPROBE_XOL_SLOT_BYTES MAX_UINSN_BYTES 11 12#define UPROBE_SWBP_INSN __emit_break(BRK_UPROBE_BP) 13#define UPROBE_SWBP_INSN_SIZE LOONGARCH_INSN_SIZE 14 15#define UPROBE_XOLBP_INSN __emit_break(BRK_UPROBE_XOLBP) 16 17struct arch_uprobe { 18 u32 insn[2]; 19 u32 ixol[2]; 20 bool simulate; 21}; 22 23struct arch_uprobe_task { 24 unsigned long saved_trap_nr; 25}; 26 27#ifdef CONFIG_UPROBES 28bool uprobe_breakpoint_handler(struct pt_regs *regs); 29bool uprobe_singlestep_handler(struct pt_regs *regs); 30#else /* !CONFIG_UPROBES */ 31static inline bool uprobe_breakpoint_handler(struct pt_regs *regs) { return false; } 32static inline bool uprobe_singlestep_handler(struct pt_regs *regs) { return false; } 33#endif /* CONFIG_UPROBES */ 34 35#endif /* __ASM_LOONGARCH_UPROBES_H */