linux/arch/arm64/include/asm/kprobes.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0-only */
   2/*
   3 * arch/arm64/include/asm/kprobes.h
   4 *
   5 * Copyright (C) 2013 Linaro Limited
   6 */
   7
   8#ifndef _ARM_KPROBES_H
   9#define _ARM_KPROBES_H
  10
  11#include <asm-generic/kprobes.h>
  12
  13#ifdef CONFIG_KPROBES
  14#include <linux/types.h>
  15#include <linux/ptrace.h>
  16#include <linux/percpu.h>
  17
  18#define __ARCH_WANT_KPROBES_INSN_SLOT
  19#define MAX_INSN_SIZE                   2
  20
  21#define flush_insn_slot(p)              do { } while (0)
  22#define kretprobe_blacklist_size        0
  23
  24#include <asm/probes.h>
  25
  26struct prev_kprobe {
  27        struct kprobe *kp;
  28        unsigned int status;
  29};
  30
  31/* per-cpu kprobe control block */
  32struct kprobe_ctlblk {
  33        unsigned int kprobe_status;
  34        unsigned long saved_irqflag;
  35        struct prev_kprobe prev_kprobe;
  36};
  37
  38void arch_remove_kprobe(struct kprobe *);
  39int kprobe_fault_handler(struct pt_regs *regs, unsigned int fsr);
  40int kprobe_exceptions_notify(struct notifier_block *self,
  41                             unsigned long val, void *data);
  42void kretprobe_trampoline(void);
  43void __kprobes *trampoline_probe_handler(struct pt_regs *regs);
  44
  45#endif /* CONFIG_KPROBES */
  46#endif /* _ARM_KPROBES_H */
  47