File: /Users/paulross/dev/linux/linux-3.13/arch/x86/include/asm/current.h

Green shading in the line number column means the source is part of the translation unit, red means it is conditionally excluded. Highlighted line numbers link to the translation unit page. Highlighted macros link to the macro page.

       1: #ifndef _ASM_X86_CURRENT_H
       2: #define _ASM_X86_CURRENT_H
       3: 
       4: #include <linux/compiler.h>
       5: #include <asm/percpu.h>
       6: 
       7: #ifndef __ASSEMBLY__
       8: struct task_struct;
       9: 
      10: DECLARE_PER_CPU(struct task_struct *, current_task);
      11: 
      12: static __always_inline struct task_struct *get_current(void)
      13: {
      14:     return this_cpu_read_stable(current_task);
      15: }
      16: 
      17: #define current get_current()
      18: 
      19: #endif /* __ASSEMBLY__ */
      20: 
      21: #endif /* _ASM_X86_CURRENT_H */
      22: