Linux-2.6.12-rc2
[linux-2.6/kvm.git] / include / asm-x86_64 / current.h
blob7db560ee6f7030fbf1d33ae823b0282ebdc2877b
1 #ifndef _X86_64_CURRENT_H
2 #define _X86_64_CURRENT_H
4 #if !defined(__ASSEMBLY__)
5 struct task_struct;
7 #include <asm/pda.h>
9 static inline struct task_struct *get_current(void)
11 struct task_struct *t = read_pda(pcurrent);
12 return t;
15 #define current get_current()
17 #else
19 #ifndef ASM_OFFSET_H
20 #include <asm/offset.h>
21 #endif
23 #define GET_CURRENT(reg) movq %gs:(pda_pcurrent),reg
25 #endif
27 #endif /* !(_X86_64_CURRENT_H) */