Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
processor.h File Reference
#include <linux/thread_info.h>
#include <asm/segment.h>
#include <asm/fpu.h>
#include <asm/ptrace.h>

Go to the source code of this file.

Data Structures

struct  thread_struct
 

Macros

#define current_text_addr()   ({ __label__ _l; _l: &&_l;})
 
#define TASK_SIZE   (0xFFFFFFFFUL)
 
#define TASK_UNMAPPED_BASE   0
 
#define INIT_THREAD
 
#define setframeformat(_regs)   do { } while (0)
 
#define start_thread(_regs, _pc, _usp)
 
#define KSTK_EIP(tsk)
 
#define KSTK_ESP(tsk)   ((tsk) == current ? rdusp() : (tsk)->thread.usp)
 
#define task_pt_regs(tsk)   ((struct pt_regs *) ((tsk)->thread.esp0))
 
#define cpu_relax()   barrier()
 

Functions

unsigned long thread_saved_pc (struct task_struct *tsk)
 
unsigned long get_wchan (struct task_struct *p)
 

Macro Definition Documentation

#define cpu_relax (   void)    barrier()

Definition at line 179 of file processor.h.

#define current_text_addr (   void)    ({ __label__ _l; _l: &&_l;})

Definition at line 14 of file processor.h.

#define INIT_THREAD
Value:
{ \
.ksp = sizeof(init_stack) + (unsigned long) init_stack, \
.sr = PS_S, \
.fs = __KERNEL_DS, \
}

Definition at line 97 of file processor.h.

#define KSTK_EIP (   tsk)
Value:
({ \
unsigned long eip = 0; \
if ((tsk)->thread.esp0 > PAGE_SIZE && \
(virt_addr_valid((tsk)->thread.esp0))) \
eip = ((struct pt_regs *) (tsk)->thread.esp0)->pc; \
eip; })

Definition at line 168 of file processor.h.

#define KSTK_ESP (   tsk)    ((tsk) == current ? rdusp() : (tsk)->thread.usp)

Definition at line 175 of file processor.h.

#define setframeformat (   _regs)    do { } while (0)

Definition at line 110 of file processor.h.

#define start_thread (   _regs,
  _pc,
  _usp 
)
Value:
do { \
(_regs)->pc = (_pc); \
((struct switch_stack *)(_regs))[-1].a6 = 0; \
setframeformat(_regs); \
if (current->mm) \
(_regs)->d5 = current->mm->start_data; \
(_regs)->sr &= ~0x2000; \
wrusp(_usp); \
} while(0)

Definition at line 130 of file processor.h.

#define task_pt_regs (   tsk)    ((struct pt_regs *) ((tsk)->thread.esp0))

Definition at line 177 of file processor.h.

#define TASK_SIZE   (0xFFFFFFFFUL)

Definition at line 59 of file processor.h.

#define TASK_UNMAPPED_BASE   0

Definition at line 80 of file processor.h.

Function Documentation

unsigned long get_wchan ( struct task_struct p)

Definition at line 419 of file process.c.

unsigned long thread_saved_pc ( struct task_struct tsk)

Definition at line 404 of file process.c.