kern_resource.c (103367) | kern_resource.c (103767) |
---|---|
1/*- 2 * Copyright (c) 1982, 1986, 1991, 1993 3 * The Regents of the University of California. All rights reserved. 4 * (c) UNIX System Laboratories, Inc. 5 * All or some portions of this file are derived from material licensed 6 * to the University of California by American Telephone and Telegraph 7 * Co. or Unix System Laboratories, Inc. and are reproduced herein with 8 * the permission of UNIX System Laboratories, Inc. --- 22 unchanged lines hidden (view full) --- 31 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 32 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 33 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 34 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 35 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 36 * SUCH DAMAGE. 37 * 38 * @(#)kern_resource.c 8.5 (Berkeley) 1/21/94 | 1/*- 2 * Copyright (c) 1982, 1986, 1991, 1993 3 * The Regents of the University of California. All rights reserved. 4 * (c) UNIX System Laboratories, Inc. 5 * All or some portions of this file are derived from material licensed 6 * to the University of California by American Telephone and Telegraph 7 * Co. or Unix System Laboratories, Inc. and are reproduced herein with 8 * the permission of UNIX System Laboratories, Inc. --- 22 unchanged lines hidden (view full) --- 31 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 32 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 33 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 34 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 35 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 36 * SUCH DAMAGE. 37 * 38 * @(#)kern_resource.c 8.5 (Berkeley) 1/21/94 |
39 * $FreeBSD: head/sys/kern/kern_resource.c 103367 2002-09-15 23:52:25Z julian $ | 39 * $FreeBSD: head/sys/kern/kern_resource.c 103767 2002-09-21 22:07:17Z jake $ |
40 */ 41 42#include "opt_compat.h" 43 44#include <sys/param.h> 45#include <sys/systm.h> 46#include <sys/sysproto.h> 47#include <sys/file.h> 48#include <sys/kernel.h> 49#include <sys/lock.h> 50#include <sys/malloc.h> 51#include <sys/mutex.h> 52#include <sys/proc.h> 53#include <sys/resourcevar.h> 54#include <sys/sx.h> | 40 */ 41 42#include "opt_compat.h" 43 44#include <sys/param.h> 45#include <sys/systm.h> 46#include <sys/sysproto.h> 47#include <sys/file.h> 48#include <sys/kernel.h> 49#include <sys/lock.h> 50#include <sys/malloc.h> 51#include <sys/mutex.h> 52#include <sys/proc.h> 53#include <sys/resourcevar.h> 54#include <sys/sx.h> |
55#include <sys/sysent.h> |
|
55#include <sys/time.h> 56 57#include <vm/vm.h> 58#include <vm/vm_param.h> 59#include <vm/pmap.h> 60#include <vm/vm_map.h> 61 62static int donice(struct thread *td, struct proc *chgp, int n); --- 525 unchanged lines hidden (view full) --- 588 * up make more accessible, if going down make inaccessible. 589 */ 590 if (limp->rlim_cur != alimp->rlim_cur) { 591 vm_offset_t addr; 592 vm_size_t size; 593 vm_prot_t prot; 594 595 if (limp->rlim_cur > alimp->rlim_cur) { | 56#include <sys/time.h> 57 58#include <vm/vm.h> 59#include <vm/vm_param.h> 60#include <vm/pmap.h> 61#include <vm/vm_map.h> 62 63static int donice(struct thread *td, struct proc *chgp, int n); --- 525 unchanged lines hidden (view full) --- 589 * up make more accessible, if going down make inaccessible. 590 */ 591 if (limp->rlim_cur != alimp->rlim_cur) { 592 vm_offset_t addr; 593 vm_size_t size; 594 vm_prot_t prot; 595 596 if (limp->rlim_cur > alimp->rlim_cur) { |
596 prot = VM_PROT_ALL; | 597 prot = p->p_sysent->sv_stackprot; |
597 size = limp->rlim_cur - alimp->rlim_cur; | 598 size = limp->rlim_cur - alimp->rlim_cur; |
598 addr = USRSTACK - limp->rlim_cur; | 599 addr = p->p_sysent->sv_usrstack - 600 limp->rlim_cur; |
599 } else { 600 prot = VM_PROT_NONE; 601 size = alimp->rlim_cur - limp->rlim_cur; | 601 } else { 602 prot = VM_PROT_NONE; 603 size = alimp->rlim_cur - limp->rlim_cur; |
602 addr = USRSTACK - alimp->rlim_cur; | 604 addr = p->p_sysent->sv_usrstack - 605 alimp->rlim_cur; |
603 } 604 addr = trunc_page(addr); 605 size = round_page(size); 606 (void) vm_map_protect(&p->p_vmspace->vm_map, 607 addr, addr+size, prot, FALSE); 608 } 609 break; 610 --- 435 unchanged lines hidden --- | 606 } 607 addr = trunc_page(addr); 608 size = round_page(size); 609 (void) vm_map_protect(&p->p_vmspace->vm_map, 610 addr, addr+size, prot, FALSE); 611 } 612 break; 613 --- 435 unchanged lines hidden --- |