rename io_apic_64.c and io_apic_32.c to io_apic.c
[deliverable/linux.git] / include / asm-x86 / current.h
CommitLineData
77ef50a5
VN
1#ifndef ASM_X86__CURRENT_H
2#define ASM_X86__CURRENT_H
f0766440 3
96a388de 4#ifdef CONFIG_X86_32
f0766440
CL
5#include <linux/compiler.h>
6#include <asm/percpu.h>
7
8struct task_struct;
9
10DECLARE_PER_CPU(struct task_struct *, current_task);
11static __always_inline struct task_struct *get_current(void)
12{
13 return x86_read_percpu(current_task);
14}
15
16#else /* X86_32 */
17
18#ifndef __ASSEMBLY__
19#include <asm/pda.h>
20
21struct task_struct;
22
23static __always_inline struct task_struct *get_current(void)
24{
25 return read_pda(pcurrent);
26}
27
28#else /* __ASSEMBLY__ */
29
30#include <asm/asm-offsets.h>
31#define GET_CURRENT(reg) movq %gs:(pda_pcurrent),reg
32
33#endif /* __ASSEMBLY__ */
34
35#endif /* X86_32 */
36
37#define current get_current()
38
77ef50a5 39#endif /* ASM_X86__CURRENT_H */
This page took 0.118692 seconds and 5 git commands to generate.