Deleted Added
full compact
subr_trap.c (798) subr_trap.c (806)
1/*-
2 * Copyright (c) 1990 The Regents of the University of California.
3 * All rights reserved.
4 *
5 * This code is derived from software contributed to Berkeley by
6 * the University of Utah, and William Jolitz.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 20 unchanged lines hidden (view full) ---

29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
30 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
31 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
32 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
33 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
34 * SUCH DAMAGE.
35 *
36 * from: @(#)trap.c 7.4 (Berkeley) 5/13/91
1/*-
2 * Copyright (c) 1990 The Regents of the University of California.
3 * All rights reserved.
4 *
5 * This code is derived from software contributed to Berkeley by
6 * the University of Utah, and William Jolitz.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 20 unchanged lines hidden (view full) ---

29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
30 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
31 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
32 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
33 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
34 * SUCH DAMAGE.
35 *
36 * from: @(#)trap.c 7.4 (Berkeley) 5/13/91
37 * $Id: trap.c,v 1.7 1993/11/13 02:25:08 davidg Exp $
37 * $Id: trap.c,v 1.8 1993/11/25 01:31:01 wollman Exp $
38 */
39
40/*
41 * 386 Trap and System call handleing
42 */
43
44#include "npx.h"
45#include "machine/cpu.h"

--- 271 unchanged lines hidden (view full) ---

317 }
318#endif
319
320 /*
321 * XXX: rude hack to make stack limits "work"
322 */
323 nss = 0;
324 if ((caddr_t)va >= vm->vm_maxsaddr
38 */
39
40/*
41 * 386 Trap and System call handleing
42 */
43
44#include "npx.h"
45#include "machine/cpu.h"

--- 271 unchanged lines hidden (view full) ---

317 }
318#endif
319
320 /*
321 * XXX: rude hack to make stack limits "work"
322 */
323 nss = 0;
324 if ((caddr_t)va >= vm->vm_maxsaddr
325 && (caddr_t)va < (caddr_t)VM_MAXUSER_ADDRESS
325 && (caddr_t)va < (caddr_t)USRSTACK
326 && map != kernel_map
327 && dostacklimits) {
328 nss = clrnd(btoc((unsigned)vm->vm_maxsaddr
329 + MAXSSIZ - (unsigned)va));
330 if (nss > btoc(p->p_rlimit[RLIMIT_STACK].rlim_cur)) {
331/*pg("trap rlimit %d, maxsaddr %x va %x ", nss, vm->vm_maxsaddr, va);*/
332 rv = KERN_FAILURE;
333 goto nogo;

--- 135 unchanged lines hidden (view full) ---

469 if (va >= VM_MAXUSER_ADDRESS)
470 return (1);
471 /*
472 * XXX: rude stack hack adapted from trap().
473 */
474 nss = 0;
475 p = curproc;
476 vm = p->p_vmspace;
326 && map != kernel_map
327 && dostacklimits) {
328 nss = clrnd(btoc((unsigned)vm->vm_maxsaddr
329 + MAXSSIZ - (unsigned)va));
330 if (nss > btoc(p->p_rlimit[RLIMIT_STACK].rlim_cur)) {
331/*pg("trap rlimit %d, maxsaddr %x va %x ", nss, vm->vm_maxsaddr, va);*/
332 rv = KERN_FAILURE;
333 goto nogo;

--- 135 unchanged lines hidden (view full) ---

469 if (va >= VM_MAXUSER_ADDRESS)
470 return (1);
471 /*
472 * XXX: rude stack hack adapted from trap().
473 */
474 nss = 0;
475 p = curproc;
476 vm = p->p_vmspace;
477 if ((caddr_t)va >= vm->vm_maxsaddr && dostacklimits) {
477 if ((caddr_t)va >= vm->vm_maxsaddr
478 && (caddr_t)va < (caddr_t)USRSTACK /* EWS 11/27/93 */
479 && dostacklimits) {
478 nss = clrnd(btoc((unsigned)vm->vm_maxsaddr + MAXSSIZ
479 - (unsigned)va));
480 if (nss > btoc(p->p_rlimit[RLIMIT_STACK].rlim_cur))
481 return (1);
482 }
483
484 if (vm_fault(&vm->vm_map, va, VM_PROT_READ | VM_PROT_WRITE, FALSE)
485 != KERN_SUCCESS)

--- 148 unchanged lines hidden ---
480 nss = clrnd(btoc((unsigned)vm->vm_maxsaddr + MAXSSIZ
481 - (unsigned)va));
482 if (nss > btoc(p->p_rlimit[RLIMIT_STACK].rlim_cur))
483 return (1);
484 }
485
486 if (vm_fault(&vm->vm_map, va, VM_PROT_READ | VM_PROT_WRITE, FALSE)
487 != KERN_SUCCESS)

--- 148 unchanged lines hidden ---