1#ifndef _ASM_X86_MMU_H
2#define _ASM_X86_MMU_H
3
4#include <linux/spinlock.h>
5#include <linux/mutex.h>
6
7/*
8 * The x86 doesn't have a mmu context, but
9 * we put the segment information here.
10 */
11typedef struct {
12	struct ldt_struct *ldt;
13
14#ifdef CONFIG_X86_64
15	/* True if mm supports a task running in 32 bit compatibility mode. */
16	unsigned short ia32_compat;
17#endif
18
19	struct mutex lock;
20	void __user *vdso;
21
22	atomic_t perf_rdpmc_allowed;	/* nonzero if rdpmc is allowed */
23} mm_context_t;
24
25#ifdef CONFIG_SMP
26void leave_mm(int cpu);
27#else
28static inline void leave_mm(int cpu)
29{
30}
31#endif
32
33#endif /* _ASM_X86_MMU_H */
34