mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-27 12:57:53 +00:00
mmap: remove the IA64-specific vma expansion implementation
With commit cf8e865810
("arch: Remove Itanium (IA-64) architecture"),
there is no need to keep the IA64-specific vma expansion.
Clean up the IA64-specific vma expansion implementation.
Link: https://lkml.kernel.org/r/20231113124728.3974-1-lukas.bulwahn@gmail.com
Signed-off-by: Lukas Bulwahn <lukas.bulwahn@gmail.com>
Acked-by: David Hildenbrand <david@redhat.com>
Cc: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
16f5dfbc85
commit
69e583eaca
1 changed files with 1 additions and 36 deletions
37
mm/mmap.c
37
mm/mmap.c
|
@ -2207,42 +2207,7 @@ struct vm_area_struct *find_extend_vma_locked(struct mm_struct *mm, unsigned lon
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
#if defined(CONFIG_STACK_GROWSUP)
|
||||||
* IA64 has some horrid mapping rules: it can expand both up and down,
|
|
||||||
* but with various special rules.
|
|
||||||
*
|
|
||||||
* We'll get rid of this architecture eventually, so the ugliness is
|
|
||||||
* temporary.
|
|
||||||
*/
|
|
||||||
#ifdef CONFIG_IA64
|
|
||||||
static inline bool vma_expand_ok(struct vm_area_struct *vma, unsigned long addr)
|
|
||||||
{
|
|
||||||
return REGION_NUMBER(addr) == REGION_NUMBER(vma->vm_start) &&
|
|
||||||
REGION_OFFSET(addr) < RGN_MAP_LIMIT;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* IA64 stacks grow down, but there's a special register backing store
|
|
||||||
* that can grow up. Only sequentially, though, so the new address must
|
|
||||||
* match vm_end.
|
|
||||||
*/
|
|
||||||
static inline int vma_expand_up(struct vm_area_struct *vma, unsigned long addr)
|
|
||||||
{
|
|
||||||
if (!vma_expand_ok(vma, addr))
|
|
||||||
return -EFAULT;
|
|
||||||
if (vma->vm_end != (addr & PAGE_MASK))
|
|
||||||
return -EFAULT;
|
|
||||||
return expand_upwards(vma, addr);
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline bool vma_expand_down(struct vm_area_struct *vma, unsigned long addr)
|
|
||||||
{
|
|
||||||
if (!vma_expand_ok(vma, addr))
|
|
||||||
return -EFAULT;
|
|
||||||
return expand_downwards(vma, addr);
|
|
||||||
}
|
|
||||||
|
|
||||||
#elif defined(CONFIG_STACK_GROWSUP)
|
|
||||||
|
|
||||||
#define vma_expand_up(vma,addr) expand_upwards(vma, addr)
|
#define vma_expand_up(vma,addr) expand_upwards(vma, addr)
|
||||||
#define vma_expand_down(vma, addr) (-EFAULT)
|
#define vma_expand_down(vma, addr) (-EFAULT)
|
||||||
|
|
Loading…
Reference in a new issue