mm: remove arch_bprm_mm_init() hook
From: Dave Hansen <dave.hansen@linux.intel.com> MPX is being removed from the kernel due to a lack of support in the toolchain going forward (gcc). arch_bprm_mm_init() is used at execve() time. The only non-stub implementation is on x86 for MPX. Remove the hook entirely from all architectures and generic code. Cc: Peter Zijlstra (Intel) <peterz@infradead.org> Cc: Andy Lutomirski <luto@kernel.org> Cc: x86@kernel.org Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: linux-arch@vger.kernel.org Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Paul Mackerras <paulus@samba.org> Cc: Michael Ellerman <mpe@ellerman.id.au> Cc: Jeff Dike <jdike@addtoit.com> Cc: Richard Weinberger <richard@nod.at> Cc: Anton Ivanov <anton.ivanov@cambridgegreys.com> Cc: Guan Xuetao <gxt@pku.edu.cn> Cc: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
This commit is contained in:
@ -238,11 +238,6 @@ static inline void arch_unmap(struct mm_struct *mm,
|
|||||||
mm->context.vdso_base = 0;
|
mm->context.vdso_base = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void arch_bprm_mm_init(struct mm_struct *mm,
|
|
||||||
struct vm_area_struct *vma)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifdef CONFIG_PPC_MEM_KEYS
|
#ifdef CONFIG_PPC_MEM_KEYS
|
||||||
bool arch_vma_access_permitted(struct vm_area_struct *vma, bool write,
|
bool arch_vma_access_permitted(struct vm_area_struct *vma, bool write,
|
||||||
bool execute, bool foreign);
|
bool execute, bool foreign);
|
||||||
|
@ -25,11 +25,6 @@ static inline void arch_unmap(struct mm_struct *mm,
|
|||||||
unsigned long start, unsigned long end)
|
unsigned long start, unsigned long end)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
static inline void arch_bprm_mm_init(struct mm_struct *mm,
|
|
||||||
struct vm_area_struct *vma)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline bool arch_vma_access_permitted(struct vm_area_struct *vma,
|
static inline bool arch_vma_access_permitted(struct vm_area_struct *vma,
|
||||||
bool write, bool execute, bool foreign)
|
bool write, bool execute, bool foreign)
|
||||||
{
|
{
|
||||||
|
@ -89,11 +89,6 @@ static inline void arch_unmap(struct mm_struct *mm,
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void arch_bprm_mm_init(struct mm_struct *mm,
|
|
||||||
struct vm_area_struct *vma)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline bool arch_vma_access_permitted(struct vm_area_struct *vma,
|
static inline bool arch_vma_access_permitted(struct vm_area_struct *vma,
|
||||||
bool write, bool execute, bool foreign)
|
bool write, bool execute, bool foreign)
|
||||||
{
|
{
|
||||||
|
@ -272,12 +272,6 @@ static inline bool is_64bit_mm(struct mm_struct *mm)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static inline void arch_bprm_mm_init(struct mm_struct *mm,
|
|
||||||
struct vm_area_struct *vma)
|
|
||||||
{
|
|
||||||
mpx_mm_init(mm);
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline void arch_unmap(struct mm_struct *mm, unsigned long start,
|
static inline void arch_unmap(struct mm_struct *mm, unsigned long start,
|
||||||
unsigned long end)
|
unsigned long end)
|
||||||
{
|
{
|
||||||
|
@ -273,7 +273,6 @@ static int __bprm_mm_init(struct linux_binprm *bprm)
|
|||||||
goto err;
|
goto err;
|
||||||
|
|
||||||
mm->stack_vm = mm->total_vm = 1;
|
mm->stack_vm = mm->total_vm = 1;
|
||||||
arch_bprm_mm_init(mm, vma);
|
|
||||||
up_write(&mm->mmap_sem);
|
up_write(&mm->mmap_sem);
|
||||||
bprm->p = vma->vm_end - sizeof(void *);
|
bprm->p = vma->vm_end - sizeof(void *);
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -22,11 +22,6 @@ static inline void arch_unmap(struct mm_struct *mm,
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void arch_bprm_mm_init(struct mm_struct *mm,
|
|
||||||
struct vm_area_struct *vma)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline bool arch_vma_access_permitted(struct vm_area_struct *vma,
|
static inline bool arch_vma_access_permitted(struct vm_area_struct *vma,
|
||||||
bool write, bool execute, bool foreign)
|
bool write, bool execute, bool foreign)
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user