Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions
ptrace.h File Reference
#include <asm/asm-offsets.h>
#include <uapi/asm/ptrace.h>
#include <asm/current.h>
#include <asm/page.h>

Go to the source code of this file.

Macros

#define KERNEL_STACK_SIZE_ORDER   0
 
#define IA64_RBS_OFFSET   ((IA64_TASK_SIZE + IA64_THREAD_INFO_SIZE + 31) & ~31)
 
#define IA64_STK_OFFSET   ((1 << KERNEL_STACK_SIZE_ORDER)*PAGE_SIZE)
 
#define KERNEL_STACK_SIZE   IA64_STK_OFFSET
 
#define instruction_pointer(regs)   ((regs)->cr_iip + ia64_psr(regs)->ri)
 
#define profile_pc(regs)
 
#define task_pt_regs(t)   (((struct pt_regs *) ((char *) (t) + IA64_STK_OFFSET)) - 1)
 
#define ia64_psr(regs)   ((struct ia64_psr *) &(regs)->cr_ipsr)
 
#define user_mode(regs)   (((struct ia64_psr *) &(regs)->cr_ipsr)->cpl != 0)
 
#define user_stack(task, regs)   ((long) regs - (long) task == IA64_STK_OFFSET - sizeof(*regs))
 
#define fsys_mode(task, regs)
 
#define force_successful_syscall_return()   (task_pt_regs(current)->r8 = 0)
 
#define arch_ptrace_stop(code, info)   ia64_ptrace_stop()
 
#define arch_ptrace_stop_needed(code, info)   (!test_thread_flag(TIF_RESTORE_RSE))
 
#define arch_ptrace_attach(child)   ptrace_attach_sync_user_rbs(child)
 
#define arch_has_single_step()   (1)
 
#define arch_has_block_step()   (1)
 

Functions

void ia64_do_show_stack (struct unw_frame_info *, void *)
 
unsigned long ia64_get_user_rbs_end (struct task_struct *, struct pt_regs *, unsigned long *)
 
long ia64_peek (struct task_struct *, struct switch_stack *, unsigned long, unsigned long, long *)
 
long ia64_poke (struct task_struct *, struct switch_stack *, unsigned long, unsigned long, long)
 
void ia64_flush_fph (struct task_struct *)
 
void ia64_sync_fph (struct task_struct *)
 
void ia64_sync_krbs (void)
 
long ia64_sync_user_rbs (struct task_struct *, struct switch_stack *, unsigned long, unsigned long)
 
unsigned long ia64_get_scratch_nat_bits (struct pt_regs *pt, unsigned long scratch_unat)
 
unsigned long ia64_put_scratch_nat_bits (struct pt_regs *pt, unsigned long nat)
 
void ia64_increment_ip (struct pt_regs *pt)
 
void ia64_decrement_ip (struct pt_regs *pt)
 
void ia64_ptrace_stop (void)
 
void ptrace_attach_sync_user_rbs (struct task_struct *)
 

Macro Definition Documentation

#define arch_has_block_step ( )    (1)

Definition at line 143 of file ptrace.h.

#define arch_has_single_step ( )    (1)

Definition at line 142 of file ptrace.h.

#define arch_ptrace_attach (   child)    ptrace_attach_sync_user_rbs(child)

Definition at line 139 of file ptrace.h.

#define arch_ptrace_stop (   code,
  info 
)    ia64_ptrace_stop()

Definition at line 133 of file ptrace.h.

#define arch_ptrace_stop_needed (   code,
  info 
)    (!test_thread_flag(TIF_RESTORE_RSE))

Definition at line 135 of file ptrace.h.

#define force_successful_syscall_return ( )    (task_pt_regs(current)->r8 = 0)

Definition at line 106 of file ptrace.h.

#define fsys_mode (   task,
  regs 
)
Value:
({ \
struct pt_regs *_regs = (regs); \
!user_mode(_regs) && user_stack(_task, _regs); \
})

Definition at line 87 of file ptrace.h.

#define ia64_psr (   regs)    ((struct ia64_psr *) &(regs)->cr_ipsr)

Definition at line 84 of file ptrace.h.

#define IA64_RBS_OFFSET   ((IA64_TASK_SIZE + IA64_THREAD_INFO_SIZE + 31) & ~31)

Definition at line 37 of file ptrace.h.

#define IA64_STK_OFFSET   ((1 << KERNEL_STACK_SIZE_ORDER)*PAGE_SIZE)

Definition at line 38 of file ptrace.h.

#define instruction_pointer (   regs)    ((regs)->cr_iip + ia64_psr(regs)->ri)

Definition at line 52 of file ptrace.h.

#define KERNEL_STACK_SIZE   IA64_STK_OFFSET

Definition at line 40 of file ptrace.h.

#define KERNEL_STACK_SIZE_ORDER   0

Definition at line 34 of file ptrace.h.

#define profile_pc (   regs)
Value:
({ \
unsigned long __ip = instruction_pointer(regs); \
(__ip & ~3UL) + ((__ip & 3UL) << 2); \
})

Definition at line 76 of file ptrace.h.

#define task_pt_regs (   t)    (((struct pt_regs *) ((char *) (t) + IA64_STK_OFFSET)) - 1)

Definition at line 83 of file ptrace.h.

#define user_mode (   regs)    (((struct ia64_psr *) &(regs)->cr_ipsr)->cpl != 0)

Definition at line 85 of file ptrace.h.

#define user_stack (   task,
  regs 
)    ((long) regs - (long) task == IA64_STK_OFFSET - sizeof(*regs))

Definition at line 86 of file ptrace.h.

Function Documentation

void ia64_decrement_ip ( struct pt_regs pt)

Definition at line 174 of file ptrace.c.

void ia64_do_show_stack ( struct unw_frame_info ,
void  
)

Definition at line 66 of file process.c.

void ia64_flush_fph ( struct task_struct )
inline

Definition at line 706 of file ptrace.c.

unsigned long ia64_get_scratch_nat_bits ( struct pt_regs pt,
unsigned long  scratch_unat 
)

Definition at line 74 of file ptrace.c.

unsigned long ia64_get_user_rbs_end ( struct task_struct ,
struct pt_regs ,
unsigned long  
)

Definition at line 507 of file ptrace.c.

void ia64_increment_ip ( struct pt_regs pt)

Definition at line 151 of file ptrace.c.

long ia64_peek ( struct task_struct ,
struct switch_stack ,
unsigned  long,
unsigned  long,
long  
)

Definition at line 402 of file ptrace.c.

long ia64_poke ( struct task_struct ,
struct switch_stack ,
unsigned  long,
unsigned  long,
long   
)

Definition at line 464 of file ptrace.c.

void ia64_ptrace_stop ( void  )

Definition at line 600 of file ptrace.c.

unsigned long ia64_put_scratch_nat_bits ( struct pt_regs pt,
unsigned long  nat 
)

Definition at line 113 of file ptrace.c.

void ia64_sync_fph ( struct task_struct )

Definition at line 732 of file ptrace.c.

void ia64_sync_krbs ( void  )

Definition at line 611 of file ptrace.c.

long ia64_sync_user_rbs ( struct task_struct ,
struct switch_stack ,
unsigned  long,
unsigned  long 
)

Definition at line 535 of file ptrace.c.

void ptrace_attach_sync_user_rbs ( struct task_struct )

Definition at line 627 of file ptrace.c.