Merge tag 'asm-generic-mmu-context-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic
Pull asm-generic mmu-context cleanup from Arnd Bergmann: "This is a cleanup series from Nicholas Piggin, preparing for later changes. The asm/mmu_context.h header are generalized and common code moved to asm-gneneric/mmu_context.h. This saves a bit of code and makes it easier to change in the future" * tag 'asm-generic-mmu-context-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic: (25 commits) h8300: Fix generic mmu_context build m68k: mmu_context: Fix Sun-3 build xtensa: use asm-generic/mmu_context.h for no-op implementations x86: use asm-generic/mmu_context.h for no-op implementations um: use asm-generic/mmu_context.h for no-op implementations sparc: use asm-generic/mmu_context.h for no-op implementations sh: use asm-generic/mmu_context.h for no-op implementations s390: use asm-generic/mmu_context.h for no-op implementations riscv: use asm-generic/mmu_context.h for no-op implementations powerpc: use asm-generic/mmu_context.h for no-op implementations parisc: use asm-generic/mmu_context.h for no-op implementations openrisc: use asm-generic/mmu_context.h for no-op implementations nios2: use asm-generic/mmu_context.h for no-op implementations nds32: use asm-generic/mmu_context.h for no-op implementations mips: use asm-generic/mmu_context.h for no-op implementations microblaze: use asm-generic/mmu_context.h for no-op implementations m68k: use asm-generic/mmu_context.h for no-op implementations ia64: use asm-generic/mmu_context.h for no-op implementations hexagon: use asm-generic/mmu_context.h for no-op implementations csky: use asm-generic/mmu_context.h for no-op implementations ...
This commit is contained in:
@@ -5,10 +5,6 @@
|
||||
#include <asm-generic/mm_hooks.h>
|
||||
#include <linux/mm_types.h>
|
||||
|
||||
static inline void enter_lazy_tlb(struct mm_struct *mm, struct task_struct *tsk)
|
||||
{
|
||||
}
|
||||
|
||||
#ifdef CONFIG_MMU
|
||||
|
||||
#if defined(CONFIG_COLDFIRE)
|
||||
@@ -58,6 +54,7 @@ static inline void get_mmu_context(struct mm_struct *mm)
|
||||
/*
|
||||
* We're finished using the context for an address space.
|
||||
*/
|
||||
#define destroy_context destroy_context
|
||||
static inline void destroy_context(struct mm_struct *mm)
|
||||
{
|
||||
if (mm->context != NO_CONTEXT) {
|
||||
@@ -83,6 +80,7 @@ static inline void switch_mm(struct mm_struct *prev, struct mm_struct *next,
|
||||
* After we have set current->mm to a new value, this activates
|
||||
* the context for the new mm so we see the new mappings.
|
||||
*/
|
||||
#define activate_mm activate_mm
|
||||
static inline void activate_mm(struct mm_struct *active_mm,
|
||||
struct mm_struct *mm)
|
||||
{
|
||||
@@ -90,8 +88,6 @@ static inline void activate_mm(struct mm_struct *active_mm,
|
||||
set_context(mm->context, mm->pgd);
|
||||
}
|
||||
|
||||
#define deactivate_mm(tsk, mm) do { } while (0)
|
||||
|
||||
#define prepare_arch_switch(next) load_ksp_mmu(next)
|
||||
|
||||
static inline void load_ksp_mmu(struct task_struct *task)
|
||||
@@ -176,6 +172,7 @@ extern unsigned long get_free_context(struct mm_struct *mm);
|
||||
extern void clear_context(unsigned long context);
|
||||
|
||||
/* set the context for a new task to unmapped */
|
||||
#define init_new_context init_new_context
|
||||
static inline int init_new_context(struct task_struct *tsk,
|
||||
struct mm_struct *mm)
|
||||
{
|
||||
@@ -192,6 +189,7 @@ static inline void get_mmu_context(struct mm_struct *mm)
|
||||
}
|
||||
|
||||
/* flush context if allocated... */
|
||||
#define destroy_context destroy_context
|
||||
static inline void destroy_context(struct mm_struct *mm)
|
||||
{
|
||||
if (mm->context != SUN3_INVALID_CONTEXT)
|
||||
@@ -210,8 +208,7 @@ static inline void switch_mm(struct mm_struct *prev, struct mm_struct *next,
|
||||
activate_context(tsk->mm);
|
||||
}
|
||||
|
||||
#define deactivate_mm(tsk, mm) do { } while (0)
|
||||
|
||||
#define activate_mm activate_mm
|
||||
static inline void activate_mm(struct mm_struct *prev_mm,
|
||||
struct mm_struct *next_mm)
|
||||
{
|
||||
@@ -224,6 +221,7 @@ static inline void activate_mm(struct mm_struct *prev_mm,
|
||||
#include <asm/page.h>
|
||||
#include <asm/cacheflush.h>
|
||||
|
||||
#define init_new_context init_new_context
|
||||
static inline int init_new_context(struct task_struct *tsk,
|
||||
struct mm_struct *mm)
|
||||
{
|
||||
@@ -231,8 +229,6 @@ static inline int init_new_context(struct task_struct *tsk,
|
||||
return 0;
|
||||
}
|
||||
|
||||
#define destroy_context(mm) do { } while(0)
|
||||
|
||||
static inline void switch_mm_0230(struct mm_struct *mm)
|
||||
{
|
||||
unsigned long crp[2] = {
|
||||
@@ -300,8 +296,7 @@ static inline void switch_mm(struct mm_struct *prev, struct mm_struct *next, str
|
||||
}
|
||||
}
|
||||
|
||||
#define deactivate_mm(tsk,mm) do { } while (0)
|
||||
|
||||
#define activate_mm activate_mm
|
||||
static inline void activate_mm(struct mm_struct *prev_mm,
|
||||
struct mm_struct *next_mm)
|
||||
{
|
||||
@@ -315,24 +310,11 @@ static inline void activate_mm(struct mm_struct *prev_mm,
|
||||
|
||||
#endif
|
||||
|
||||
#include <asm-generic/mmu_context.h>
|
||||
|
||||
#else /* !CONFIG_MMU */
|
||||
|
||||
static inline int init_new_context(struct task_struct *tsk, struct mm_struct *mm)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static inline void switch_mm(struct mm_struct *prev, struct mm_struct *next, struct task_struct *tsk)
|
||||
{
|
||||
}
|
||||
|
||||
#define destroy_context(mm) do { } while (0)
|
||||
#define deactivate_mm(tsk,mm) do { } while (0)
|
||||
|
||||
static inline void activate_mm(struct mm_struct *prev_mm, struct mm_struct *next_mm)
|
||||
{
|
||||
}
|
||||
#include <asm-generic/nommu_context.h>
|
||||
|
||||
#endif /* CONFIG_MMU */
|
||||
#endif /* __M68K_MMU_CONTEXT_H */
|
||||
|
||||
Reference in New Issue
Block a user