Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Typedefs | Functions | Variables
kprobes.h File Reference
#include <linux/types.h>
#include <linux/ptrace.h>
#include <linux/percpu.h>
#include <asm/insn.h>

Go to the source code of this file.

Data Structures

struct  arch_specific_insn
 
struct  arch_optimized_insn
 
struct  prev_kprobe
 
struct  kprobe_ctlblk
 

Macros

#define __ARCH_WANT_KPROBES_INSN_SLOT
 
#define ARCH_SUPPORTS_KPROBES_ON_FTRACE
 
#define BREAKPOINT_INSTRUCTION   0xcc
 
#define RELATIVEJUMP_OPCODE   0xe9
 
#define RELATIVEJUMP_SIZE   5
 
#define RELATIVECALL_OPCODE   0xe8
 
#define RELATIVE_ADDR_SIZE   4
 
#define MAX_STACK_SIZE   64
 
#define MIN_STACK_SIZE(ADDR)
 
#define flush_insn_slot(p)   do { } while (0)
 
#define MAX_OPTIMIZED_LENGTH   (MAX_INSN_SIZE + RELATIVE_ADDR_SIZE)
 
#define MAX_OPTINSN_SIZE
 

Typedefs

typedef u8 kprobe_opcode_t
 

Functions

void arch_remove_kprobe (struct kprobe *p)
 
void kretprobe_trampoline (void)
 
int kprobe_fault_handler (struct pt_regs *regs, int trapnr)
 
int kprobe_exceptions_notify (struct notifier_block *self, unsigned long val, void *data)
 

Variables

kprobe_opcode_t optprobe_template_entry
 
kprobe_opcode_t optprobe_template_val
 
kprobe_opcode_t optprobe_template_call
 
kprobe_opcode_t optprobe_template_end
 
const int kretprobe_blacklist_size
 

Macro Definition Documentation

#define __ARCH_WANT_KPROBES_INSN_SLOT

Definition at line 29 of file kprobes.h.

#define ARCH_SUPPORTS_KPROBES_ON_FTRACE

Definition at line 30 of file kprobes.h.

#define BREAKPOINT_INSTRUCTION   0xcc

Definition at line 36 of file kprobes.h.

#define flush_insn_slot (   p)    do { } while (0)

Definition at line 49 of file kprobes.h.

#define MAX_OPTIMIZED_LENGTH   (MAX_INSN_SIZE + RELATIVE_ADDR_SIZE)

Definition at line 56 of file kprobes.h.

#define MAX_OPTINSN_SIZE
Value:
(((unsigned long)&optprobe_template_end - \
(unsigned long)&optprobe_template_entry) + \

Definition at line 57 of file kprobes.h.

#define MAX_STACK_SIZE   64

Definition at line 41 of file kprobes.h.

#define MIN_STACK_SIZE (   ADDR)
Value:
(((MAX_STACK_SIZE) < (((unsigned long)current_thread_info()) + \
THREAD_SIZE - (unsigned long)(ADDR))) \
: (((unsigned long)current_thread_info()) + \
THREAD_SIZE - (unsigned long)(ADDR)))

Definition at line 42 of file kprobes.h.

#define RELATIVE_ADDR_SIZE   4

Definition at line 40 of file kprobes.h.

#define RELATIVECALL_OPCODE   0xe8

Definition at line 39 of file kprobes.h.

#define RELATIVEJUMP_OPCODE   0xe9

Definition at line 37 of file kprobes.h.

#define RELATIVEJUMP_SIZE   5

Definition at line 38 of file kprobes.h.

Typedef Documentation

Definition at line 33 of file kprobes.h.

Function Documentation

void arch_remove_kprobe ( struct kprobe p)

Definition at line 158 of file kprobes.c.

int kprobe_exceptions_notify ( struct notifier_block self,
unsigned long  val,
void data 
)

Definition at line 359 of file kprobes.c.

int kprobe_fault_handler ( struct pt_regs regs,
int  trapnr 
)

Definition at line 186 of file kprobes.c.

void kretprobe_trampoline ( void  )

Definition at line 377 of file kprobes.c.

Variable Documentation

const int kretprobe_blacklist_size

Definition at line 28 of file kprobes.c.

kprobe_opcode_t optprobe_template_call
kprobe_opcode_t optprobe_template_end
kprobe_opcode_t optprobe_template_entry
kprobe_opcode_t optprobe_template_val