diff options
| author | Alan Cox <alc@FreeBSD.org> | 1999-06-17 05:49:00 +0000 |
|---|---|---|
| committer | Alan Cox <alc@FreeBSD.org> | 1999-06-17 05:49:00 +0000 |
| commit | 29b45e9e990b18b2d83290702d9cc3e6409e2219 (patch) | |
| tree | 155e9fa0135cae198aba7f31c6e81549e19a8d12 /sys/vm/vm_map.c | |
| parent | 4e1b754078884bbda9df07882143c4593ffc500b (diff) | |
Notes
Diffstat (limited to 'sys/vm/vm_map.c')
| -rw-r--r-- | sys/vm/vm_map.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/sys/vm/vm_map.c b/sys/vm/vm_map.c index f20a29e8966b..dce5cb140e86 100644 --- a/sys/vm/vm_map.c +++ b/sys/vm/vm_map.c @@ -61,7 +61,7 @@ * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. * - * $Id: vm_map.c,v 1.167 1999/06/17 00:27:39 alc Exp $ + * $Id: vm_map.c,v 1.168 1999/06/17 00:39:26 alc Exp $ */ /* @@ -2186,6 +2186,8 @@ vm_map_stack (vm_map_t map, vm_offset_t addrbos, vm_size_t max_ssize, /* Now set the avail_ssize amount */ if (rv == KERN_SUCCESS){ + if (prev_entry != &map->header) + vm_map_clip_end(map, prev_entry, addrbos + max_ssize - init_ssize); new_stack_entry = prev_entry->next; if (new_stack_entry->end != addrbos + max_ssize || new_stack_entry->start != addrbos + max_ssize - init_ssize) @@ -2311,12 +2313,14 @@ Retry: } rv = vm_map_insert(map, NULL, 0, addr, stack_entry->start, - stack_entry->protection, - stack_entry->max_protection, + VM_PROT_ALL, + VM_PROT_ALL, 0); /* Adjust the available stack space by the amount we grew. */ if (rv == KERN_SUCCESS) { + if (prev_entry != &map->header) + vm_map_clip_end(map, prev_entry, addr); new_stack_entry = prev_entry->next; if (new_stack_entry->end != stack_entry->start || new_stack_entry->start != addr) |
