Commit 1be7107fbe18 ("mm: larger stack guard gap, between vmas") fixed up almost all architectures to deal with the stack guard gap, but forgit nds32. Resolve this by properly fixing up the nsd32's version of arch_get_unmapped_area() Reported-by: iLifetruth <yixiaonn@xxxxxxxxx> Cc: Nick Hu <nickhu@xxxxxxxxxxxxx> Cc: Greentime Hu <green.hu@xxxxxxxxx> Cc: Vincent Chen <deanbo422@xxxxxxxxx> Cc: Michal Hocko <mhocko@xxxxxxxx> Cc: Hugh Dickins <hughd@xxxxxxxxxx> Cc: Qiang Liu <cyruscyliu@xxxxxxxxx> Cc: stable <stable@xxxxxxxxxxxxxxx> Fixes: 1be7107fbe18 ("mm: larger stack guard gap, between vmas") Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- arch/nds32/mm/mmap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/nds32/mm/mmap.c b/arch/nds32/mm/mmap.c index c206b31ce07a..1bdf5e7d1b43 100644 --- a/arch/nds32/mm/mmap.c +++ b/arch/nds32/mm/mmap.c @@ -59,7 +59,7 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr, vma = find_vma(mm, addr); if (TASK_SIZE - len >= addr && - (!vma || addr + len <= vma->vm_start)) + (!vma || addr + len <= vm_start_gap(vma))) return addr; } -- 2.32.0