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:
Lukas Bulwahn 2023-11-13 13:47:28 +01:00 committed by Andrew Morton
parent 16f5dfbc85
commit 69e583eaca
1 changed files with 1 additions and 36 deletions

View File

@ -2207,42 +2207,7 @@ struct vm_area_struct *find_extend_vma_locked(struct mm_struct *mm, unsigned lon
}
#endif
/*
* 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)
#if defined(CONFIG_STACK_GROWSUP)
#define vma_expand_up(vma,addr) expand_upwards(vma, addr)
#define vma_expand_down(vma, addr) (-EFAULT)