Date: Fri, 21 Jul 2017 06:52:40 +0000 (UTC) From: Konstantin Belousov <kib@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r321323 - stable/11/sys/vm Message-ID: <201707210652.v6L6qefm072367@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: kib Date: Fri Jul 21 06:52:40 2017 New Revision: 321323 URL: https://svnweb.freebsd.org/changeset/base/321323 Log: MFC r321173: Convert assertion that only vmspace owner grows the stack, into a check blocking grow from other processes accesses. MFC r321230: Disable stack growth when accessed by AIO daemons. Modified: stable/11/sys/vm/vm_map.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/vm/vm_map.c ============================================================================== --- stable/11/sys/vm/vm_map.c Fri Jul 21 06:48:47 2017 (r321322) +++ stable/11/sys/vm/vm_map.c Fri Jul 21 06:52:40 2017 (r321323) @@ -3700,7 +3700,15 @@ vm_map_growstack(vm_map_t map, vm_offset_t addr, vm_ma p = curproc; vm = p->p_vmspace; - MPASS(map == &p->p_vmspace->vm_map); + + /* + * Disallow stack growth when the access is performed by a + * debugger or AIO daemon. The reason is that the wrong + * resource limits are applied. + */ + if (map != &p->p_vmspace->vm_map || p->p_textvp == NULL) + return (KERN_FAILURE); + MPASS(!map->system_map); guard = stack_guard_page * PAGE_SIZE;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201707210652.v6L6qefm072367>