mirror of
https://git.FreeBSD.org/src.git
synced 2025-01-19 15:33:56 +00:00
Effectively remove the previous commit to fix threads forking. The
change was a false-start, and needs more work.
This commit is contained in:
parent
c4c1e98233
commit
c04b956c6f
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=24830
@ -23,7 +23,7 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: kern_exec.c,v 1.57 1997/04/04 09:06:20 davidg Exp $
|
||||
* $Id: kern_exec.c,v 1.58 1997/04/11 23:37:23 dyson Exp $
|
||||
*/
|
||||
|
||||
#include <sys/param.h>
|
||||
@ -378,22 +378,26 @@ exec_new_vmspace(imgp)
|
||||
* otherwise, create a new VM space so that other threads are
|
||||
* not disrupted
|
||||
*/
|
||||
#if 0
|
||||
if (vmspace->vm_refcnt == 1) {
|
||||
#endif
|
||||
if (vmspace->vm_shm)
|
||||
shmexit(imgp->proc);
|
||||
pmap_remove_pages(&vmspace->vm_pmap, 0, USRSTACK);
|
||||
vm_map_remove(map, 0, USRSTACK);
|
||||
#if 0
|
||||
} else {
|
||||
struct vmspace *oldvmspace = vmspace;
|
||||
|
||||
--vmspace->vm_refcnt;
|
||||
vmspace = vmspace_alloc(map->min_offset, map->max_offset,
|
||||
map->entries_pageable);
|
||||
bcopy(&oldvmspace->vm_startcopy, &vmspace->vm_startcopy,
|
||||
(caddr_t) (vmspace+ 1) - (caddr_t) &vmspace->vm_startcopy);
|
||||
(caddr_t) (vmspace + 1) - (caddr_t) &vmspace->vm_startcopy);
|
||||
imgp->proc->p_vmspace = vmspace;
|
||||
map = &vmspace->vm_map;
|
||||
--oldvmspace->vm_refcnt;
|
||||
}
|
||||
#endif
|
||||
|
||||
/* Allocate a new stack */
|
||||
error = vm_map_find(map, NULL, 0, (vm_offset_t *)&stack_addr,
|
||||
|
Loading…
Reference in New Issue
Block a user