166458Sdfr/*- 266458Sdfr * Copyright (c) 1982, 1990 The Regents of the University of California. 366458Sdfr * All rights reserved. 466458Sdfr * 566458Sdfr * This code is derived from software contributed to Berkeley by 666458Sdfr * William Jolitz. 766458Sdfr * 866458Sdfr * Redistribution and use in source and binary forms, with or without 966458Sdfr * modification, are permitted provided that the following conditions 1066458Sdfr * are met: 1166458Sdfr * 1. Redistributions of source code must retain the above copyright 1266458Sdfr * notice, this list of conditions and the following disclaimer. 1366458Sdfr * 2. Redistributions in binary form must reproduce the above copyright 1466458Sdfr * notice, this list of conditions and the following disclaimer in the 1566458Sdfr * documentation and/or other materials provided with the distribution. 1666458Sdfr * 4. Neither the name of the University nor the names of its contributors 1766458Sdfr * may be used to endorse or promote products derived from this software 1866458Sdfr * without specific prior written permission. 1966458Sdfr * 2066458Sdfr * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 2166458Sdfr * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 2266458Sdfr * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 2366458Sdfr * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 2466458Sdfr * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 2566458Sdfr * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 2666458Sdfr * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 2766458Sdfr * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 2866458Sdfr * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 2966458Sdfr * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 3066458Sdfr * SUCH DAMAGE. 3166458Sdfr * 3266458Sdfr * $FreeBSD$ 3366458Sdfr */ 3466458Sdfr 35135783Smarcel#include "opt_compat.h" 36120212Smarcel#include "opt_kstack_pages.h" 37120212Smarcel 3866458Sdfr#include <sys/param.h> 3966458Sdfr#include <sys/systm.h> 4066458Sdfr#include <sys/assym.h> 4166458Sdfr#include <sys/proc.h> 4266458Sdfr#include <sys/bio.h> 4366458Sdfr#include <sys/buf.h> 4466458Sdfr#include <sys/errno.h> 4566458Sdfr#include <sys/proc.h> 4666458Sdfr#include <sys/mount.h> 4766458Sdfr#include <sys/socket.h> 4866458Sdfr#include <sys/resource.h> 4966458Sdfr#include <sys/resourcevar.h> 5066458Sdfr#include <sys/ucontext.h> 5166458Sdfr#include <machine/frame.h> 5283407Sdfr#include <machine/elf.h> 5384118Sdfr#include <machine/pal.h> 54137906Sdas#include <machine/pcb.h> 5566458Sdfr#include <sys/vmmeter.h> 5666458Sdfr#include <vm/vm.h> 5766458Sdfr#include <vm/vm_param.h> 5866458Sdfr#include <vm/pmap.h> 5966458Sdfr#include <vm/vm_map.h> 6066458Sdfr#include <net/if.h> 6166458Sdfr#include <netinet/in.h> 6266458Sdfr 63205014Snwhitehorn#ifdef COMPAT_FREEBSD32 64205014SnwhitehornASSYM(COMPAT_FREEBSD32, COMPAT_FREEBSD32); 65135783Smarcel#endif 66135783Smarcel 67115084SmarcelASSYM(DT_NULL, DT_NULL); 68115084SmarcelASSYM(DT_RELA, DT_RELA); 69115084SmarcelASSYM(DT_RELAENT, DT_RELAENT); 70115084SmarcelASSYM(DT_RELASZ, DT_RELASZ); 71115084SmarcelASSYM(DT_SYMTAB, DT_SYMTAB); 72115084SmarcelASSYM(DT_SYMENT, DT_SYMENT); 73110227Smarcel 74115084SmarcelASSYM(EFAULT, EFAULT); 75115084SmarcelASSYM(ENAMETOOLONG, ENAMETOOLONG); 76115084SmarcelASSYM(ERESTART, ERESTART); 7766486Sdfr 78115084SmarcelASSYM(FRAME_SYSCALL, FRAME_SYSCALL); 7966458Sdfr 80219758SmarcelASSYM(IA64_PBVM_BASE, IA64_PBVM_BASE); 81219758SmarcelASSYM(IA64_PBVM_PAGE_SHIFT, IA64_PBVM_PAGE_SHIFT); 82219758SmarcelASSYM(IA64_PBVM_PGTBL, IA64_PBVM_PGTBL); 83219758SmarcelASSYM(IA64_PBVM_RR, IA64_PBVM_RR); 84219758Smarcel 85221271SmarcelASSYM(IA64_VM_MINKERN_REGION, IA64_VM_MINKERN_REGION); 86221271Smarcel 87115084SmarcelASSYM(KSTACK_PAGES, KSTACK_PAGES); 8866458Sdfr 89115084SmarcelASSYM(MC_PRESERVED, offsetof(mcontext_t, mc_preserved)); 90115084SmarcelASSYM(MC_PRESERVED_FP, offsetof(mcontext_t, mc_preserved_fp)); 91115084SmarcelASSYM(MC_SPECIAL, offsetof(mcontext_t, mc_special)); 92115084SmarcelASSYM(MC_SPECIAL_BSPSTORE, offsetof(mcontext_t, mc_special.bspstore)); 93115084SmarcelASSYM(MC_SPECIAL_RNAT, offsetof(mcontext_t, mc_special.rnat)); 9493389Sjake 95115084SmarcelASSYM(PAGE_SHIFT, PAGE_SHIFT); 96115084SmarcelASSYM(PAGE_SIZE, PAGE_SIZE); 9793389Sjake 98200207SmarcelASSYM(PC_CURRENT_PMAP, offsetof(struct pcpu, pc_md.current_pmap)); 99115084SmarcelASSYM(PC_IDLETHREAD, offsetof(struct pcpu, pc_idlethread)); 10066458Sdfr 101106189SmarcelASSYM(PCB_CURRENT_PMAP, offsetof(struct pcb, pcb_current_pmap)); 10283366SjulianASSYM(PCB_ONFAULT, offsetof(struct pcb, pcb_onfault)); 103115084SmarcelASSYM(PCB_SPECIAL_RP, offsetof(struct pcb, pcb_special.rp)); 10466486Sdfr 105154491SmarcelASSYM(R_IA_64_DIR64LSB, R_IA_64_DIR64LSB); 106154491SmarcelASSYM(R_IA_64_FPTR64LSB, R_IA_64_FPTR64LSB); 107154491SmarcelASSYM(R_IA_64_NONE, R_IA_64_NONE); 108154491SmarcelASSYM(R_IA_64_REL64LSB, R_IA_64_REL64LSB); 10966458Sdfr 110115084SmarcelASSYM(SIZEOF_PCB, sizeof(struct pcb)); 111115084SmarcelASSYM(SIZEOF_SPECIAL, sizeof(struct _special)); 112115084SmarcelASSYM(SIZEOF_TRAPFRAME, sizeof(struct trapframe)); 11366458Sdfr 114115084SmarcelASSYM(TD_FLAGS, offsetof(struct thread, td_flags)); 115115084SmarcelASSYM(TD_KSTACK, offsetof(struct thread, td_kstack)); 116115084SmarcelASSYM(TD_PCB, offsetof(struct thread, td_pcb)); 11783366Sjulian 118115084SmarcelASSYM(TDF_ASTPENDING, TDF_ASTPENDING); 119115084SmarcelASSYM(TDF_NEEDRESCHED, TDF_NEEDRESCHED); 12083407Sdfr 121115084SmarcelASSYM(UC_MCONTEXT, offsetof(ucontext_t, uc_mcontext)); 122115084Smarcel 123219741SmarcelASSYM(VM_MAXUSER_ADDRESS, VM_MAXUSER_ADDRESS); 124