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.9-rc5 52 lines 1.1 kB view raw
1/* SPDX-License-Identifier: GPL-2.0-only */ 2/* 3 * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com) 4 */ 5 6#ifndef _ARC_KPROBES_H 7#define _ARC_KPROBES_H 8 9#include <asm-generic/kprobes.h> 10 11#ifdef CONFIG_KPROBES 12 13typedef u16 kprobe_opcode_t; 14 15#define UNIMP_S_INSTRUCTION 0x79e0 16#define TRAP_S_2_INSTRUCTION 0x785e 17 18#define MAX_INSN_SIZE 8 19#define MAX_STACK_SIZE 64 20 21struct arch_specific_insn { 22 int is_short; 23 kprobe_opcode_t *t1_addr, *t2_addr; 24 kprobe_opcode_t t1_opcode, t2_opcode; 25}; 26 27#define flush_insn_slot(p) do { } while (0) 28 29#define kretprobe_blacklist_size 0 30 31struct kprobe; 32 33void arch_remove_kprobe(struct kprobe *p); 34 35struct prev_kprobe { 36 struct kprobe *kp; 37 unsigned long status; 38}; 39 40struct kprobe_ctlblk { 41 unsigned int kprobe_status; 42 struct prev_kprobe prev_kprobe; 43}; 44 45int kprobe_fault_handler(struct pt_regs *regs, unsigned long cause); 46void __kretprobe_trampoline(void); 47void trap_is_kprobe(unsigned long address, struct pt_regs *regs); 48#else 49#define trap_is_kprobe(address, regs) 50#endif /* CONFIG_KPROBES */ 51 52#endif /* _ARC_KPROBES_H */