root/arch/parisc/include/asm/kprobes.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


DEFINITIONS

This source file includes following definitions.
  1. kprobe_fault_handler

   1 /* SPDX-License-Identifier: GPL-2.0 */
   2 /*
   3  * arch/parisc/include/asm/kprobes.h
   4  *
   5  * PA-RISC kprobes implementation
   6  *
   7  * Copyright (c) 2019 Sven Schnelle <svens@stackframe.org>
   8  */
   9 
  10 #ifndef _PARISC_KPROBES_H
  11 #define _PARISC_KPROBES_H
  12 
  13 #ifdef CONFIG_KPROBES
  14 
  15 #include <asm-generic/kprobes.h>
  16 #include <linux/types.h>
  17 #include <linux/ptrace.h>
  18 #include <linux/notifier.h>
  19 
  20 #define PARISC_KPROBES_BREAK_INSN       0x3ff801f
  21 #define  __ARCH_WANT_KPROBES_INSN_SLOT
  22 #define MAX_INSN_SIZE 1
  23 
  24 typedef u32 kprobe_opcode_t;
  25 struct kprobe;
  26 
  27 void arch_remove_kprobe(struct kprobe *p);
  28 
  29 #define flush_insn_slot(p) \
  30         flush_icache_range((unsigned long)&(p)->ainsn.insn[0], \
  31                            (unsigned long)&(p)->ainsn.insn[0] + \
  32                            sizeof(kprobe_opcode_t))
  33 
  34 #define kretprobe_blacklist_size    0
  35 
  36 struct arch_specific_insn {
  37         kprobe_opcode_t *insn;
  38 };
  39 
  40 struct prev_kprobe {
  41         struct kprobe *kp;
  42         unsigned long status;
  43 };
  44 
  45 struct kprobe_ctlblk {
  46         unsigned int kprobe_status;
  47         struct prev_kprobe prev_kprobe;
  48         unsigned long iaoq[2];
  49 };
  50 
  51 int __kprobes parisc_kprobe_break_handler(struct pt_regs *regs);
  52 int __kprobes parisc_kprobe_ss_handler(struct pt_regs *regs);
  53 static inline int kprobe_fault_handler(struct pt_regs *regs, int trapnr)
  54 {
  55         return 0;
  56 }
  57 
  58 #endif /* CONFIG_KPROBES */
  59 #endif /* _PARISC_KPROBES_H */

/* [<][>][^][v][top][bottom][index][help] */