mmu_context.h 797 字节
Newer Older
V
Vegard Nossum 已提交
1 2
#ifndef ASM_X86__MMU_CONTEXT_H
#define ASM_X86__MMU_CONTEXT_H
J
Jeremy Fitzhardinge 已提交
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

#include <asm/desc.h>
#include <asm/atomic.h>
#include <asm/pgalloc.h>
#include <asm/tlbflush.h>
#include <asm/paravirt.h>
#ifndef CONFIG_PARAVIRT
#include <asm-generic/mm_hooks.h>

static inline void paravirt_activate_mm(struct mm_struct *prev,
					struct mm_struct *next)
{
}
#endif	/* !CONFIG_PARAVIRT */

/*
 * Used for LDT copy/destruction.
 */
int init_new_context(struct task_struct *tsk, struct mm_struct *mm);
void destroy_context(struct mm_struct *mm);

24 25 26 27 28
#ifdef CONFIG_X86_32
# include "mmu_context_32.h"
#else
# include "mmu_context_64.h"
#endif
J
Jeremy Fitzhardinge 已提交
29 30 31 32 33 34 35 36

#define activate_mm(prev, next)			\
do {						\
	paravirt_activate_mm((prev), (next));	\
	switch_mm((prev), (next), NULL);	\
} while (0);


V
Vegard Nossum 已提交
37
#endif /* ASM_X86__MMU_CONTEXT_H */