#ifndef _X86_64_CURRENT_H #define _X86_64_CURRENT_H #if !defined(__ASSEMBLY__) struct task_struct; #include <asm/pda.h> static inline struct task_struct *get_current(void) { struct task_struct *t = read_pda(pcurrent); return t; } #define current get_current() #else #ifndef ASM_OFFSET_H #include <asm/asm-offsets.h> #endif #define GET_CURRENT(reg) movq %gs:(pda_pcurrent),reg #endif #endif /* !(_X86_64_CURRENT_H) */