The commit is pushed to "branch-rh9-5.14.0-427.44.1.vz9.80.x-ovz" and will appear at g...@bitbucket.org:openvz/vzkernel.git after rh9-5.14.0-427.44.1.vz9.80.5 ------> commit 652c3d4968cb88a960e71d346b6fb2dceb450c9c Author: Anthony Yznaga <anthony.yzn...@oracle.com> Date: Tue Dec 1 11:56:10 2020 -0800
oracle/mm: fail exec if stack expansion will overlap another vma setup_arg_pages() expands the initial stack of a process by 128k or to the stack size limit, whichever is smaller. expand_stack() assumes there is no vma between the vma passed to it and the address to expand to, so check before calling it. Orabug: 32387875 Signed-off-by: Anthony Yznaga <anthony.yzn...@oracle.com> Reviewed-by: Liam R. Howlett <liam.howl...@oracle.com> https://virtuozzo.atlassian.net/browse/VSTOR-96305 (cherry picked from Oracle commit f352f9e2082e61443e81b406273548118fa4a348) Signed-off-by: Konstantin Khorenko <khore...@virtuozzo.com> Feature: oracle/mm: MADV_DOEXEC madvise() flag --- fs/exec.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/fs/exec.c b/fs/exec.c index f109cdc4aa37..ac71b84baf72 100644 --- a/fs/exec.c +++ b/fs/exec.c @@ -874,8 +874,7 @@ int setup_arg_pages(struct linux_binprm *bprm, stack_base = vma->vm_start - stack_expand; #endif current->mm->start_stack = bprm->p; - ret = expand_stack(vma, stack_base); - if (ret) + if (vma != find_extend_vma(mm, stack_base)) ret = -EFAULT; out_unlock: _______________________________________________ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel