From owner-p4-projects@FreeBSD.ORG Sun Aug 22 00:24:31 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C293616A4D0; Sun, 22 Aug 2004 00:24:30 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9981E16A4CE for ; Sun, 22 Aug 2004 00:24:30 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8DC1C43D3F for ; Sun, 22 Aug 2004 00:24:30 +0000 (GMT) (envelope-from davidxu@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7M0OUc9098059 for ; Sun, 22 Aug 2004 00:24:30 GMT (envelope-from davidxu@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7M0OUv8098056 for perforce@freebsd.org; Sun, 22 Aug 2004 00:24:30 GMT (envelope-from davidxu@freebsd.org) Date: Sun, 22 Aug 2004 00:24:30 GMT Message-Id: <200408220024.i7M0OUv8098056@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to davidxu@freebsd.org using -f From: David Xu To: Perforce Change Reviews Subject: PERFORCE change 60231 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Aug 2004 00:24:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=60231 Change 60231 by davidxu@davidxu_alona on 2004/08/22 00:24:22 More cosmetic changes. Affected files ... .. //depot/projects/davidxu_ksedbg/src/gnu/usr.bin/gdb/libgdb/fbsd-threads.c#26 edit Differences ... ==== //depot/projects/davidxu_ksedbg/src/gnu/usr.bin/gdb/libgdb/fbsd-threads.c#26 (text+ko) ==== @@ -19,14 +19,17 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#include "defs.h" +#include +#include +#include -#include "gdb_assert.h" #include "proc_service.h" #include "thread_db.h" +#include "defs.h" #include "bfd.h" #include "elf-bfd.h" +#include "gdb_assert.h" #include "gdbcore.h" #include "gdbthread.h" #include "inferior.h" @@ -38,8 +41,6 @@ #include "gdbcmd.h" #include "solib-svr4.h" -#include -#include #define LIBTHREAD_DB_SO "libthread_db.so" @@ -56,7 +57,7 @@ static struct target_ops fbsd_thread_ops; static struct target_ops fbsd_core_ops; -/* Saved copy of orignal core_ops */ +/* Saved copy of orignal core_ops. */ static struct target_ops orig_core_ops; extern struct target_ops core_ops; @@ -69,6 +70,7 @@ /* Non-zero if we're using this module's target vector. */ static int fbsd_thread_active; +/* Non-zero if core_open is called */ static int fbsd_thread_core = 0; /* Non-zero if we have to keep this module's target vector active @@ -458,14 +460,6 @@ int resume_all, ret; long lwp, thvalid = 0; -#if 0 - printf_filtered("%s ptid=%ld.%ld.%ld step=%d\n", __func__, - GET_PID(ptid), GET_LWP(ptid), GET_THREAD(ptid), step); - printf_filtered("%s inferior_ptid=%ld.%ld.%ld\n", __func__, - GET_PID(inferior_ptid), GET_LWP(inferior_ptid), - GET_THREAD(inferior_ptid)); -#endif - if (!fbsd_thread_active) { child_ops.to_resume (ptid, step, signo); From owner-p4-projects@FreeBSD.ORG Sun Aug 22 07:01:37 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 00C5916A4D0; Sun, 22 Aug 2004 07:01:36 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B3B0B16A4CE for ; Sun, 22 Aug 2004 07:01:36 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 92C6C43D2D for ; Sun, 22 Aug 2004 07:01:36 +0000 (GMT) (envelope-from julian@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7M71ZTC010986 for ; Sun, 22 Aug 2004 07:01:36 GMT (envelope-from julian@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7M71Xp7010983 for perforce@freebsd.org; Sun, 22 Aug 2004 07:01:33 GMT (envelope-from julian@freebsd.org) Date: Sun, 22 Aug 2004 07:01:33 GMT Message-Id: <200408220701.i7M71Xp7010983@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to julian@freebsd.org using -f From: Julian Elischer To: Perforce Change Reviews Subject: PERFORCE change 60244 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Aug 2004 07:01:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=60244 Change 60244 by julian@julian_jules1 on 2004/08/22 07:01:10 IFC Affected files ... .. //depot/projects/nsched/sys/Makefile#3 integrate .. //depot/projects/nsched/sys/alpha/alpha/autoconf.c#3 integrate .. //depot/projects/nsched/sys/alpha/alpha/db_trace.c#3 integrate .. //depot/projects/nsched/sys/alpha/alpha/elf_machdep.c#3 integrate .. //depot/projects/nsched/sys/alpha/alpha/interrupt.c#5 integrate .. //depot/projects/nsched/sys/alpha/alpha/mem.c#5 integrate .. //depot/projects/nsched/sys/alpha/alpha/pmap.c#8 integrate .. //depot/projects/nsched/sys/alpha/conf/GENERIC#4 integrate .. //depot/projects/nsched/sys/alpha/include/cpu.h#5 integrate .. //depot/projects/nsched/sys/alpha/include/critical.h#2 integrate .. //depot/projects/nsched/sys/alpha/include/memdev.h#1 branch .. //depot/projects/nsched/sys/alpha/include/param.h#4 integrate .. //depot/projects/nsched/sys/alpha/include/pmap.h#7 integrate .. //depot/projects/nsched/sys/alpha/linux/linux.h#2 integrate .. //depot/projects/nsched/sys/alpha/osf1/osf1_misc.c#2 integrate .. //depot/projects/nsched/sys/amd64/acpica/acpi_machdep.c#4 integrate .. //depot/projects/nsched/sys/amd64/amd64/amd64_mem.c#2 integrate .. //depot/projects/nsched/sys/amd64/amd64/autoconf.c#4 integrate .. //depot/projects/nsched/sys/amd64/amd64/busdma_machdep.c#3 integrate .. //depot/projects/nsched/sys/amd64/amd64/cpu_switch.S#4 integrate .. //depot/projects/nsched/sys/amd64/amd64/db_interface.c#4 integrate .. //depot/projects/nsched/sys/amd64/amd64/db_trace.c#3 integrate .. //depot/projects/nsched/sys/amd64/amd64/elf_machdep.c#3 integrate .. //depot/projects/nsched/sys/amd64/amd64/exception.S#4 integrate .. //depot/projects/nsched/sys/amd64/amd64/intr_machdep.c#5 integrate .. //depot/projects/nsched/sys/amd64/amd64/io.c#1 branch .. //depot/projects/nsched/sys/amd64/amd64/io_apic.c#5 integrate .. //depot/projects/nsched/sys/amd64/amd64/legacy.c#4 integrate .. //depot/projects/nsched/sys/amd64/amd64/local_apic.c#3 integrate .. //depot/projects/nsched/sys/amd64/amd64/machdep.c#6 integrate .. //depot/projects/nsched/sys/amd64/amd64/mem.c#5 integrate .. //depot/projects/nsched/sys/amd64/amd64/mp_machdep.c#4 integrate .. //depot/projects/nsched/sys/amd64/amd64/pmap.c#14 integrate .. //depot/projects/nsched/sys/amd64/amd64/trap.c#4 integrate .. //depot/projects/nsched/sys/amd64/amd64/vm_machdep.c#5 integrate .. //depot/projects/nsched/sys/amd64/conf/GENERIC#7 integrate .. //depot/projects/nsched/sys/amd64/conf/GENERIC.hints#2 integrate .. //depot/projects/nsched/sys/amd64/conf/NOTES#3 integrate .. //depot/projects/nsched/sys/amd64/include/cpu.h#5 integrate .. //depot/projects/nsched/sys/amd64/include/cpufunc.h#3 integrate .. //depot/projects/nsched/sys/amd64/include/critical.h#2 integrate .. //depot/projects/nsched/sys/amd64/include/elf.h#2 integrate .. //depot/projects/nsched/sys/amd64/include/float.h#5 integrate .. //depot/projects/nsched/sys/amd64/include/intr_machdep.h#3 integrate .. //depot/projects/nsched/sys/amd64/include/iodev.h#1 branch .. //depot/projects/nsched/sys/amd64/include/memdev.h#1 branch .. //depot/projects/nsched/sys/amd64/include/param.h#4 integrate .. //depot/projects/nsched/sys/amd64/include/pmap.h#10 integrate .. //depot/projects/nsched/sys/amd64/include/profile.h#5 integrate .. //depot/projects/nsched/sys/amd64/isa/atpic.c#4 integrate .. //depot/projects/nsched/sys/amd64/isa/clock.c#6 integrate .. //depot/projects/nsched/sys/amd64/isa/isa.h#3 integrate .. //depot/projects/nsched/sys/amd64/isa/isa_dma.c#3 integrate .. //depot/projects/nsched/sys/amd64/linux32/Makefile#1 branch .. //depot/projects/nsched/sys/amd64/linux32/linux.h#1 branch .. //depot/projects/nsched/sys/amd64/linux32/linux32_dummy.c#1 branch .. //depot/projects/nsched/sys/amd64/linux32/linux32_genassym.c#1 branch .. //depot/projects/nsched/sys/amd64/linux32/linux32_ipc64.h#1 branch .. //depot/projects/nsched/sys/amd64/linux32/linux32_locore.s#1 branch .. //depot/projects/nsched/sys/amd64/linux32/linux32_machdep.c#1 branch .. //depot/projects/nsched/sys/amd64/linux32/linux32_proto.h#1 branch .. //depot/projects/nsched/sys/amd64/linux32/linux32_syscall.h#1 branch .. //depot/projects/nsched/sys/amd64/linux32/linux32_sysent.c#1 branch .. //depot/projects/nsched/sys/amd64/linux32/linux32_sysvec.c#1 branch .. //depot/projects/nsched/sys/amd64/linux32/syscalls.conf#1 branch .. //depot/projects/nsched/sys/amd64/linux32/syscalls.master#1 branch .. //depot/projects/nsched/sys/arm/arm/busdma_machdep.c#2 integrate .. //depot/projects/nsched/sys/arm/arm/cpufunc.c#2 integrate .. //depot/projects/nsched/sys/arm/arm/db_trace.c#3 integrate .. //depot/projects/nsched/sys/arm/arm/elf_machdep.c#2 integrate .. //depot/projects/nsched/sys/arm/arm/machdep.c#3 integrate .. //depot/projects/nsched/sys/arm/arm/pmap.c#5 integrate .. //depot/projects/nsched/sys/arm/arm/support.S#2 integrate .. //depot/projects/nsched/sys/arm/include/cpu.h#2 integrate .. //depot/projects/nsched/sys/arm/include/cpufunc.h#3 integrate .. //depot/projects/nsched/sys/arm/include/critical.h#2 integrate .. //depot/projects/nsched/sys/arm/include/endian.h#3 integrate .. //depot/projects/nsched/sys/arm/include/float.h#2 integrate .. //depot/projects/nsched/sys/arm/include/pcb.h#3 integrate .. //depot/projects/nsched/sys/arm/include/pmap.h#3 integrate .. //depot/projects/nsched/sys/arm/include/profile.h#3 integrate .. //depot/projects/nsched/sys/arm/include/vmparam.h#2 integrate .. //depot/projects/nsched/sys/boot/Makefile#3 integrate .. //depot/projects/nsched/sys/boot/alpha/common/Makefile.common#2 integrate .. //depot/projects/nsched/sys/boot/alpha/common/ldscript#1 branch .. //depot/projects/nsched/sys/boot/common/help.common#2 integrate .. //depot/projects/nsched/sys/boot/common/loader.8#6 integrate .. //depot/projects/nsched/sys/boot/efi/libefi/arch/ia64/ldscript.ia64#2 integrate .. //depot/projects/nsched/sys/boot/efi/libefi/arch/ia64/start.S#2 integrate .. //depot/projects/nsched/sys/boot/efi/loader/Makefile#2 integrate .. //depot/projects/nsched/sys/boot/efi/loader/main.c#2 integrate .. //depot/projects/nsched/sys/boot/forth/loader.conf#6 integrate .. //depot/projects/nsched/sys/boot/i386/boot2/Makefile#2 integrate .. //depot/projects/nsched/sys/boot/i386/boot2/boot1.S#5 integrate .. //depot/projects/nsched/sys/boot/i386/boot2/boot2.c#2 integrate .. //depot/projects/nsched/sys/boot/i386/btx/lib/btxcsu.s#2 integrate .. //depot/projects/nsched/sys/boot/ofw/common/main.c#2 integrate .. //depot/projects/nsched/sys/boot/ofw/libofw/libofw.h#2 integrate .. //depot/projects/nsched/sys/boot/ofw/libofw/ofw_console.c#2 integrate .. //depot/projects/nsched/sys/boot/ofw/libofw/ofw_memory.c#2 integrate .. //depot/projects/nsched/sys/boot/ofw/libofw/ofw_net.c#2 integrate .. //depot/projects/nsched/sys/boot/ofw/libofw/openfirm.c#3 integrate .. //depot/projects/nsched/sys/boot/ofw/libofw/openfirm.h#2 integrate .. //depot/projects/nsched/sys/boot/pc98/boot2/boot.h#2 integrate .. //depot/projects/nsched/sys/boot/pc98/boot2/disk.c#2 integrate .. //depot/projects/nsched/sys/boot/pc98/boot2/io.c#2 integrate .. //depot/projects/nsched/sys/boot/pc98/boot2/sys.c#2 integrate .. //depot/projects/nsched/sys/boot/powerpc/loader/Makefile#3 integrate .. //depot/projects/nsched/sys/boot/sparc64/boot1/boot1.c#2 integrate .. //depot/projects/nsched/sys/boot/sparc64/loader/Makefile#2 integrate .. //depot/projects/nsched/sys/boot/sparc64/loader/main.c#2 integrate .. //depot/projects/nsched/sys/cam/scsi/scsi_all.c#2 integrate .. //depot/projects/nsched/sys/cam/scsi/scsi_da.c#4 integrate .. //depot/projects/nsched/sys/cam/scsi/scsi_target.c#4 integrate .. //depot/projects/nsched/sys/coda/coda_vfsops.c#4 integrate .. //depot/projects/nsched/sys/coda/coda_vnops.c#3 integrate .. //depot/projects/nsched/sys/compat/ia32/ia32_sysvec.c#3 integrate .. //depot/projects/nsched/sys/compat/linprocfs/linprocfs.c#2 integrate .. //depot/projects/nsched/sys/compat/linux/linux_file.c#2 integrate .. //depot/projects/nsched/sys/compat/linux/linux_getcwd.c#2 integrate .. //depot/projects/nsched/sys/compat/linux/linux_ioctl.c#5 integrate .. //depot/projects/nsched/sys/compat/linux/linux_ipc.c#2 integrate .. //depot/projects/nsched/sys/compat/linux/linux_ipc.h#2 integrate .. //depot/projects/nsched/sys/compat/linux/linux_mib.c#2 integrate .. //depot/projects/nsched/sys/compat/linux/linux_misc.c#3 integrate .. //depot/projects/nsched/sys/compat/linux/linux_signal.c#2 integrate .. //depot/projects/nsched/sys/compat/linux/linux_socket.c#3 integrate .. //depot/projects/nsched/sys/compat/linux/linux_stats.c#4 integrate .. //depot/projects/nsched/sys/compat/linux/linux_sysctl.c#2 integrate .. //depot/projects/nsched/sys/compat/linux/linux_uid16.c#3 integrate .. //depot/projects/nsched/sys/compat/linux/linux_util.h#2 integrate .. //depot/projects/nsched/sys/compat/ndis/hal_var.h#3 integrate .. //depot/projects/nsched/sys/compat/ndis/kern_ndis.c#6 integrate .. //depot/projects/nsched/sys/compat/ndis/ndis_var.h#5 integrate .. //depot/projects/nsched/sys/compat/ndis/ntoskrnl_var.h#3 integrate .. //depot/projects/nsched/sys/compat/ndis/pe_var.h#3 integrate .. //depot/projects/nsched/sys/compat/ndis/subr_hal.c#3 integrate .. //depot/projects/nsched/sys/compat/ndis/subr_ndis.c#7 integrate .. //depot/projects/nsched/sys/compat/ndis/subr_ntoskrnl.c#5 integrate .. //depot/projects/nsched/sys/conf/Makefile.powerpc#3 integrate .. //depot/projects/nsched/sys/conf/NOTES#11 integrate .. //depot/projects/nsched/sys/conf/files#17 integrate .. //depot/projects/nsched/sys/conf/files.alpha#5 integrate .. //depot/projects/nsched/sys/conf/files.amd64#7 integrate .. //depot/projects/nsched/sys/conf/files.i386#9 integrate .. //depot/projects/nsched/sys/conf/files.ia64#6 integrate .. //depot/projects/nsched/sys/conf/files.pc98#7 integrate .. //depot/projects/nsched/sys/conf/files.powerpc#3 integrate .. //depot/projects/nsched/sys/conf/files.sparc64#5 integrate .. //depot/projects/nsched/sys/conf/kern.pre.mk#5 integrate .. //depot/projects/nsched/sys/conf/kmod.mk#8 integrate .. //depot/projects/nsched/sys/conf/newvers.sh#4 integrate .. //depot/projects/nsched/sys/conf/options#12 integrate .. //depot/projects/nsched/sys/conf/options.amd64#2 integrate .. //depot/projects/nsched/sys/conf/options.i386#2 integrate .. //depot/projects/nsched/sys/conf/options.ia64#2 integrate .. //depot/projects/nsched/sys/conf/options.pc98#3 integrate .. //depot/projects/nsched/sys/contrib/dev/acpica/aclocal.h#4 integrate .. //depot/projects/nsched/sys/contrib/dev/oltr/if_oltr.c#3 integrate .. //depot/projects/nsched/sys/contrib/ngatm/FREEBSD-Xlist#1 branch .. //depot/projects/nsched/sys/contrib/ngatm/netnatm/api/cc_conn.c#2 integrate .. //depot/projects/nsched/sys/contrib/ngatm/netnatm/api/cc_dump.c#2 integrate .. //depot/projects/nsched/sys/contrib/ngatm/netnatm/api/cc_user.c#2 integrate .. //depot/projects/nsched/sys/contrib/ngatm/netnatm/msg/uni_ie.c#3 integrate .. //depot/projects/nsched/sys/contrib/ngatm/netnatm/msg/unistruct.h#3 integrate .. //depot/projects/nsched/sys/contrib/ngatm/netnatm/sig/sig_call.c#3 integrate .. //depot/projects/nsched/sys/contrib/ngatm/netnatm/sig/sig_coord.c#3 integrate .. //depot/projects/nsched/sys/contrib/ngatm/netnatm/sig/sig_party.c#3 integrate .. //depot/projects/nsched/sys/contrib/ngatm/netnatm/sig/sig_print.c#3 integrate .. //depot/projects/nsched/sys/contrib/ngatm/netnatm/sig/sig_reset.c#3 integrate .. //depot/projects/nsched/sys/contrib/ngatm/netnatm/sig/sig_uni.c#3 integrate .. //depot/projects/nsched/sys/contrib/pf/net/if_pfsync.c#6 integrate .. //depot/projects/nsched/sys/contrib/pf/net/pf.c#6 integrate .. //depot/projects/nsched/sys/contrib/pf/net/pf_if.c#2 integrate .. //depot/projects/nsched/sys/contrib/pf/net/pf_ioctl.c#6 integrate .. //depot/projects/nsched/sys/contrib/pf/net/pf_norm.c#5 integrate .. //depot/projects/nsched/sys/contrib/pf/net/pf_table.c#3 integrate .. //depot/projects/nsched/sys/contrib/pf/net/pfvar.h#4 integrate .. //depot/projects/nsched/sys/contrib/pf/netinet/in4_cksum.c#3 integrate .. //depot/projects/nsched/sys/ddb/db_command.c#3 integrate .. //depot/projects/nsched/sys/ddb/db_main.c#2 integrate .. //depot/projects/nsched/sys/ddb/ddb.h#3 integrate .. //depot/projects/nsched/sys/dev/aac/aac.c#5 integrate .. //depot/projects/nsched/sys/dev/aac/aac_cam.c#4 integrate .. //depot/projects/nsched/sys/dev/aac/aac_disk.c#4 integrate .. //depot/projects/nsched/sys/dev/aac/aac_pci.c#4 integrate .. //depot/projects/nsched/sys/dev/aac/aacreg.h#2 integrate .. //depot/projects/nsched/sys/dev/aac/aacvar.h#5 integrate .. //depot/projects/nsched/sys/dev/acpica/Osd/OsdInterrupt.c#3 integrate .. //depot/projects/nsched/sys/dev/acpica/Osd/OsdSchedule.c#3 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi.c#10 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_acad.c#8 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_battery.c#3 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_cmbat.c#7 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_cpu.c#8 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_ec.c#8 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_lid.c#6 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_pci.c#9 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_pci_link.c#5 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_pcib.c#6 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_pcib_acpi.c#7 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_pcib_pci.c#5 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_pcibvar.h#2 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_powerres.c#6 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_resource.c#7 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_thermal.c#5 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_timer.c#5 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_video.c#5 integrate .. //depot/projects/nsched/sys/dev/acpica/acpiio.h#3 integrate .. //depot/projects/nsched/sys/dev/acpica/acpivar.h#9 integrate .. //depot/projects/nsched/sys/dev/aic7xxx/ahc_eisa.c#2 integrate .. //depot/projects/nsched/sys/dev/aic7xxx/ahc_isa.c#1 branch .. //depot/projects/nsched/sys/dev/aic7xxx/ahc_pci.c#2 integrate .. //depot/projects/nsched/sys/dev/aic7xxx/aic79xx.c#3 integrate .. //depot/projects/nsched/sys/dev/aic7xxx/aic79xx.h#3 integrate .. //depot/projects/nsched/sys/dev/aic7xxx/aic79xx.reg#3 integrate .. //depot/projects/nsched/sys/dev/aic7xxx/aic79xx.seq#3 integrate .. //depot/projects/nsched/sys/dev/aic7xxx/aic79xx_inline.h#3 integrate .. //depot/projects/nsched/sys/dev/aic7xxx/aic79xx_osm.c#3 integrate .. //depot/projects/nsched/sys/dev/aic7xxx/aic79xx_pci.c#3 integrate .. //depot/projects/nsched/sys/dev/aic7xxx/aic7xxx.c#3 integrate .. //depot/projects/nsched/sys/dev/aic7xxx/aic7xxx.h#2 integrate .. //depot/projects/nsched/sys/dev/aic7xxx/aic7xxx.seq#2 integrate .. //depot/projects/nsched/sys/dev/aic7xxx/aic7xxx_osm.c#3 integrate .. //depot/projects/nsched/sys/dev/aic7xxx/aic7xxx_osm.h#3 integrate .. //depot/projects/nsched/sys/dev/aic7xxx/aic_osm_lib.c#2 integrate .. //depot/projects/nsched/sys/dev/aic7xxx/aic_osm_lib.h#3 integrate .. //depot/projects/nsched/sys/dev/amr/amr.c#4 integrate .. //depot/projects/nsched/sys/dev/amr/amr_pci.c#3 integrate .. //depot/projects/nsched/sys/dev/amr/amrio.h#2 integrate .. //depot/projects/nsched/sys/dev/an/if_an.c#4 integrate .. //depot/projects/nsched/sys/dev/ar/if_ar.c#4 integrate .. //depot/projects/nsched/sys/dev/arl/if_arl.c#5 integrate .. //depot/projects/nsched/sys/dev/arl/if_arl_isa.c#3 integrate .. //depot/projects/nsched/sys/dev/arl/if_arlreg.h#3 integrate .. //depot/projects/nsched/sys/dev/asr/asr.c#5 integrate .. //depot/projects/nsched/sys/dev/ata/ata-all.c#7 integrate .. //depot/projects/nsched/sys/dev/ata/ata-all.h#3 integrate .. //depot/projects/nsched/sys/dev/ata/ata-chipset.c#7 integrate .. //depot/projects/nsched/sys/dev/ata/ata-disk.c#5 integrate .. //depot/projects/nsched/sys/dev/ata/ata-dma.c#3 integrate .. //depot/projects/nsched/sys/dev/ata/ata-lowlevel.c#6 integrate .. //depot/projects/nsched/sys/dev/ata/ata-pci.c#4 integrate .. //depot/projects/nsched/sys/dev/ata/ata-queue.c#4 integrate .. //depot/projects/nsched/sys/dev/ata/ata-raid.c#4 integrate .. //depot/projects/nsched/sys/dev/ata/atapi-cd.c#4 integrate .. //depot/projects/nsched/sys/dev/ata/atapi-fd.c#3 integrate .. //depot/projects/nsched/sys/dev/ata/atapi-tape.c#4 integrate .. //depot/projects/nsched/sys/dev/ath/if_ath.c#4 integrate .. //depot/projects/nsched/sys/dev/awi/awi.c#4 integrate .. //depot/projects/nsched/sys/dev/bfe/if_bfe.c#4 integrate .. //depot/projects/nsched/sys/dev/bfe/if_bfereg.h#3 integrate .. //depot/projects/nsched/sys/dev/bge/if_bge.c#5 integrate .. //depot/projects/nsched/sys/dev/bktr/bktr_card.c#2 integrate .. //depot/projects/nsched/sys/dev/bktr/bktr_card.h#2 integrate .. //depot/projects/nsched/sys/dev/ciss/ciss.c#7 integrate .. //depot/projects/nsched/sys/dev/ciss/cissio.h#2 integrate .. //depot/projects/nsched/sys/dev/ciss/cissreg.h#7 integrate .. //depot/projects/nsched/sys/dev/cm/smc90cx6.c#2 integrate .. //depot/projects/nsched/sys/dev/cp/cpddk.c#2 integrate .. //depot/projects/nsched/sys/dev/cp/cpddk.h#2 integrate .. //depot/projects/nsched/sys/dev/cp/if_cp.c#6 integrate .. //depot/projects/nsched/sys/dev/cs/if_cs.c#4 integrate .. //depot/projects/nsched/sys/dev/ctau/if_ct.c#7 integrate .. //depot/projects/nsched/sys/dev/cx/if_cx.c#10 integrate .. //depot/projects/nsched/sys/dev/digi/digi.c#10 integrate .. //depot/projects/nsched/sys/dev/drm/drm_drv.h#4 integrate .. //depot/projects/nsched/sys/dev/ed/if_ed.c#5 integrate .. //depot/projects/nsched/sys/dev/ed/if_ed_pccard.c#4 integrate .. //depot/projects/nsched/sys/dev/eisa/eisaconf.c#3 integrate .. //depot/projects/nsched/sys/dev/en/midway.c#3 integrate .. //depot/projects/nsched/sys/dev/ep/if_ep_eisa.c#2 integrate .. //depot/projects/nsched/sys/dev/ep/if_ep_isa.c#2 integrate .. //depot/projects/nsched/sys/dev/ep/if_ep_mca.c#2 integrate .. //depot/projects/nsched/sys/dev/esp/esp_sbus.c#5 integrate .. //depot/projects/nsched/sys/dev/esp/lsi64854.c#2 integrate .. //depot/projects/nsched/sys/dev/esp/lsi64854var.h#2 integrate .. //depot/projects/nsched/sys/dev/esp/ncr53c9x.c#4 integrate .. //depot/projects/nsched/sys/dev/esp/ncr53c9xreg.h#2 integrate .. //depot/projects/nsched/sys/dev/esp/ncr53c9xvar.h#4 integrate .. //depot/projects/nsched/sys/dev/ex/if_ex.c#5 integrate .. //depot/projects/nsched/sys/dev/exca/exca.c#2 integrate .. //depot/projects/nsched/sys/dev/exca/excavar.h#2 integrate .. //depot/projects/nsched/sys/dev/fb/splash_bmp.c#1 branch .. //depot/projects/nsched/sys/dev/fb/splash_pcx.c#1 branch .. //depot/projects/nsched/sys/dev/fdc/fdc.c#6 integrate .. //depot/projects/nsched/sys/dev/fdc/fdc_acpi.c#2 integrate .. //depot/projects/nsched/sys/dev/fdc/fdc_isa.c#2 integrate .. //depot/projects/nsched/sys/dev/fdc/fdc_pccard.c#2 integrate .. //depot/projects/nsched/sys/dev/fdc/fdcreg.h#2 delete .. //depot/projects/nsched/sys/dev/fdc/fdcvar.h#2 integrate .. //depot/projects/nsched/sys/dev/fe/if_fe.c#5 integrate .. //depot/projects/nsched/sys/dev/firewire/firewire.c#6 integrate .. //depot/projects/nsched/sys/dev/firewire/fwohci.c#4 integrate .. //depot/projects/nsched/sys/dev/firewire/fwohci_pci.c#5 integrate .. //depot/projects/nsched/sys/dev/firewire/fwohcireg.h#4 integrate .. //depot/projects/nsched/sys/dev/firewire/if_fwe.c#3 integrate .. //depot/projects/nsched/sys/dev/firewire/if_fwip.c#2 integrate .. //depot/projects/nsched/sys/dev/firewire/sbp.c#5 integrate .. //depot/projects/nsched/sys/dev/fxp/if_fxp.c#7 integrate .. //depot/projects/nsched/sys/dev/gem/if_gem.c#5 integrate .. //depot/projects/nsched/sys/dev/hme/if_hme.c#6 integrate .. //depot/projects/nsched/sys/dev/hme/if_hme_pci.c#3 integrate .. //depot/projects/nsched/sys/dev/hme/if_hme_sbus.c#4 integrate .. //depot/projects/nsched/sys/dev/hme/if_hmereg.h#3 integrate .. //depot/projects/nsched/sys/dev/hme/if_hmevar.h#2 integrate .. //depot/projects/nsched/sys/dev/ie/if_ie.c#2 integrate .. //depot/projects/nsched/sys/dev/if_ndis/if_ndis.c#8 integrate .. //depot/projects/nsched/sys/dev/if_ndis/if_ndis_pci.c#4 integrate .. //depot/projects/nsched/sys/dev/iicbus/if_ic.c#2 integrate .. //depot/projects/nsched/sys/dev/io/iodev.c#1 branch .. //depot/projects/nsched/sys/dev/isp/isp_sbus.c#3 integrate .. //depot/projects/nsched/sys/dev/ixgb/if_ixgb.c#3 integrate .. //depot/projects/nsched/sys/dev/lge/if_lge.c#5 integrate .. //depot/projects/nsched/sys/dev/lnc/if_lnc.c#6 integrate .. //depot/projects/nsched/sys/dev/md/md.c#7 integrate .. //depot/projects/nsched/sys/dev/mem/memdev.c#1 branch .. //depot/projects/nsched/sys/dev/mem/memutil.c#1 branch .. //depot/projects/nsched/sys/dev/mii/mii.c#4 integrate .. //depot/projects/nsched/sys/dev/mpt/mpt.c#2 integrate .. //depot/projects/nsched/sys/dev/mpt/mpt_debug.c#3 integrate .. //depot/projects/nsched/sys/dev/mpt/mpt_freebsd.c#2 integrate .. //depot/projects/nsched/sys/dev/nge/if_nge.c#6 integrate .. //depot/projects/nsched/sys/dev/null/null.c#5 integrate .. //depot/projects/nsched/sys/dev/ofw/ofw_bus.h#1 branch .. //depot/projects/nsched/sys/dev/ofw/ofw_bus_if.m#1 branch .. //depot/projects/nsched/sys/dev/ofw/ofw_console.c#6 integrate .. //depot/projects/nsched/sys/dev/ofw/ofw_disk.c#3 integrate .. //depot/projects/nsched/sys/dev/ofw/openfirm.c#3 integrate .. //depot/projects/nsched/sys/dev/ofw/openfirm.h#2 integrate .. //depot/projects/nsched/sys/dev/ofw/openfirmio.c#5 integrate .. //depot/projects/nsched/sys/dev/ofw/openpromio.c#4 integrate .. //depot/projects/nsched/sys/dev/pccard/pccard.c#2 integrate .. //depot/projects/nsched/sys/dev/pccbb/pccbb.c#6 integrate .. //depot/projects/nsched/sys/dev/pccbb/pccbb_isa.c#1 branch .. //depot/projects/nsched/sys/dev/pccbb/pccbb_pci.c#1 branch .. //depot/projects/nsched/sys/dev/pccbb/pccbbdevid.h#2 integrate .. //depot/projects/nsched/sys/dev/pccbb/pccbbvar.h#3 integrate .. //depot/projects/nsched/sys/dev/pcf/envctrl.c#3 integrate .. //depot/projects/nsched/sys/dev/pcf/pcf_ebus.c#2 integrate .. //depot/projects/nsched/sys/dev/pcf/pcf_isa.c#3 integrate .. //depot/projects/nsched/sys/dev/pcf/pcfvar.h#3 integrate .. //depot/projects/nsched/sys/dev/pcic/i82365.c#2 delete .. //depot/projects/nsched/sys/dev/pcic/i82365_isa.c#2 delete .. //depot/projects/nsched/sys/dev/pcic/i82365reg.h#2 delete .. //depot/projects/nsched/sys/dev/pcic/i82365var.h#2 delete .. //depot/projects/nsched/sys/dev/ppbus/if_plip.c#3 integrate .. //depot/projects/nsched/sys/dev/puc/puc_ebus.c#3 integrate .. //depot/projects/nsched/sys/dev/puc/puc_sbus.c#4 integrate .. //depot/projects/nsched/sys/dev/random/randomdev.c#8 integrate .. //depot/projects/nsched/sys/dev/random/randomdev_soft.c#4 integrate .. //depot/projects/nsched/sys/dev/ray/if_ray.c#3 integrate .. //depot/projects/nsched/sys/dev/sab/sab.c#7 integrate .. //depot/projects/nsched/sys/dev/sbni/if_sbni.c#4 integrate .. //depot/projects/nsched/sys/dev/scd/scd.c#3 integrate .. //depot/projects/nsched/sys/dev/si/si.c#7 integrate .. //depot/projects/nsched/sys/dev/sio/sio.c#10 integrate .. //depot/projects/nsched/sys/dev/snc/dp83932.c#3 integrate .. //depot/projects/nsched/sys/dev/sound/pci/emu10k1.c#6 integrate .. //depot/projects/nsched/sys/dev/sr/if_sr.c#4 integrate .. //depot/projects/nsched/sys/dev/syscons/syscons.c#6 integrate .. //depot/projects/nsched/sys/dev/syscons/syscons.h#4 integrate .. //depot/projects/nsched/sys/dev/twa/twa_freebsd.c#5 integrate .. //depot/projects/nsched/sys/dev/twa/twa_reg.h#2 integrate .. //depot/projects/nsched/sys/dev/tx/if_tx.c#4 integrate .. //depot/projects/nsched/sys/dev/txp/if_txp.c#4 integrate .. //depot/projects/nsched/sys/dev/uart/uart_bus_ebus.c#4 integrate .. //depot/projects/nsched/sys/dev/uart/uart_bus_isa.c#2 integrate .. //depot/projects/nsched/sys/dev/uart/uart_cpu.h#2 integrate .. //depot/projects/nsched/sys/dev/uart/uart_cpu_alpha.c#2 integrate .. //depot/projects/nsched/sys/dev/uart/uart_cpu_amd64.c#2 integrate .. //depot/projects/nsched/sys/dev/uart/uart_cpu_i386.c#2 integrate .. //depot/projects/nsched/sys/dev/uart/uart_cpu_ia64.c#2 integrate .. //depot/projects/nsched/sys/dev/uart/uart_cpu_pc98.c#3 integrate .. //depot/projects/nsched/sys/dev/uart/uart_cpu_sparc64.c#3 integrate .. //depot/projects/nsched/sys/dev/uart/uart_dev_ns8250.c#4 integrate .. //depot/projects/nsched/sys/dev/usb/ehci.c#5 integrate .. //depot/projects/nsched/sys/dev/usb/ehci_pci.c#3 integrate .. //depot/projects/nsched/sys/dev/usb/ehcireg.h#4 integrate .. //depot/projects/nsched/sys/dev/usb/ehcivar.h#2 integrate .. //depot/projects/nsched/sys/dev/usb/if_aue.c#6 integrate .. //depot/projects/nsched/sys/dev/usb/if_axe.c#7 integrate .. //depot/projects/nsched/sys/dev/usb/if_cue.c#5 integrate .. //depot/projects/nsched/sys/dev/usb/if_kue.c#4 integrate .. //depot/projects/nsched/sys/dev/usb/if_rue.c#6 integrate .. //depot/projects/nsched/sys/dev/usb/if_udav.c#6 integrate .. //depot/projects/nsched/sys/dev/usb/ohci.c#3 integrate .. //depot/projects/nsched/sys/dev/usb/ohci_pci.c#2 integrate .. //depot/projects/nsched/sys/dev/usb/ohcivar.h#2 integrate .. //depot/projects/nsched/sys/dev/usb/ubser.c#8 integrate .. //depot/projects/nsched/sys/dev/usb/udbp.c#5 integrate .. //depot/projects/nsched/sys/dev/usb/ufm.c#4 integrate .. //depot/projects/nsched/sys/dev/usb/ugen.c#5 integrate .. //depot/projects/nsched/sys/dev/usb/uhci.c#3 integrate .. //depot/projects/nsched/sys/dev/usb/uhci_pci.c#2 integrate .. //depot/projects/nsched/sys/dev/usb/uhcivar.h#2 integrate .. //depot/projects/nsched/sys/dev/usb/uhid.c#6 integrate .. //depot/projects/nsched/sys/dev/usb/uhub.c#4 integrate .. //depot/projects/nsched/sys/dev/usb/ukbd.c#3 integrate .. //depot/projects/nsched/sys/dev/usb/ulpt.c#5 integrate .. //depot/projects/nsched/sys/dev/usb/umass.c#5 integrate .. //depot/projects/nsched/sys/dev/usb/umct.c#4 integrate .. //depot/projects/nsched/sys/dev/usb/ums.c#5 integrate .. //depot/projects/nsched/sys/dev/usb/uplcom.c#4 integrate .. //depot/projects/nsched/sys/dev/usb/urio.c#4 integrate .. //depot/projects/nsched/sys/dev/usb/usb.c#4 integrate .. //depot/projects/nsched/sys/dev/usb/usb_mem.c#2 integrate .. //depot/projects/nsched/sys/dev/usb/usb_port.h#2 integrate .. //depot/projects/nsched/sys/dev/usb/usb_quirks.c#4 integrate .. //depot/projects/nsched/sys/dev/usb/usb_subr.c#5 integrate .. //depot/projects/nsched/sys/dev/usb/usbdevs#10 integrate .. //depot/projects/nsched/sys/dev/usb/usbdi.c#2 integrate .. //depot/projects/nsched/sys/dev/usb/usbdi.h#2 integrate .. //depot/projects/nsched/sys/dev/usb/uscanner.c#4 integrate .. //depot/projects/nsched/sys/dev/vx/if_vx.c#3 integrate .. //depot/projects/nsched/sys/dev/vx/if_vx_eisa.c#2 integrate .. //depot/projects/nsched/sys/dev/vx/if_vx_pci.c#3 integrate .. //depot/projects/nsched/sys/dev/vx/if_vxreg.h#2 integrate .. //depot/projects/nsched/sys/dev/vx/if_vxvar.h#2 integrate .. //depot/projects/nsched/sys/dev/wi/if_wi.c#3 integrate .. //depot/projects/nsched/sys/dev/xe/if_xe.c#5 integrate .. //depot/projects/nsched/sys/dev/zs/zs_macio.c#3 integrate .. //depot/projects/nsched/sys/dev/zs/zs_sbus.c#3 integrate .. //depot/projects/nsched/sys/fs/devfs/devfs_vfsops.c#3 integrate .. //depot/projects/nsched/sys/fs/devfs/devfs_vnops.c#4 integrate .. //depot/projects/nsched/sys/fs/fdescfs/fdesc_vfsops.c#4 integrate .. //depot/projects/nsched/sys/fs/fifofs/fifo_vnops.c#8 integrate .. //depot/projects/nsched/sys/fs/hpfs/hpfs_vfsops.c#4 integrate .. //depot/projects/nsched/sys/fs/hpfs/hpfs_vnops.c#2 integrate .. //depot/projects/nsched/sys/fs/msdosfs/msdosfs_vfsops.c#5 integrate .. //depot/projects/nsched/sys/fs/msdosfs/msdosfs_vnops.c#3 integrate .. //depot/projects/nsched/sys/fs/ntfs/ntfs_subr.c#2 integrate .. //depot/projects/nsched/sys/fs/ntfs/ntfs_vfsops.c#4 integrate .. //depot/projects/nsched/sys/fs/nullfs/null_vfsops.c#4 integrate .. //depot/projects/nsched/sys/fs/nwfs/nwfs_vfsops.c#3 integrate .. //depot/projects/nsched/sys/fs/portalfs/portal_vfsops.c#4 integrate .. //depot/projects/nsched/sys/fs/pseudofs/pseudofs.c#3 integrate .. //depot/projects/nsched/sys/fs/pseudofs/pseudofs.h#3 integrate .. //depot/projects/nsched/sys/fs/pseudofs/pseudofs_vncache.c#2 integrate .. //depot/projects/nsched/sys/fs/pseudofs/pseudofs_vnops.c#3 integrate .. //depot/projects/nsched/sys/fs/smbfs/smbfs_vfsops.c#3 integrate .. //depot/projects/nsched/sys/fs/smbfs/smbfs_vnops.c#2 integrate .. //depot/projects/nsched/sys/fs/specfs/spec_vnops.c#6 integrate .. //depot/projects/nsched/sys/fs/udf/udf_vfsops.c#4 integrate .. //depot/projects/nsched/sys/fs/umapfs/umap_vfsops.c#4 integrate .. //depot/projects/nsched/sys/fs/unionfs/union_vfsops.c#4 integrate .. //depot/projects/nsched/sys/gdb/gdb_main.c#2 integrate .. //depot/projects/nsched/sys/geom/bde/g_bde.c#2 integrate .. //depot/projects/nsched/sys/geom/concat/g_concat.c#6 integrate .. //depot/projects/nsched/sys/geom/concat/g_concat.h#4 integrate .. //depot/projects/nsched/sys/geom/gate/g_gate.c#6 integrate .. //depot/projects/nsched/sys/geom/geom.h#4 integrate .. //depot/projects/nsched/sys/geom/geom_aes.c#2 integrate .. //depot/projects/nsched/sys/geom/geom_apple.c#2 integrate .. //depot/projects/nsched/sys/geom/geom_bsd.c#2 integrate .. //depot/projects/nsched/sys/geom/geom_ccd.c#2 integrate .. //depot/projects/nsched/sys/geom/geom_dev.c#4 integrate .. //depot/projects/nsched/sys/geom/geom_disk.c#5 integrate .. //depot/projects/nsched/sys/geom/geom_fox.c#2 integrate .. //depot/projects/nsched/sys/geom/geom_gpt.c#3 integrate .. //depot/projects/nsched/sys/geom/geom_io.c#5 integrate .. //depot/projects/nsched/sys/geom/geom_mbr.c#2 integrate .. //depot/projects/nsched/sys/geom/geom_mirror.c#2 delete .. //depot/projects/nsched/sys/geom/geom_pc98.c#2 integrate .. //depot/projects/nsched/sys/geom/geom_slice.c#5 integrate .. //depot/projects/nsched/sys/geom/geom_subr.c#3 integrate .. //depot/projects/nsched/sys/geom/geom_sunlabel.c#2 integrate .. //depot/projects/nsched/sys/geom/geom_vol_ffs.c#2 integrate .. //depot/projects/nsched/sys/geom/label/g_label.c#4 integrate .. //depot/projects/nsched/sys/geom/mirror/g_mirror.c#1 branch .. //depot/projects/nsched/sys/geom/mirror/g_mirror.h#1 branch .. //depot/projects/nsched/sys/geom/mirror/g_mirror_ctl.c#1 branch .. //depot/projects/nsched/sys/geom/nop/g_nop.c#3 integrate .. //depot/projects/nsched/sys/geom/nop/g_nop.h#2 integrate .. //depot/projects/nsched/sys/geom/raid3/g_raid3.c#1 branch .. //depot/projects/nsched/sys/geom/raid3/g_raid3.h#1 branch .. //depot/projects/nsched/sys/geom/raid3/g_raid3_ctl.c#1 branch .. //depot/projects/nsched/sys/geom/stripe/g_stripe.c#4 integrate .. //depot/projects/nsched/sys/geom/stripe/g_stripe.h#4 integrate .. //depot/projects/nsched/sys/geom/uzip/g_uzip.c#1 branch .. //depot/projects/nsched/sys/geom/vinum/geom_vinum.c#5 integrate .. //depot/projects/nsched/sys/geom/vinum/geom_vinum.h#2 integrate .. //depot/projects/nsched/sys/geom/vinum/geom_vinum_drive.c#4 integrate .. //depot/projects/nsched/sys/geom/vinum/geom_vinum_init.c#2 integrate .. //depot/projects/nsched/sys/geom/vinum/geom_vinum_plex.c#4 integrate .. //depot/projects/nsched/sys/geom/vinum/geom_vinum_state.c#2 integrate .. //depot/projects/nsched/sys/geom/vinum/geom_vinum_subr.c#3 integrate .. //depot/projects/nsched/sys/geom/vinum/geom_vinum_volume.c#3 integrate .. //depot/projects/nsched/sys/gnu/ext2fs/ext2_vfsops.c#6 integrate .. //depot/projects/nsched/sys/gnu/ext2fs/ext2_vnops.c#3 integrate .. //depot/projects/nsched/sys/i386/acpica/acpi_asus.c#5 integrate .. //depot/projects/nsched/sys/i386/acpica/acpi_machdep.c#6 integrate .. //depot/projects/nsched/sys/i386/acpica/acpi_panasonic.c#1 branch .. //depot/projects/nsched/sys/i386/acpica/acpi_toshiba.c#7 integrate .. //depot/projects/nsched/sys/i386/acpica/acpi_wakeup.c#5 integrate .. //depot/projects/nsched/sys/i386/acpica/genwakecode.sh#2 integrate .. //depot/projects/nsched/sys/i386/conf/GENERIC#5 integrate .. //depot/projects/nsched/sys/i386/conf/NOTES#9 integrate .. //depot/projects/nsched/sys/i386/i386/autoconf.c#4 integrate .. //depot/projects/nsched/sys/i386/i386/busdma_machdep.c#3 integrate .. //depot/projects/nsched/sys/i386/i386/db_trace.c#3 integrate .. //depot/projects/nsched/sys/i386/i386/elf_machdep.c#3 integrate .. //depot/projects/nsched/sys/i386/i386/intr_machdep.c#5 integrate .. //depot/projects/nsched/sys/i386/i386/io.c#1 branch .. //depot/projects/nsched/sys/i386/i386/io_apic.c#6 integrate .. //depot/projects/nsched/sys/i386/i386/legacy.c#5 integrate .. //depot/projects/nsched/sys/i386/i386/machdep.c#12 integrate .. //depot/projects/nsched/sys/i386/i386/mem.c#6 integrate .. //depot/projects/nsched/sys/i386/i386/mp_machdep.c#4 integrate .. //depot/projects/nsched/sys/i386/i386/mp_watchdog.c#1 branch .. //depot/projects/nsched/sys/i386/i386/pmap.c#12 integrate .. //depot/projects/nsched/sys/i386/i386/trap.c#4 integrate .. //depot/projects/nsched/sys/i386/i386/uio_machdep.c#5 integrate .. //depot/projects/nsched/sys/i386/i386/vm_machdep.c#7 integrate .. //depot/projects/nsched/sys/i386/include/cpu.h#5 integrate .. //depot/projects/nsched/sys/i386/include/critical.h#2 integrate .. //depot/projects/nsched/sys/i386/include/elf.h#2 integrate .. //depot/projects/nsched/sys/i386/include/float.h#5 integrate .. //depot/projects/nsched/sys/i386/include/intr_machdep.h#3 integrate .. //depot/projects/nsched/sys/i386/include/iodev.h#1 branch .. //depot/projects/nsched/sys/i386/include/memdev.h#1 branch .. //depot/projects/nsched/sys/i386/include/mp_watchdog.h#1 branch .. //depot/projects/nsched/sys/i386/include/param.h#4 integrate .. //depot/projects/nsched/sys/i386/include/vmparam.h#3 integrate .. //depot/projects/nsched/sys/i386/isa/atpic.c#5 integrate .. //depot/projects/nsched/sys/i386/linux/linux.h#2 integrate .. //depot/projects/nsched/sys/ia64/conf/GENERIC#4 integrate .. //depot/projects/nsched/sys/ia64/conf/SKI#4 integrate .. //depot/projects/nsched/sys/ia64/disasm/disasm_decode.c#2 integrate .. //depot/projects/nsched/sys/ia64/ia64/autoconf.c#3 integrate .. //depot/projects/nsched/sys/ia64/ia64/db_trace.c#3 integrate .. //depot/projects/nsched/sys/ia64/ia64/elf_machdep.c#3 integrate .. //depot/projects/nsched/sys/ia64/ia64/gdb_machdep.c#2 integrate .. //depot/projects/nsched/sys/ia64/ia64/locore.S#2 integrate .. //depot/projects/nsched/sys/ia64/ia64/machdep.c#4 integrate .. //depot/projects/nsched/sys/ia64/ia64/mem.c#5 integrate .. //depot/projects/nsched/sys/ia64/ia64/pmap.c#9 integrate .. //depot/projects/nsched/sys/ia64/ia64/sal.c#2 integrate .. //depot/projects/nsched/sys/ia64/ia64/syscall.S#2 integrate .. //depot/projects/nsched/sys/ia64/ia64/trap.c#4 integrate .. //depot/projects/nsched/sys/ia64/ia64/unaligned.c#2 integrate .. //depot/projects/nsched/sys/ia64/ia64/unwind.c#3 integrate .. //depot/projects/nsched/sys/ia64/include/cpu.h#5 integrate .. //depot/projects/nsched/sys/ia64/include/cpufunc.h#2 integrate .. //depot/projects/nsched/sys/ia64/include/critical.h#2 integrate .. //depot/projects/nsched/sys/ia64/include/float.h#4 integrate .. //depot/projects/nsched/sys/ia64/include/gdb_machdep.h#2 integrate .. //depot/projects/nsched/sys/ia64/include/md_var.h#3 integrate .. //depot/projects/nsched/sys/ia64/include/memdev.h#1 branch .. //depot/projects/nsched/sys/ia64/include/pcb.h#3 integrate .. //depot/projects/nsched/sys/ia64/include/pmap.h#5 integrate .. //depot/projects/nsched/sys/ia64/include/pte.h#2 integrate .. //depot/projects/nsched/sys/isa/psm.c#6 integrate .. //depot/projects/nsched/sys/isofs/cd9660/cd9660_vfsops.c#6 integrate .. //depot/projects/nsched/sys/kern/bus_if.m#3 integrate .. //depot/projects/nsched/sys/kern/device_if.m#3 integrate .. //depot/projects/nsched/sys/kern/imgact_elf.c#8 integrate .. //depot/projects/nsched/sys/kern/init_main.c#10 integrate .. //depot/projects/nsched/sys/kern/kern_acl.c#2 integrate .. //depot/projects/nsched/sys/kern/kern_condvar.c#4 integrate .. //depot/projects/nsched/sys/kern/kern_conf.c#7 integrate .. //depot/projects/nsched/sys/kern/kern_descrip.c#8 integrate .. //depot/projects/nsched/sys/kern/kern_event.c#6 integrate .. //depot/projects/nsched/sys/kern/kern_exec.c#9 integrate .. //depot/projects/nsched/sys/kern/kern_exit.c#16 integrate .. //depot/projects/nsched/sys/kern/kern_fork.c#8 integrate .. //depot/projects/nsched/sys/kern/kern_idle.c#3 integrate .. //depot/projects/nsched/sys/kern/kern_intr.c#6 integrate .. //depot/projects/nsched/sys/kern/kern_kse.c#22 integrate .. //depot/projects/nsched/sys/kern/kern_ktr.c#2 integrate .. //depot/projects/nsched/sys/kern/kern_ktrace.c#4 integrate .. //depot/projects/nsched/sys/kern/kern_lock.c#3 integrate .. //depot/projects/nsched/sys/kern/kern_malloc.c#5 integrate .. //depot/projects/nsched/sys/kern/kern_mbuf.c#2 integrate .. //depot/projects/nsched/sys/kern/kern_module.c#3 integrate .. //depot/projects/nsched/sys/kern/kern_mutex.c#5 integrate .. //depot/projects/nsched/sys/kern/kern_physio.c#3 integrate .. //depot/projects/nsched/sys/kern/kern_proc.c#10 integrate .. //depot/projects/nsched/sys/kern/kern_prot.c#6 integrate .. //depot/projects/nsched/sys/kern/kern_resource.c#7 integrate .. //depot/projects/nsched/sys/kern/kern_shutdown.c#7 integrate .. //depot/projects/nsched/sys/kern/kern_sig.c#9 integrate .. //depot/projects/nsched/sys/kern/kern_switch.c#4 integrate .. //depot/projects/nsched/sys/kern/kern_synch.c#8 integrate .. //depot/projects/nsched/sys/kern/kern_sysctl.c#4 integrate .. //depot/projects/nsched/sys/kern/kern_tc.c#2 integrate .. //depot/projects/nsched/sys/kern/kern_thread.c#31 integrate .. //depot/projects/nsched/sys/kern/kern_timeout.c#4 integrate .. //depot/projects/nsched/sys/kern/kern_xxx.c#4 integrate .. //depot/projects/nsched/sys/kern/link_elf.c#5 integrate .. //depot/projects/nsched/sys/kern/sched_4bsd.c#30 integrate .. //depot/projects/nsched/sys/kern/sched_ule.c#18 integrate .. //depot/projects/nsched/sys/kern/subr_disk.c#2 integrate .. //depot/projects/nsched/sys/kern/subr_kdb.c#2 integrate .. //depot/projects/nsched/sys/kern/subr_rman.c#4 integrate .. //depot/projects/nsched/sys/kern/subr_sleepqueue.c#5 integrate .. //depot/projects/nsched/sys/kern/subr_smp.c#3 integrate .. //depot/projects/nsched/sys/kern/subr_taskqueue.c#3 integrate .. //depot/projects/nsched/sys/kern/subr_trap.c#4 integrate .. //depot/projects/nsched/sys/kern/subr_turnstile.c#4 integrate .. //depot/projects/nsched/sys/kern/subr_witness.c#5 integrate .. //depot/projects/nsched/sys/kern/sys_pipe.c#2 integrate .. //depot/projects/nsched/sys/kern/sys_process.c#4 integrate .. //depot/projects/nsched/sys/kern/sys_socket.c#5 integrate .. //depot/projects/nsched/sys/kern/sysv_shm.c#5 integrate .. //depot/projects/nsched/sys/kern/tty.c#8 integrate .. //depot/projects/nsched/sys/kern/tty_cons.c#6 integrate .. //depot/projects/nsched/sys/kern/uipc_jumbo.c#2 integrate .. //depot/projects/nsched/sys/kern/uipc_mbuf.c#6 integrate .. //depot/projects/nsched/sys/kern/uipc_mbuf2.c#5 integrate .. //depot/projects/nsched/sys/kern/uipc_socket.c#11 integrate .. //depot/projects/nsched/sys/kern/uipc_socket2.c#9 integrate .. //depot/projects/nsched/sys/kern/uipc_syscalls.c#11 integrate .. //depot/projects/nsched/sys/kern/uipc_usrreq.c#10 integrate .. //depot/projects/nsched/sys/kern/vfs_aio.c#4 integrate .. //depot/projects/nsched/sys/kern/vfs_bio.c#7 integrate .. //depot/projects/nsched/sys/kern/vfs_cluster.c#3 integrate .. //depot/projects/nsched/sys/kern/vfs_init.c#4 integrate .. //depot/projects/nsched/sys/kern/vfs_lookup.c#4 integrate .. //depot/projects/nsched/sys/kern/vfs_mount.c#7 integrate .. //depot/projects/nsched/sys/kern/vfs_subr.c#10 integrate .. //depot/projects/nsched/sys/kern/vfs_syscalls.c#10 integrate .. //depot/projects/nsched/sys/kern/vfs_vnops.c#6 integrate .. //depot/projects/nsched/sys/libkern/iconv.c#2 integrate .. //depot/projects/nsched/sys/modules/Makefile#7 integrate .. //depot/projects/nsched/sys/modules/acpi/Makefile#3 integrate .. //depot/projects/nsched/sys/modules/acpi/acpi_asus/Makefile#3 integrate .. //depot/projects/nsched/sys/modules/acpi/acpi_panasonic/Makefile#1 branch .. //depot/projects/nsched/sys/modules/acpi/acpi_toshiba/Makefile#3 integrate .. //depot/projects/nsched/sys/modules/acpi/acpi_video/Makefile#3 integrate .. //depot/projects/nsched/sys/modules/agp/Makefile#2 integrate .. //depot/projects/nsched/sys/modules/aic7xxx/ahc/Makefile#2 integrate .. //depot/projects/nsched/sys/modules/aic7xxx/ahc/ahc_eisa/Makefile#3 integrate .. //depot/projects/nsched/sys/modules/aic7xxx/ahc/ahc_isa/Makefile#1 branch .. //depot/projects/nsched/sys/modules/cbb/Makefile#2 integrate .. //depot/projects/nsched/sys/modules/esp/Makefile#2 integrate .. //depot/projects/nsched/sys/modules/geom/Makefile#5 integrate .. //depot/projects/nsched/sys/modules/geom/geom_mirror/Makefile#1 branch .. //depot/projects/nsched/sys/modules/geom/geom_raid3/Makefile#1 branch .. //depot/projects/nsched/sys/modules/geom/geom_uzip/Makefile#1 branch .. //depot/projects/nsched/sys/modules/hme/Makefile#2 integrate .. //depot/projects/nsched/sys/modules/io/Makefile#1 branch .. //depot/projects/nsched/sys/modules/ip_mroute_mod/Makefile#2 integrate .. //depot/projects/nsched/sys/modules/ipfw/Makefile#2 integrate .. //depot/projects/nsched/sys/modules/isp/Makefile#2 integrate .. //depot/projects/nsched/sys/modules/linprocfs/Makefile#2 integrate .. //depot/projects/nsched/sys/modules/md/Makefile#2 integrate .. //depot/projects/nsched/sys/modules/mem/Makefile#1 branch .. //depot/projects/nsched/sys/modules/netgraph/atm/Makefile#2 integrate .. //depot/projects/nsched/sys/modules/netgraph/atm/ccatm/Makefile#1 branch .. //depot/projects/nsched/sys/modules/null/Makefile#2 delete .. //depot/projects/nsched/sys/modules/pf/Makefile#4 integrate .. //depot/projects/nsched/sys/modules/splash/bmp/Makefile#2 integrate .. //depot/projects/nsched/sys/modules/splash/bmp/splash_bmp.c#3 delete .. //depot/projects/nsched/sys/modules/splash/pcx/Makefile#2 integrate .. //depot/projects/nsched/sys/modules/splash/pcx/splash_pcx.c#3 delete .. //depot/projects/nsched/sys/modules/uart/Makefile#4 integrate .. //depot/projects/nsched/sys/net/bpf.c#7 integrate .. //depot/projects/nsched/sys/net/bridge.c#6 integrate .. //depot/projects/nsched/sys/net/if.c#7 integrate .. //depot/projects/nsched/sys/net/if.h#5 integrate .. //depot/projects/nsched/sys/net/if_clone.c#2 integrate .. //depot/projects/nsched/sys/net/if_ef.c#5 integrate .. //depot/projects/nsched/sys/net/if_ethersubr.c#10 integrate .. //depot/projects/nsched/sys/net/if_gre.c#7 integrate .. //depot/projects/nsched/sys/net/if_loop.c#7 integrate .. //depot/projects/nsched/sys/net/if_media.h#3 integrate .. //depot/projects/nsched/sys/net/if_sl.c#7 integrate .. //depot/projects/nsched/sys/net/if_tap.c#5 integrate .. //depot/projects/nsched/sys/net/if_var.h#7 integrate .. //depot/projects/nsched/sys/net/if_vlan.c#8 integrate .. //depot/projects/nsched/sys/net/route.c#4 integrate .. //depot/projects/nsched/sys/net/route.h#4 integrate .. //depot/projects/nsched/sys/net/rtsock.c#6 integrate .. //depot/projects/nsched/sys/net80211/ieee80211_output.c#3 integrate .. //depot/projects/nsched/sys/net80211/ieee80211_proto.c#2 integrate .. //depot/projects/nsched/sys/netatalk/aarp.c#5 integrate .. //depot/projects/nsched/sys/netatalk/at_control.c#3 integrate .. //depot/projects/nsched/sys/netatalk/ddp_input.c#4 integrate .. //depot/projects/nsched/sys/netatm/spans/spans_kxdr.c#2 integrate .. //depot/projects/nsched/sys/netatm/uni/unisig_subr.c#2 integrate .. //depot/projects/nsched/sys/netgraph/atm/ccatm/ng_ccatm.c#1 branch .. //depot/projects/nsched/sys/netgraph/atm/ccatm/ng_ccatm_cust.h#1 branch .. //depot/projects/nsched/sys/netgraph/atm/ng_atm.c#3 integrate .. //depot/projects/nsched/sys/netgraph/atm/ng_ccatm.h#1 branch .. //depot/projects/nsched/sys/netgraph/bluetooth/include/ng_btsocket.h#3 integrate .. //depot/projects/nsched/sys/netgraph/bluetooth/include/ng_hci.h#2 integrate .. //depot/projects/nsched/sys/netgraph/netgraph.h#5 integrate .. //depot/projects/nsched/sys/netgraph/ng_base.c#6 integrate .. //depot/projects/nsched/sys/netgraph/ng_bridge.c#4 integrate .. //depot/projects/nsched/sys/netgraph/ng_device.c#5 integrate .. //depot/projects/nsched/sys/netgraph/ng_ether.c#6 integrate .. //depot/projects/nsched/sys/netgraph/ng_fec.c#8 integrate .. //depot/projects/nsched/sys/netgraph/ng_gif.c#4 integrate .. //depot/projects/nsched/sys/netgraph/ng_l2tp.c#5 integrate .. //depot/projects/nsched/sys/netgraph/ng_l2tp.h#2 integrate .. //depot/projects/nsched/sys/netgraph/ng_message.h#3 integrate .. //depot/projects/nsched/sys/netgraph/ng_parse.c#4 integrate .. //depot/projects/nsched/sys/netgraph/ng_ppp.c#5 integrate .. //depot/projects/nsched/sys/netgraph/ng_pppoe.c#5 integrate .. //depot/projects/nsched/sys/netgraph/ng_pppoe.h#2 integrate .. //depot/projects/nsched/sys/netgraph/ng_sample.c#4 integrate .. //depot/projects/nsched/sys/netgraph/ng_socket.c#4 integrate .. //depot/projects/nsched/sys/netgraph/ng_source.c#3 integrate .. //depot/projects/nsched/sys/netinet/icmp_var.h#3 integrate .. //depot/projects/nsched/sys/netinet/if_atm.c#2 integrate .. //depot/projects/nsched/sys/netinet/if_atm.h#2 integrate .. //depot/projects/nsched/sys/netinet/igmp.h#3 integrate .. //depot/projects/nsched/sys/netinet/in.c#3 integrate .. //depot/projects/nsched/sys/netinet/in.h#5 integrate .. //depot/projects/nsched/sys/netinet/in_pcb.c#6 integrate .. //depot/projects/nsched/sys/netinet/in_pcb.h#5 integrate .. //depot/projects/nsched/sys/netinet/in_proto.c#4 integrate .. //depot/projects/nsched/sys/netinet/in_var.h#3 integrate .. //depot/projects/nsched/sys/netinet/ip_divert.c#7 integrate .. //depot/projects/nsched/sys/netinet/ip_dummynet.c#4 integrate .. //depot/projects/nsched/sys/netinet/ip_dummynet.h#2 integrate .. //depot/projects/nsched/sys/netinet/ip_fastfwd.c#4 integrate .. //depot/projects/nsched/sys/netinet/ip_fw.h#4 integrate .. //depot/projects/nsched/sys/netinet/ip_fw2.c#8 integrate .. //depot/projects/nsched/sys/netinet/ip_fw_pfil.c#1 branch .. //depot/projects/nsched/sys/netinet/ip_gre.c#2 integrate .. //depot/projects/nsched/sys/netinet/ip_icmp.c#6 integrate .. //depot/projects/nsched/sys/netinet/ip_id.c#2 integrate .. //depot/projects/nsched/sys/netinet/ip_input.c#7 integrate .. //depot/projects/nsched/sys/netinet/ip_mroute.c#6 integrate .. //depot/projects/nsched/sys/netinet/ip_mroute.h#3 integrate .. //depot/projects/nsched/sys/netinet/ip_output.c#7 integrate .. //depot/projects/nsched/sys/netinet/ip_var.h#4 integrate .. //depot/projects/nsched/sys/netinet/raw_ip.c#6 integrate .. //depot/projects/nsched/sys/netinet/tcp.h#4 integrate .. //depot/projects/nsched/sys/netinet/tcp_debug.h#3 integrate .. //depot/projects/nsched/sys/netinet/tcp_hostcache.c#3 integrate .. //depot/projects/nsched/sys/netinet/tcp_input.c#9 integrate .. //depot/projects/nsched/sys/netinet/tcp_output.c#6 integrate .. //depot/projects/nsched/sys/netinet/tcp_sack.c#2 integrate .. //depot/projects/nsched/sys/netinet/tcp_subr.c#7 integrate .. //depot/projects/nsched/sys/netinet/tcp_syncache.c#6 integrate .. //depot/projects/nsched/sys/netinet/tcp_timer.c#4 integrate .. //depot/projects/nsched/sys/netinet/tcp_timer.h#3 integrate .. //depot/projects/nsched/sys/netinet/tcp_usrreq.c#7 integrate .. //depot/projects/nsched/sys/netinet/tcp_var.h#6 integrate .. //depot/projects/nsched/sys/netinet/tcpip.h#3 integrate .. //depot/projects/nsched/sys/netinet/udp_usrreq.c#6 integrate .. //depot/projects/nsched/sys/netinet/udp_var.h#3 integrate .. //depot/projects/nsched/sys/netinet6/frag6.c#2 integrate .. //depot/projects/nsched/sys/netinet6/in6_pcb.c#4 integrate .. //depot/projects/nsched/sys/netinet6/in6_pcb.h#3 integrate .. //depot/projects/nsched/sys/netinet6/in6_proto.c#3 integrate .. //depot/projects/nsched/sys/netinet6/ip6_id.c#2 integrate .. //depot/projects/nsched/sys/netinet6/ip6_input.c#5 integrate .. //depot/projects/nsched/sys/netinet6/ip6_output.c#4 integrate .. //depot/projects/nsched/sys/netinet6/ip6_var.h#3 integrate .. //depot/projects/nsched/sys/netinet6/ipsec.c#2 integrate .. //depot/projects/nsched/sys/netinet6/raw_ip6.c#3 integrate .. //depot/projects/nsched/sys/netinet6/udp6_usrreq.c#3 integrate .. //depot/projects/nsched/sys/netipsec/xform_ipip.c#3 integrate .. //depot/projects/nsched/sys/netipx/ipx_cksum.c#2 integrate .. //depot/projects/nsched/sys/netsmb/smb_conn.c#2 integrate .. //depot/projects/nsched/sys/nfs4client/nfs4_vfsops.c#5 integrate .. //depot/projects/nsched/sys/nfs4client/nfs4_vnops.c#3 integrate .. //depot/projects/nsched/sys/nfsclient/bootp_subr.c#4 integrate .. //depot/projects/nsched/sys/nfsclient/nfs_diskless.c#3 integrate .. //depot/projects/nsched/sys/nfsclient/nfs_vfsops.c#5 integrate .. //depot/projects/nsched/sys/nfsclient/nfs_vnops.c#5 integrate .. //depot/projects/nsched/sys/nfsserver/nfs_srvsock.c#5 integrate .. //depot/projects/nsched/sys/nfsserver/nfs_srvsubs.c#6 integrate .. //depot/projects/nsched/sys/opencrypto/cryptodev.c#4 integrate .. //depot/projects/nsched/sys/pc98/conf/GENERIC#5 integrate .. //depot/projects/nsched/sys/pc98/conf/NOTES#8 integrate .. //depot/projects/nsched/sys/pc98/i386/machdep.c#7 integrate .. //depot/projects/nsched/sys/pc98/pc98/sio.c#10 integrate .. //depot/projects/nsched/sys/pccard/i82365.h#2 integrate .. //depot/projects/nsched/sys/pccard/pcic.c#2 integrate .. //depot/projects/nsched/sys/pccard/pcic_isa.c#2 integrate .. //depot/projects/nsched/sys/pci/agp.c#5 integrate .. //depot/projects/nsched/sys/pci/agp_ali.c#4 integrate .. //depot/projects/nsched/sys/pci/agp_amd.c#4 integrate .. //depot/projects/nsched/sys/pci/agp_amd64.c#1 branch .. //depot/projects/nsched/sys/pci/agp_intel.c#4 integrate .. //depot/projects/nsched/sys/pci/agp_sis.c#4 integrate .. //depot/projects/nsched/sys/pci/agp_via.c#6 integrate .. //depot/projects/nsched/sys/pci/agpreg.h#4 integrate .. //depot/projects/nsched/sys/pci/if_dc.c#7 integrate .. //depot/projects/nsched/sys/pci/if_de.c#6 integrate .. //depot/projects/nsched/sys/pci/if_rl.c#9 integrate .. //depot/projects/nsched/sys/pci/if_sk.c#6 integrate .. //depot/projects/nsched/sys/pci/if_skreg.h#2 integrate .. //depot/projects/nsched/sys/pci/if_vr.c#8 integrate .. //depot/projects/nsched/sys/pci/if_xl.c#8 integrate .. //depot/projects/nsched/sys/powerpc/conf/GENERIC#4 integrate .. //depot/projects/nsched/sys/powerpc/conf/GENERIC.hints#1 branch .. //depot/projects/nsched/sys/powerpc/include/cpu.h#2 integrate .. //depot/projects/nsched/sys/powerpc/include/cpufunc.h#3 integrate .. //depot/projects/nsched/sys/powerpc/include/critical.h#2 integrate .. //depot/projects/nsched/sys/powerpc/include/db_machdep.h#3 integrate .. //depot/projects/nsched/sys/powerpc/include/float.h#4 integrate .. //depot/projects/nsched/sys/powerpc/include/frame.h#2 integrate .. //depot/projects/nsched/sys/powerpc/include/kdb.h#2 integrate .. //depot/projects/nsched/sys/powerpc/include/memdev.h#1 branch .. //depot/projects/nsched/sys/powerpc/include/ofw_machdep.h#2 integrate .. //depot/projects/nsched/sys/powerpc/include/pmap.h#4 integrate .. //depot/projects/nsched/sys/powerpc/include/reg.h#2 integrate .. //depot/projects/nsched/sys/powerpc/include/ucontext.h#2 integrate .. //depot/projects/nsched/sys/powerpc/ofw/ofw_pcib_pci.c#3 integrate .. //depot/projects/nsched/sys/powerpc/ofw/ofw_syscons.c#4 integrate .. //depot/projects/nsched/sys/powerpc/powermac/ata_kauai.c#3 integrate .. //depot/projects/nsched/sys/powerpc/powermac/ata_macio.c#3 integrate .. //depot/projects/nsched/sys/powerpc/powermac/grackle.c#4 integrate .. //depot/projects/nsched/sys/powerpc/powermac/hrowpic.c#4 integrate .. //depot/projects/nsched/sys/powerpc/powermac/macio.c#4 integrate .. //depot/projects/nsched/sys/powerpc/powermac/maciovar.h#3 integrate .. //depot/projects/nsched/sys/powerpc/powermac/openpic_macio.c#4 integrate .. //depot/projects/nsched/sys/powerpc/powermac/pswitch.c#2 integrate .. //depot/projects/nsched/sys/powerpc/powermac/uninorth.c#4 integrate .. //depot/projects/nsched/sys/powerpc/powerpc/db_interface.c#3 integrate .. //depot/projects/nsched/sys/powerpc/powerpc/db_trace.c#3 integrate .. //depot/projects/nsched/sys/powerpc/powerpc/elf_machdep.c#4 integrate .. //depot/projects/nsched/sys/powerpc/powerpc/genassym.c#4 integrate .. //depot/projects/nsched/sys/powerpc/powerpc/locore.S#3 integrate .. //depot/projects/nsched/sys/powerpc/powerpc/machdep.c#3 integrate .. //depot/projects/nsched/sys/powerpc/powerpc/mem.c#1 branch .. //depot/projects/nsched/sys/powerpc/powerpc/nexus.c#3 integrate .. //depot/projects/nsched/sys/powerpc/powerpc/ofw_machdep.c#2 integrate .. //depot/projects/nsched/sys/powerpc/powerpc/ofwmagic.S#2 integrate .. //depot/projects/nsched/sys/powerpc/powerpc/openpic.c#3 integrate .. //depot/projects/nsched/sys/powerpc/powerpc/pmap.c#7 integrate .. //depot/projects/nsched/sys/powerpc/powerpc/swtch.S#2 integrate .. //depot/projects/nsched/sys/powerpc/powerpc/trap.c#4 integrate .. //depot/projects/nsched/sys/powerpc/powerpc/trap_subr.S#3 integrate .. //depot/projects/nsched/sys/powerpc/powerpc/vm_machdep.c#5 integrate .. //depot/projects/nsched/sys/powerpc/psim/iobus.c#4 integrate .. //depot/projects/nsched/sys/powerpc/psim/openpic_iobus.c#4 integrate .. //depot/projects/nsched/sys/security/mac/mac_label.c#2 integrate .. //depot/projects/nsched/sys/security/mac_biba/mac_biba.c#5 integrate .. //depot/projects/nsched/sys/security/mac_bsdextended/mac_bsdextended.c#2 integrate .. //depot/projects/nsched/sys/security/mac_lomac/mac_lomac.c#4 integrate .. //depot/projects/nsched/sys/security/mac_mls/mac_mls.c#5 integrate .. //depot/projects/nsched/sys/sparc64/central/central.c#3 integrate .. //depot/projects/nsched/sys/sparc64/central/centralvar.h#2 delete .. //depot/projects/nsched/sys/sparc64/conf/GENERIC#5 integrate .. //depot/projects/nsched/sys/sparc64/conf/NOTES#5 integrate .. //depot/projects/nsched/sys/sparc64/ebus/ebus.c#6 integrate .. //depot/projects/nsched/sys/sparc64/ebus/ebusvar.h#2 delete .. //depot/projects/nsched/sys/sparc64/fhc/fhc.c#4 integrate .. //depot/projects/nsched/sys/sparc64/fhc/fhc_central.c#3 integrate .. //depot/projects/nsched/sys/sparc64/fhc/fhc_nexus.c#3 integrate .. //depot/projects/nsched/sys/sparc64/fhc/fhcvar.h#2 integrate .. //depot/projects/nsched/sys/sparc64/include/cpu.h#5 integrate .. //depot/projects/nsched/sys/sparc64/include/critical.h#2 integrate .. //depot/projects/nsched/sys/sparc64/include/eeprom.h#3 integrate .. //depot/projects/nsched/sys/sparc64/include/memdev.h#1 branch .. //depot/projects/nsched/sys/sparc64/include/ofw_bus.h#3 integrate .. //depot/projects/nsched/sys/sparc64/include/ofw_machdep.h#2 integrate .. //depot/projects/nsched/sys/sparc64/include/pmap.h#4 integrate .. //depot/projects/nsched/sys/sparc64/isa/isa.c#3 integrate .. //depot/projects/nsched/sys/sparc64/pci/apb.c#4 integrate .. //depot/projects/nsched/sys/sparc64/pci/ofw_pci.h#3 integrate .. //depot/projects/nsched/sys/sparc64/pci/ofw_pci_if.m#3 integrate .. //depot/projects/nsched/sys/sparc64/pci/ofw_pcib.c#3 integrate .. //depot/projects/nsched/sys/sparc64/pci/ofw_pcib_subr.c#3 integrate .. //depot/projects/nsched/sys/sparc64/pci/ofw_pcib_subr.h#3 integrate .. //depot/projects/nsched/sys/sparc64/pci/ofw_pcibus.c#2 integrate .. //depot/projects/nsched/sys/sparc64/pci/psycho.c#7 integrate .. //depot/projects/nsched/sys/sparc64/sbus/sbus.c#6 integrate .. //depot/projects/nsched/sys/sparc64/sbus/sbusvar.h#3 integrate .. //depot/projects/nsched/sys/sparc64/sparc64/db_trace.c#3 integrate .. //depot/projects/nsched/sys/sparc64/sparc64/eeprom.c#3 integrate .. //depot/projects/nsched/sys/sparc64/sparc64/eeprom_ebus.c#4 integrate .. //depot/projects/nsched/sys/sparc64/sparc64/eeprom_fhc.c#4 delete .. //depot/projects/nsched/sys/sparc64/sparc64/eeprom_sbus.c#4 integrate .. //depot/projects/nsched/sys/sparc64/sparc64/elf_machdep.c#3 integrate .. //depot/projects/nsched/sys/sparc64/sparc64/machdep.c#4 integrate .. //depot/projects/nsched/sys/sparc64/sparc64/mem.c#5 integrate .. //depot/projects/nsched/sys/sparc64/sparc64/nexus.c#6 integrate .. //depot/projects/nsched/sys/sparc64/sparc64/ofw_bus.c#3 integrate .. //depot/projects/nsched/sys/sparc64/sparc64/ofw_machdep.c#3 integrate .. //depot/projects/nsched/sys/sparc64/sparc64/pmap.c#6 integrate .. //depot/projects/nsched/sys/sparc64/sparc64/tsb.c#2 integrate .. //depot/projects/nsched/sys/sparc64/sparc64/uio_machdep.c#5 integrate .. //depot/projects/nsched/sys/sys/_task.h#2 integrate .. //depot/projects/nsched/sys/sys/bio.h#4 integrate .. //depot/projects/nsched/sys/sys/buf.h#3 integrate .. //depot/projects/nsched/sys/sys/cdefs.h#3 integrate .. //depot/projects/nsched/sys/sys/event.h#4 integrate .. //depot/projects/nsched/sys/sys/eventvar.h#3 integrate .. //depot/projects/nsched/sys/sys/fdcio.h#2 integrate .. //depot/projects/nsched/sys/sys/filedesc.h#3 integrate .. //depot/projects/nsched/sys/sys/gpt.h#2 integrate .. //depot/projects/nsched/sys/sys/imgact_elf.h#2 integrate .. //depot/projects/nsched/sys/sys/kdb.h#2 integrate .. //depot/projects/nsched/sys/sys/kse.h#3 integrate .. //depot/projects/nsched/sys/sys/ktr.h#2 integrate .. //depot/projects/nsched/sys/sys/linker_set.h#2 integrate .. //depot/projects/nsched/sys/sys/malloc.h#3 integrate .. //depot/projects/nsched/sys/sys/mbuf.h#8 integrate .. //depot/projects/nsched/sys/sys/mdioctl.h#3 integrate .. //depot/projects/nsched/sys/sys/memrange.h#2 integrate .. //depot/projects/nsched/sys/sys/mount.h#7 integrate .. //depot/projects/nsched/sys/sys/mouse.h#2 integrate .. //depot/projects/nsched/sys/sys/mutex.h#3 integrate .. //depot/projects/nsched/sys/sys/param.h#10 integrate .. //depot/projects/nsched/sys/sys/pipe.h#2 integrate .. //depot/projects/nsched/sys/sys/proc.h#21 integrate .. //depot/projects/nsched/sys/sys/ptrace.h#4 integrate .. //depot/projects/nsched/sys/sys/resourcevar.h#5 integrate .. //depot/projects/nsched/sys/sys/selinfo.h#3 integrate .. //depot/projects/nsched/sys/sys/sleepqueue.h#3 integrate .. //depot/projects/nsched/sys/sys/socket.h#6 integrate .. //depot/projects/nsched/sys/sys/sysctl.h#6 integrate .. //depot/projects/nsched/sys/sys/systm.h#7 integrate .. //depot/projects/nsched/sys/sys/taskqueue.h#2 integrate .. //depot/projects/nsched/sys/sys/vnode.h#8 integrate .. //depot/projects/nsched/sys/ufs/ffs/ffs_alloc.c#6 integrate .. //depot/projects/nsched/sys/ufs/ffs/ffs_extern.h#3 integrate .. //depot/projects/nsched/sys/ufs/ffs/ffs_inode.c#3 integrate .. //depot/projects/nsched/sys/ufs/ffs/ffs_snapshot.c#6 integrate .. //depot/projects/nsched/sys/ufs/ffs/ffs_softdep.c#4 integrate .. //depot/projects/nsched/sys/ufs/ffs/ffs_vfsops.c#7 integrate .. //depot/projects/nsched/sys/ufs/ffs/ffs_vnops.c#4 integrate .. //depot/projects/nsched/sys/ufs/ffs/fs.h#5 integrate .. //depot/projects/nsched/sys/ufs/ufs/inode.h#3 integrate .. //depot/projects/nsched/sys/ufs/ufs/ufs_acl.c#2 integrate .. //depot/projects/nsched/sys/ufs/ufs/ufs_dirhash.c#2 integrate .. //depot/projects/nsched/sys/ufs/ufs/ufs_inode.c#3 integrate .. //depot/projects/nsched/sys/ufs/ufs/ufs_lookup.c#3 integrate .. //depot/projects/nsched/sys/ufs/ufs/ufs_quota.c#4 integrate .. //depot/projects/nsched/sys/ufs/ufs/ufs_vnops.c#3 integrate .. //depot/projects/nsched/sys/vm/device_pager.c#5 integrate .. //depot/projects/nsched/sys/vm/swap_pager.c#7 integrate .. //depot/projects/nsched/sys/vm/uma.h#3 integrate .. //depot/projects/nsched/sys/vm/uma_core.c#5 integrate .. //depot/projects/nsched/sys/vm/uma_dbg.c#3 integrate .. //depot/projects/nsched/sys/vm/uma_dbg.h#2 integrate .. //depot/projects/nsched/sys/vm/uma_int.h#3 integrate .. //depot/projects/nsched/sys/vm/vm.h#3 integrate .. //depot/projects/nsched/sys/vm/vm_contig.c#4 integrate .. //depot/projects/nsched/sys/vm/vm_extern.h#4 integrate .. //depot/projects/nsched/sys/vm/vm_fault.c#4 integrate .. //depot/projects/nsched/sys/vm/vm_glue.c#6 integrate .. //depot/projects/nsched/sys/vm/vm_init.c#3 integrate .. //depot/projects/nsched/sys/vm/vm_kern.c#5 integrate .. //depot/projects/nsched/sys/vm/vm_map.c#8 integrate .. //depot/projects/nsched/sys/vm/vm_map.h#6 integrate .. //depot/projects/nsched/sys/vm/vm_meter.c#3 integrate .. //depot/projects/nsched/sys/vm/vm_mmap.c#5 integrate .. //depot/projects/nsched/sys/vm/vm_object.c#5 integrate .. //depot/projects/nsched/sys/vm/vm_object.h#3 integrate .. //depot/projects/nsched/sys/vm/vm_page.c#8 integrate .. //depot/projects/nsched/sys/vm/vm_page.h#5 integrate .. //depot/projects/nsched/sys/vm/vnode_pager.c#4 integrate Differences ... ==== //depot/projects/nsched/sys/Makefile#3 (text+ko) ==== @@ -1,9 +1,11 @@ -# $FreeBSD: src/sys/Makefile,v 1.30 2004/05/16 00:19:12 cognet Exp $ +# $FreeBSD: src/sys/Makefile,v 1.31 2004/08/19 09:54:28 des Exp $ # The boot loader +.if !defined(NO_BOOT) .if ${MACHINE_ARCH} != "arm" SUBDIR= boot .endif +.endif # Loadable kernel modules .if defined(MODULES_WITH_WORLD) ==== //depot/projects/nsched/sys/alpha/alpha/autoconf.c#3 (text+ko) ==== @@ -25,12 +25,10 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/autoconf.c,v 1.59 2004/07/08 22:35:33 brian Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/autoconf.c,v 1.60 2004/07/28 21:54:56 phk Exp $"); #include "opt_bootp.h" #include "opt_isa.h" -#include "opt_nfs.h" -#include "opt_nfsroot.h" #include #include @@ -67,8 +65,6 @@ device_t isa_bus_device = 0; #endif -extern int nfs_diskless_valid; /* XXX use include file */ - static void configure_start() >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Aug 22 08:14:08 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 247EE16A4D0; Sun, 22 Aug 2004 08:14:08 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id EA4E716A4CE for ; Sun, 22 Aug 2004 08:14:07 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CCC9D43D2F for ; Sun, 22 Aug 2004 08:14:07 +0000 (GMT) (envelope-from julian@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7M8E7FU013003 for ; Sun, 22 Aug 2004 08:14:07 GMT (envelope-from julian@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7M8E7Mk013000 for perforce@freebsd.org; Sun, 22 Aug 2004 08:14:07 GMT (envelope-from julian@freebsd.org) Date: Sun, 22 Aug 2004 08:14:07 GMT Message-Id: <200408220814.i7M8E7Mk013000@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to julian@freebsd.org using -f From: Julian Elischer To: Perforce Change Reviews Subject: PERFORCE change 60246 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Aug 2004 08:14:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=60246 Change 60246 by julian@julian_ref on 2004/08/22 08:13:44 put "e.diff" into nsched branch of p4 Affected files ... .. //depot/projects/nsched/sys/alpha/alpha/machdep.c#4 edit .. //depot/projects/nsched/sys/amd64/amd64/machdep.c#7 edit .. //depot/projects/nsched/sys/arm/sa11x0/assabet_machdep.c#3 edit .. //depot/projects/nsched/sys/ddb/db_ps.c#5 edit .. //depot/projects/nsched/sys/i386/i386/machdep.c#13 edit .. //depot/projects/nsched/sys/ia64/ia64/machdep.c#5 edit .. //depot/projects/nsched/sys/kern/init_main.c#11 edit .. //depot/projects/nsched/sys/kern/kern_exec.c#10 edit .. //depot/projects/nsched/sys/kern/kern_exit.c#17 edit .. //depot/projects/nsched/sys/kern/kern_fork.c#9 edit .. //depot/projects/nsched/sys/kern/kern_kse.c#23 edit .. //depot/projects/nsched/sys/kern/kern_proc.c#11 edit .. //depot/projects/nsched/sys/kern/kern_switch.c#5 edit .. //depot/projects/nsched/sys/kern/kern_synch.c#9 edit .. //depot/projects/nsched/sys/kern/kern_thr.c#12 edit .. //depot/projects/nsched/sys/kern/kern_thread.c#32 edit .. //depot/projects/nsched/sys/kern/sched_4bsd.c#31 edit .. //depot/projects/nsched/sys/kern/sched_ule.c#19 edit .. //depot/projects/nsched/sys/pc98/i386/machdep.c#8 edit .. //depot/projects/nsched/sys/powerpc/powerpc/machdep.c#4 edit .. //depot/projects/nsched/sys/sparc64/sparc64/machdep.c#5 edit .. //depot/projects/nsched/sys/sys/proc.h#22 edit .. //depot/projects/nsched/sys/sys/sched.h#11 edit Differences ... ==== //depot/projects/nsched/sys/alpha/alpha/machdep.c#4 (text+ko) ==== @@ -846,7 +846,7 @@ } - proc_linkup(&proc0, &ksegrp0, &kse0, &thread0); + proc_linkup(&proc0, &ksegrp0, &thread0); /* * Init mapping for u page(s) for proc 0 */ ==== //depot/projects/nsched/sys/amd64/amd64/machdep.c#7 (text+ko) ==== @@ -1112,7 +1112,7 @@ * This may be done better later if it gets more high level * components in it. If so just link td->td_proc here. */ - proc_linkup(&proc0, &ksegrp0, &kse0, &thread0); + proc_linkup(&proc0, &ksegrp0, &thread0); preload_metadata = (caddr_t)(uintptr_t)(modulep + KERNBASE); preload_bootstrap_relocate(KERNBASE); ==== //depot/projects/nsched/sys/arm/sa11x0/assabet_machdep.c#3 (text+ko) ==== @@ -370,7 +370,7 @@ /* Set stack for exception handlers */ - proc_linkup(&proc0, &ksegrp0, &kse0, &thread0); + proc_linkup(&proc0, &ksegrp0, &thread0); proc0.p_uarea = (struct user *) proc0_uarea.pv_va; thread0.td_kstack = kernelstack.pv_va; thread0.td_pcb = (struct pcb *) ==== //depot/projects/nsched/sys/ddb/db_ps.c#5 (text+ko) ==== ==== //depot/projects/nsched/sys/i386/i386/machdep.c#13 (text+ko) ==== @@ -1943,17 +1943,15 @@ int gsel_tss, metadata_missing, off, x; struct pcpu *pc; - /* - * Set up things that proc0 would have associated with it already - * if it were taken from the process allocation cache. - * This includes a ksegrp, a thread, and a stack and uarea to go - * with the thread. The pcb is deliniated ready for use. - * Note that the stack for proc0 has no guard page. - */ proc0.p_uarea = proc0uarea; thread0.td_kstack = proc0kstack; thread0.td_pcb = (struct pcb *) (thread0.td_kstack + KSTACK_PAGES * PAGE_SIZE) - 1; + + /* + * This may be done better later if it gets more high level + * components in it. If so just link td->td_proc here. + */ proc_linkup(&proc0, &ksegrp0, &thread0); metadata_missing = 0; ==== //depot/projects/nsched/sys/ia64/ia64/machdep.c#5 (text+ko) ==== @@ -724,7 +724,7 @@ msgbufp = (struct msgbuf *)pmap_steal_memory(MSGBUF_SIZE); msgbufinit(msgbufp, MSGBUF_SIZE); - proc_linkup(&proc0, &ksegrp0, &kse0, &thread0); + proc_linkup(&proc0, &ksegrp0, &thread0); /* * Init mapping for u page(s) for proc 0 */ ==== //depot/projects/nsched/sys/kern/init_main.c#11 (text+ko) ==== @@ -338,11 +338,11 @@ kseinit(); /* set up kse specific stuff e.g. upcall zone*/ /* - * initialise scheduler resources. + * Initialise scheduler resources. * Add scheduler specific parts to proc, ksegrp, thread as needed. */ schedinit(); /* scheduler gets its house in order */ - + schedinit2(); /* temporary */ /* * Initialize sleep queue hash table */ @@ -370,8 +370,6 @@ session0.s_leader = p; p->p_sysent = &null_sysvec; - - p->p_flag = P_SYSTEM; p->p_sflag = PS_INMEM; p->p_state = PRS_NORMAL; ==== //depot/projects/nsched/sys/kern/kern_exec.c#10 (text+ko) ==== @@ -53,7 +53,6 @@ #include #include #include -#include #include #include #include @@ -255,7 +254,7 @@ PROC_LOCK(p); KASSERT((p->p_flag & P_INEXEC) == 0, ("%s(): process already has P_INEXEC flag", __func__)); - if (p->p_flag & P_SA || p->p_numthreads > 1) { + if (p->p_flag & P_HADTHREADS) { if (thread_single(SINGLE_EXIT)) { PROC_UNLOCK(p); mtx_unlock(&Giant); @@ -263,18 +262,8 @@ } /* * If we get here all other threads are dead, - * so unset the associated flags and lose KSE mode. - * This meams that we must get rid of any extra - * upcalls and kses we may have picked up along the way. + * and threading mode has been turned off */ - mtx_lock_spin(&sched_lock); - sched_set_concurrency(td->td_ksegrp, 1); - upcall_remove(td); - mtx_unlock_spin(&sched_lock); - p->p_flag &= ~(P_SA|P_HADTHREADS); - td->td_mailbox = NULL; - td->td_pflags &= ~TDP_SA; - thread_single_end(); } p->p_flag |= P_INEXEC; PROC_UNLOCK(p); ==== //depot/projects/nsched/sys/kern/kern_exit.c#17 (text+ko) ==== @@ -134,7 +134,7 @@ * MUST abort all other threads before proceeding past here. */ PROC_LOCK(p); - if (p->p_flag & P_SA || p->p_numthreads > 1) { + if (p->p_flag & P_HADTHREADS) { retry: /* * First check if some other thread got here before us.. @@ -164,18 +164,8 @@ goto retry; /* * All other activity in this process is now stopped. - * Remove excess KSEs and KSEGRPS. XXXKSE (when we have them) - * ... - * Turn off threading support. + * Threading support has been turned off. */ - mtx_lock_spin(&sched_lock); - sched_set_concurrency(td->td_ksegrp, 1); - upcall_remove(td); - mtx_unlock_spin(&sched_lock); - p->p_flag &= ~(P_SA|P_HADTHREADS); - td->td_mailbox = NULL; - td->td_pflags &= ~TDP_SA; - thread_single_end(); } p->p_flag |= P_WEXIT; @@ -488,7 +478,7 @@ * Finally, call machine-dependent code to release the remaining * resources including address space. * The address space is released by "vmspace_exitfree(p)" in - * vm_waitproc(). To be called BEFORE taking the final schedlock. + * vm_waitproc(). */ cpu_exit(td); @@ -533,7 +523,8 @@ knlist_destroy(&p->p_klist); /* - * Make sure the system takes this thread out of its tables etc. + * Make sure the scheduler takes this thread out of its tables etc. + * This will also release this thread's reference to the ucred. * Other thread parts to release include pcb bits and such. */ thread_exit(); @@ -681,8 +672,6 @@ /* * do any thread-system specific cleanups - * like freeing the thread's ucred, - * and any spare threads, etc. */ thread_wait(p); @@ -695,6 +684,8 @@ #ifdef MAC mac_destroy_proc(p); #endif + KASSERT(FIRST_THREAD_IN_PROC(p), + ("kern_wait: no residual thread!")); uma_zfree(proc_zone, p); sx_xlock(&allproc_lock); nprocs--; ==== //depot/projects/nsched/sys/kern/kern_fork.c#9 (text+ko) ==== @@ -508,7 +508,7 @@ * Allow the scheduler to adjust the priority of the child and * parent while we hold the sched_lock. */ - sched_fork(td, p2); + sched_fork(td, td2); mtx_unlock_spin(&sched_lock); p2->p_ucred = crhold(td->td_ucred); ==== //depot/projects/nsched/sys/kern/kern_kse.c#23 (text+ko) ==== @@ -325,9 +325,8 @@ psignal(p, SIGSEGV); mtx_lock_spin(&sched_lock); upcall_remove(td); - if (p->p_numthreads != 1) { - /* + /* * If we are not the last thread, but we are the last * thread in this ksegrp, then by definition this is not * the last group and we need to clean it up as well. @@ -337,21 +336,21 @@ thread_exit(); /* NOTREACHED */ } - /* + /* * This is the last thread. Just return to the user. * We know that there is only one ksegrp too, as any others * would have been discarded in previous calls to thread_exit(). * Effectively we have left threading mode.. - * The only real thing left to do is ensure that the - * scheduler sets out concurrency back to 1 as that may be a + * The only real thing left to do is ensure that the + * scheduler sets out concurrency back to 1 as that may be a * resource leak otherwise. * This is an A[PB]I issue.. what SHOULD we do? * One possibility is to return to the user. It may not cope well. * The other possibility would be to let the process exit. */ - p->p_flag &= ~P_SA; + p->p_flag &= ~(P_SA|P_HADTHREADS); + sched_reset_concurrency(td->td_ksegrp); mtx_unlock_spin(&sched_lock); - sched_set_concurrency(td->td_ksegrp, 1); PROC_UNLOCK(p); #if 1 return (0); @@ -501,6 +500,10 @@ /* * No new KSEG: first call: use current KSE, don't schedule an upcall * All other situations, do allocate max new KSEs and schedule an upcall. + * + * XXX should be changed so that 'first' behaviour lasts for as long + * as you have not made a kse in this ksegrp. i.e. as long as we do not have + * a mailbox.. */ /* struct kse_create_args { struct kse_mailbox *mbx; @@ -521,6 +524,13 @@ if ((err = copyin(uap->mbx, &mbx, sizeof(mbx)))) return (err); + /* + * Processes using the other threading model can't + * suddenly start calling this one + */ + if ((p->p_flag & (P_SA|P_HADTHREADS)) == P_HADTHREADS) + return (EINVAL); + ncpus = mp_ncpus; if (virtual_cpu != 0) ncpus = virtual_cpu; @@ -605,15 +615,17 @@ * Initialize KSE group with the appropriate * concurrency. * - * For multiplxed group, set concurrency equal to physical - * cpus. This increases concurrent even if userland - * is not MP safe and can only run on single CPU. - * In ideal world, every physical cpu should execute a thread. - * If there is enough KSEs, threads in kernel can be - * executed parallel on different cpus with full speed, - * Concurrent in kernel shouldn't be restricted by number of - * upcalls userland provides. Adding more upcall structures - * only increases concurrent in userland. + * For a multiplexed group, create as as much concurrency + * as the number of physical cpus. + * This increases concurrency in the kernel even if the + * userland is not MP safe and can only run on a single CPU. + * In an ideal world, every physical cpu should execute a + * thread. If there is enough concurrency, threads in the + * kernel can be executed parallel on different cpus at + * full speed without being restricted by the number of + * upcalls the userland provides. + * Adding more upcall structures only increases concurrency + * in userland. * * For a bound thread group, because there is only one thread * in the group, we only set the concurrency for the group @@ -767,7 +779,6 @@ NULL, NULL, NULL, NULL, UMA_ALIGN_CACHE, 0); } - /* * Stash an embarasingly extra upcall into the zombie upcall queue. */ @@ -1002,7 +1013,8 @@ /* * This function is intended to be used to initialize a spare thread * for upcall. Initialize thread's large data area outside sched_lock - * for thread_schedule_upcall(). + * for thread_schedule_upcall(). The crhold is also here to get it out + * from the schedlock as it has a mutex op itself. */ void thread_alloc_spare(struct thread *td) @@ -1011,7 +1023,8 @@ if (td->td_standin) return; - td->td_standin = spare = thread_alloc(); + spare = thread_alloc(); + td->td_standin = spare; bzero(&spare->td_startzero, (unsigned) RANGEOF(struct thread, td_startzero, td_endzero)); spare->td_proc = td->td_proc; @@ -1056,11 +1069,13 @@ ku->ku_owner = td2; td2->td_upcall = ku; td2->td_flags = 0; - td2->td_pflags = (TDP_SA | TDP_UPCALLING); + td2->td_pflags = TDP_SA|TDP_UPCALLING; + td2->td_kse = NULL; td2->td_state = TDS_CAN_RUN; td2->td_inhibitors = 0; SIGFILLSET(td2->td_sigmask); SIG_CANTMASK(td2->td_sigmask); + sched_fork_thread(td, td2); return (td2); /* bogus.. should be a void function */ } @@ -1181,8 +1196,6 @@ (ku->ku_mflags & KMF_NOUPCALL)) { td->td_mailbox = NULL; } else { - if (td->td_standin == NULL) - thread_alloc_spare(td); flags = fuword32(&tmbx->tm_flags); /* * On some architectures, TP register points to thread ==== //depot/projects/nsched/sys/kern/kern_proc.c#11 (text+ko) ==== @@ -100,8 +100,6 @@ SYSCTL_INT(_kern, OID_AUTO, kstack_pages, CTLFLAG_RD, &kstack_pages, 0, ""); SYSCTL_INT(_kern, OID_AUTO, uarea_pages, CTLFLAG_RD, &uarea_pages, 0, ""); -#define RANGEOF(type, start, end) (offsetof(type, end) - offsetof(type, start)) - CTASSERT(sizeof(struct kinfo_proc) == KINFO_PROC_SIZE); /* @@ -127,7 +125,6 @@ /* * Prepare a proc for use. - * cache->used */ static int proc_ctor(void *mem, int size, void *arg, int flags) @@ -140,7 +137,6 @@ /* * Reclaim a proc after use. - * used -> cache */ static void proc_dtor(void *mem, int size, void *arg) @@ -151,7 +147,7 @@ /* INVARIANTS checks go here */ p = (struct proc *)mem; - td = FIRST_THREAD_IN_PROC(p); + td = FIRST_THREAD_IN_PROC(p); #ifdef INVARIANTS KASSERT((p->p_numthreads == 1), ("bad number of threads in exiting process")); @@ -171,7 +167,6 @@ /* * Initialize type-stable parts of a proc (when newly created). - * raw memory -> cache */ static int proc_init(void *mem, int size, int flags) @@ -185,15 +180,15 @@ vm_proc_new(p); td = thread_alloc(); kg = ksegrp_alloc(); + bzero(&p->p_mtx, sizeof(struct mtx)); mtx_init(&p->p_mtx, "process lock", NULL, MTX_DEF | MTX_DUPOK); proc_linkup(p, kg, td); - sched_newproc(p, kg, td); /* err? */ + sched_newproc(p, kg, td); return (0); } /* * Tear down type-stable parts of a proc (just before being discarded) - * cache -> free memeory */ static void proc_fini(void *mem, int size) @@ -765,8 +760,8 @@ kp->ki_kstack = (void *)td->td_kstack; kp->ki_pctcpu = sched_pctcpu(td); + /* Things in the kse */ #if 0 - /* Things in the kse */ if (ke) kp->ki_rqindex = ke->ke_rqindex; else ==== //depot/projects/nsched/sys/kern/kern_switch.c#5 (text+ko) ==== @@ -90,6 +90,7 @@ #include "opt_full_preemption.h" +#ifndef KERN_SWITCH_INCLUDE #include #include #include @@ -100,6 +101,7 @@ #include #include #include +#else /* KERN_SWITCH_INCLUDE */ #if defined(SMP) && (defined(__i386__) || defined(__amd64__)) #include #endif @@ -223,6 +225,7 @@ TAILQ_INSERT_TAIL(&kg->kg_iq, ke, ke_kgrlist); kg->kg_idle_kses++; CTR1(KTR_RUNQ, "kse_reassign: ke%p on idle queue", ke); + sched_check_concurrency(kg); /* could implement directly */ return; } @@ -837,3 +840,348 @@ } #endif +/****** functions that are temporarily here ***********/ +#include +#define RANGEOF(type, start, end) (offsetof(type, end) - offsetof(type, start)) +static uma_zone_t kse_zone; +TAILQ_HEAD(, kse) zombie_kses = TAILQ_HEAD_INITIALIZER(zombie_kses); +extern struct mtx kse_zombie_lock; + +/* + * Initialize type-stable parts of a kse (when newly created). + */ +static int +kse_init(void *mem, int size, int flags) +{ + struct kse *ke; + + ke = (struct kse *)mem; + ke->ke_sched = (struct ke_sched *)&ke[1]; + return (0); +} + +/* + * Allocate a kse. + */ +static struct kse * +kse_alloc(void) +{ + return (uma_zalloc(kse_zone, M_WAITOK)); +} + +/* + * Deallocate a kse. + */ +void +kse_free(struct kse *td) +{ + uma_zfree(kse_zone, td); +} + +/* + * KSE is linked into kse group. + * If we know the thread at this time attach to it, + * otherwise put it on the idle kse queue. + * Called from: + * sched_init_concurrency() schedlock + * sched_set_concurrency() schedlock + * schedinit2() NO schedlock (too early) + */ +static void +kse_link(struct kse *ke, struct ksegrp *kg, struct thread *td) +{ + struct proc *p = kg->kg_proc; + + TAILQ_INSERT_HEAD(&kg->kg_kseq, ke, ke_kglist); + kg->kg_kses++; + ke->ke_proc = p; + ke->ke_ksegrp = kg; + ke->ke_oncpu = NOCPU; + ke->ke_flags = 0; + if (td) { + ke->ke_state = KES_THREAD; + td->td_kse = ke; + ke->ke_thread = td; + } else { + TAILQ_INSERT_TAIL(&kg->kg_iq, ke, ke_kgrlist); + kg->kg_idle_kses++; + ke->ke_state = KES_IDLE; + ke->ke_thread = NULL; + } +} + +/* + * Stash an embarasingly extra kse into the zombie kse queue. + */ +static void +kse_stash(struct kse *ke) +{ + mtx_lock_spin(&kse_zombie_lock); + TAILQ_INSERT_HEAD(&zombie_kses, ke, ke_procq); + mtx_unlock_spin(&kse_zombie_lock); +} + +/* + * Called from: + * sched_set_concurrency() + * sched_reset_concurrency() + * sched_check_concurrency() + */ +static void +kse_unlink(struct kse *ke) +{ + struct ksegrp *kg; + + mtx_assert(&sched_lock, MA_OWNED); + kg = ke->ke_ksegrp; + TAILQ_REMOVE(&kg->kg_kseq, ke, ke_kglist); + if (ke->ke_state == KES_IDLE) { + TAILQ_REMOVE(&kg->kg_iq, ke, ke_kgrlist); + kg->kg_idle_kses--; + } + --kg->kg_kses; + /* + * Aggregate stats from the KSE + */ + kse_stash(ke); +} + + +/* + * Concurrency is implemented using the number of KSEs. + * This will be re-implmented using another method, so + * isolate the details with a simple API. + * Once the API has been implemented, we can switch out the + * underlying implementation. + */ + +/* + * Allocate scheduler specific per-process resources. + * The thread and ksegrp have already been linked in. + * Called from: + * proc_init() (UMA init method) + */ +void +sched_newproc(struct proc *p, struct ksegrp *kg, struct thread *td) +{ + + sched_init_concurrency(kg, td); +} + +/* + * Called by the uma process fini routine.. + * undo anything we may have done in the uma_init method. + * Panic if it's not all 1:1:1:1 + * Called from: + * proc_fini() (UMA method) + */ +void +sched_destroyproc(struct proc *p) +{ + struct ksegrp *kg; + + KASSERT((p->p_numthreads == 1), ("Cached proc with > 1 thread ")); + KASSERT((p->p_numksegrps == 1), ("Cached proc with > 1 ksegrp ")); + kg = FIRST_KSEGRP_IN_PROC(p); + KASSERT((kg->kg_kses == 1), ("Cached proc with > 1 kse ")); + kse_free(TAILQ_FIRST(&kg->kg_kseq)); +} + +/* + * thread is being either created or recycled. + * Fix up the per-scheduler resources associated with it. + * Called from: + * thread_dtor() + * thread_init() + */ +void +sched_newthread(struct thread *td) +{ + td->td_last_kse = NULL; + td->td_kse = NULL; +} + +/* + * (Re) assign resources to allow the ksegrp to implement + * the requested concurrency. At this time it means allocating + * or freeing KSE structures. + * We may not remove all the KSEs if there are enough threads in the + * ksegrp to justify them. They will eventually go away as they are added + * to the free kse queue and threads exit. + */ + +/* + * set up an initial concurrency of 1 + * and set the given thread (if given) to be using that + * concurrency slot. + * May be used "offline"..before the ksegrp is attached to the world + * and thus wouldn't need schedlock in that case. + * Called from: + * thr_create() + * proc_init() (UMA) via sched_newproc() + */ +void +sched_init_concurrency(struct ksegrp *kg, struct thread *td) +{ + struct kse *newke; + + newke = kse_alloc(); + if (newke == NULL) + panic("sched_init_concurrency: no kse allocated"); + kg->kg_concurrency = 1; + mtx_lock_spin(&sched_lock); + kse_link(newke, kg , td); + mtx_unlock_spin(&sched_lock); +} + +/* + * Change the concurrency of an existing ksegrp to N + * Called from: + * kse_create() + */ +void +sched_set_concurrency(struct ksegrp *kg, int concurrency) +{ + struct kse *newke; + + kg->kg_concurrency = concurrency; + /* Handle the case for a declining concurrency */ + while ((kg->kg_concurrency < kg->kg_kses) && + (kg->kg_idle_kses > 0) && + (kg->kg_kses > kg->kg_numthreads)) { + kse_unlink(TAILQ_FIRST(&kg->kg_iq)); + } + while (kg->kg_kses < kg->kg_concurrency) { + newke = kse_alloc(); + if (newke == NULL) + panic("sched_set_concurrency: no kse allocated"); + bzero(&newke->ke_startzero, RANGEOF(struct kse, + ke_startzero, ke_endzero)); + mtx_lock_spin(&sched_lock); + kse_link(newke, kg , NULL); + sched_fork_kse(curthread, newke); + mtx_unlock_spin(&sched_lock); + } +} + +/* + * This is a temporary function to remove the KSE(s) from a ksegrp when the + * ksegrp is being destroyed, so we need not keep it consistent. + * Called from: + * thread_exit() + * Not called from sched_destroyproc() which does it itself. + */ +void +sched_remove_concurrency(struct ksegrp *kg) +{ + struct kse *ke, *nextke; + ke = TAILQ_FIRST(&kg->kg_kseq); + while (ke != NULL) { + nextke = TAILQ_NEXT(ke, ke_kglist); + kse_stash(ke); + ke = nextke; + } + /* set these down just so later kasserts don't trigger */ + kg->kg_kses = 0; + kg->kg_idle_kses = 0; + kg->kg_concurrency = 0; +} + +/* + * Whenever we have idle KSEs and there are too many for the concurrency, + * then free as many as we can. Don't free too many if we have threads + * to run/kill. + * Called from: + * kse_reassign(). + */ +void +sched_check_concurrency(struct ksegrp * kg) { + while ((kg->kg_concurrency < kg->kg_kses) && + (kg->kg_idle_kses > 0) && + (kg->kg_kses > kg->kg_numthreads)) { + kse_unlink(TAILQ_FIRST(&kg->kg_iq)); + } +} + +/* + * Reset the Concurrency back to 1, whatever that means to this scheduler. + * In this case, free all but one KSE. + * Called from: + * thread_single(SINGLE_EXIT) (e.g. in execve and exit) + * kse_exit() + */ +void +sched_reset_concurrency(struct ksegrp *kg) +{ + KASSERT((kg->kg_numthreads == 1), + ("sched_reset_concurrency: Nthread!= 1")); + mtx_assert(&sched_lock, MA_OWNED); + kg->kg_concurrency = 1; + while ((kg->kg_concurrency < kg->kg_kses) && + (kg->kg_idle_kses > 0) && + (kg->kg_kses > kg->kg_numthreads)) { + kse_unlink(TAILQ_FIRST(&kg->kg_iq)); + } +} + +/* + * Very early in the boot some setup of scheduler-specific + * parts of proc0 and of some scheduler resources needs to be done. + * This is temporary, it will merge with schedinit() in each scheduler + * soon. + * Called from: + * proc0_init() + */ +void +schedinit2(void) +{ + /* + * Put our per-scheduler struct on the ksegrp/thread + * this puts it on the idle queue. + */ + kse_link(&kse0, &ksegrp0, &thread0); + + kse_zone = uma_zcreate("KSE", sched_sizeof_kse(), + NULL, NULL, kse_init, NULL, UMA_ALIGN_CACHE, 0); +} + +void +sched_thread_exit(struct thread *td) +{ + struct kse *ke; + + ke = td->td_kse; + + if ((td->td_proc->p_flag & P_SA) && ke != NULL) { + ke->ke_thread = NULL; + td->td_kse = NULL; + kse_reassign(ke); + } +} + +/* + * Reap zombie kse resource. + */ +void +sched_GC(void) +{ + struct kse *ke_first, *ke_next; + + /* + * Don't even bother to lock if none at this instant, + * we really don't care about the next instant.. + */ + if (!TAILQ_EMPTY(&zombie_kses)) { + mtx_lock_spin(&kse_zombie_lock); + ke_first = TAILQ_FIRST(&zombie_kses); + if (ke_first) + TAILQ_INIT(&zombie_kses); + mtx_unlock_spin(&kse_zombie_lock); + while (ke_first) { + ke_next = TAILQ_NEXT(ke_first, ke_procq); + kse_free(ke_first); + ke_first = ke_next; + } + } +} +#endif /* KERN_SWITCH_INCLUDE */ ==== //depot/projects/nsched/sys/kern/kern_synch.c#9 (text+ko) ==== ==== //depot/projects/nsched/sys/kern/kern_thr.c#12 (text+ko) ==== @@ -44,69 +44,13 @@ #include -extern int virtual_cpu; +extern int max_threads_per_proc; +extern int max_groups_per_proc; + /* * Back end support functions. */ -void -thr_exit1(void) -{ - struct ksegrp *kg; - struct thread *td; - struct proc *p; - - td = curthread; - p = td->td_proc; - kg = td->td_ksegrp; - - mtx_assert(&sched_lock, MA_OWNED); - PROC_LOCK_ASSERT(p, MA_OWNED); - KASSERT(!mtx_owned(&Giant), ("dying thread owns giant")); - - /* - * Shutting down last thread in the proc. This will actually - * call exit() in the trampoline when it returns. - */ - if (p->p_numthreads == 1) { - PROC_UNLOCK(p); - return; - } - - /* - * XXX Undelivered process wide signals should be reposted to the - * proc. - */ - - /* Clean up cpu resources. */ - cpu_thread_exit(td); - - /* let the scheduler know we are dying.. */ - /* Lots in common with sched_thread_exit.. merge one day */ - sched_thr_exit(td); - - /* Unlink the thread from the process and kseg. */ - thread_unlink(td); - - /* - * If we were stopped while waiting for all threads to exit and this - * is the last thread wakeup the exiting thread. - */ - if (P_SHOULDSTOP(p) == P_STOPPED_SINGLE) - if (p->p_numthreads == 1) - thread_unsuspend_one(p->p_singlethread); - - PROC_UNLOCK(p); - td->td_state = TDS_INACTIVE; -#if 0 - td->td_proc = NULL; -#endif - td->td_ksegrp = NULL; - thread_stash(td); - - cpu_throw(td, choosethread(SW_VOL)); -} - #define RANGEOF(type, start, end) (offsetof(type, end) - offsetof(type, start)) /* @@ -116,57 +60,82 @@ thr_create(struct thread *td, struct thr_create_args *uap) /* ucontext_t *ctx, long *id, int flags */ { - struct thread *td0; + struct thread *newtd; ucontext_t ctx; long id; int error; - int ncpus; + struct ksegrp *kg, *newkg; + struct proc *p; + p = td->td_proc; + kg = td->td_ksegrp; if ((error = copyin(uap->ctx, &ctx, sizeof(ctx)))) return (error); - /* Initialize our td. */ - td0 = thread_alloc(); - + /* Have race condition but it is cheap */ + if ((p->p_numksegrps >= max_groups_per_proc) || + (p->p_numthreads >= max_threads_per_proc)) { + return (EPROCLIM); + } + /* Initialize our td and new ksegrp.. */ + newtd = thread_alloc(); + newkg = ksegrp_alloc(); /* * Try the copyout as soon as we allocate the td so we don't have to * tear things down in a failure case below. */ - id = td0->td_tid; + id = newtd->td_tid; if ((error = copyout(&id, uap->id, sizeof(long)))) { - thread_free(td0); + ksegrp_free(newkg); + thread_free(newtd); return (error); } - bzero(&td0->td_startzero, - (unsigned)RANGEOF(struct thread, td_startzero, td_endzero)); - bcopy(&td->td_startcopy, &td0->td_startcopy, + bzero(&newtd->td_startzero, + (unsigned) RANGEOF(struct thread, td_startzero, td_endzero)); + bcopy(&td->td_startcopy, &newtd->td_startcopy, (unsigned) RANGEOF(struct thread, td_startcopy, td_endcopy)); - td0->td_proc = td->td_proc; - PROC_LOCK(td->td_proc); - td0->td_sigmask = td->td_sigmask; - /* First time through? */ - if ((td->td_proc->p_flag & P_HADTHREADS) == 0) { - ncpus = mp_ncpus; - if (virtual_cpu != 0) - ncpus = virtual_cpu; - sched_set_concurrency(td->td_ksegrp, ncpus); - td->td_proc->p_flag |= P_HADTHREADS; - } - PROC_UNLOCK(td->td_proc); - td0->td_ucred = crhold(td->td_ucred); + bzero(&newkg->kg_startzero, + (unsigned) RANGEOF(struct ksegrp, kg_startzero, kg_endzero)); + bcopy(&kg->kg_startcopy, &newkg->kg_startcopy, + (unsigned) RANGEOF(struct ksegrp, kg_startcopy, kg_endcopy)); + + newtd->td_proc = td->td_proc; + newtd->td_ucred = crhold(td->td_ucred); /* Set up our machine context. */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Aug 22 10:23:47 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8B06616A4D0; Sun, 22 Aug 2004 10:23:47 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 617B416A4CE for ; Sun, 22 Aug 2004 10:23:47 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4213F43D1D for ; Sun, 22 Aug 2004 10:23:47 +0000 (GMT) (envelope-from davidxu@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7MANlBF019584 for ; Sun, 22 Aug 2004 10:23:47 GMT (envelope-from davidxu@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7MANkee019581 for perforce@freebsd.org; Sun, 22 Aug 2004 10:23:46 GMT (envelope-from davidxu@freebsd.org) Date: Sun, 22 Aug 2004 10:23:46 GMT Message-Id: <200408221023.i7MANkee019581@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to davidxu@freebsd.org using -f From: David Xu To: Perforce Change Reviews Subject: PERFORCE change 60251 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Aug 2004 10:23:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=60251 Change 60251 by davidxu@davidxu_alona on 2004/08/22 10:23:06 IFC @60250 Affected files ... .. //depot/projects/davidxu_ksedbg/src/UPDATING#9 integrate .. //depot/projects/davidxu_ksedbg/src/contrib/gcc/config/freebsd-spec.h#3 integrate .. //depot/projects/davidxu_ksedbg/src/games/fortune/datfiles/fortunes#4 integrate .. //depot/projects/davidxu_ksedbg/src/gnu/usr.bin/gdb/libgdb/fbsd-threads.c#27 integrate .. //depot/projects/davidxu_ksedbg/src/include/_ctype.h#2 integrate .. //depot/projects/davidxu_ksedbg/src/lib/csu/alpha/crt1.c#3 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libc/locale/frune.c#2 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libc/locale/isalnum.3#3 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libc/locale/isalpha.3#3 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libc/locale/isblank.3#3 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libc/locale/iscntrl.3#3 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libc/locale/isdigit.3#3 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libc/locale/isgraph.3#3 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libc/locale/islower.3#3 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libc/locale/isprint.3#3 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libc/locale/ispunct.3#3 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libc/locale/isspace.3#3 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libc/locale/isupper.3#3 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libc/locale/isxdigit.3#3 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libc/locale/mbrune.3#2 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libc/locale/mbrune.c#2 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libc/locale/rune.3#3 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libc/locale/setinvalidrune.c#2 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libc/locale/setrunelocale.c#3 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libc/locale/tolower.3#2 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libc/locale/toupper.3#2 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libc/locale/utf2.5#3 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libpthread/thread/thr_init.c#6 integrate .. //depot/projects/davidxu_ksedbg/src/lib/libutil/fparseln.3#2 integrate .. //depot/projects/davidxu_ksedbg/src/libexec/lukemftpd/config.h#2 integrate .. //depot/projects/davidxu_ksedbg/src/libexec/rbootd/rbootd.c#2 integrate .. //depot/projects/davidxu_ksedbg/src/release/doc/en_US.ISO8859-1/errata/article.sgml#3 integrate .. //depot/projects/davidxu_ksedbg/src/release/doc/en_US.ISO8859-1/readme/article.sgml#3 integrate .. //depot/projects/davidxu_ksedbg/src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#9 integrate .. //depot/projects/davidxu_ksedbg/src/release/doc/share/sgml/release.ent#3 integrate .. //depot/projects/davidxu_ksedbg/src/release/sparc64/mkisoimages.sh#4 integrate .. //depot/projects/davidxu_ksedbg/src/sbin/geom/class/raid3/geom_raid3.c#2 integrate .. //depot/projects/davidxu_ksedbg/src/sbin/geom/class/raid3/graid3.8#2 integrate .. //depot/projects/davidxu_ksedbg/src/share/man/man4/hfa.4#3 integrate .. //depot/projects/davidxu_ksedbg/src/share/man/man4/mac_bsdextended.4#3 integrate .. //depot/projects/davidxu_ksedbg/src/share/man/man9/suser.9#4 integrate .. //depot/projects/davidxu_ksedbg/src/sys/boot/alpha/Makefile.inc#2 integrate .. //depot/projects/davidxu_ksedbg/src/sys/boot/alpha/common/Makefile.common#2 integrate .. //depot/projects/davidxu_ksedbg/src/sys/boot/alpha/common/ldscript#1 branch .. //depot/projects/davidxu_ksedbg/src/sys/boot/common/load.c#2 integrate .. //depot/projects/davidxu_ksedbg/src/sys/boot/ficl/Makefile#2 integrate .. //depot/projects/davidxu_ksedbg/src/sys/dev/acpica/acpi_pci_link.c#4 integrate .. //depot/projects/davidxu_ksedbg/src/sys/dev/acpica/acpi_resource.c#4 integrate .. //depot/projects/davidxu_ksedbg/src/sys/dev/ata/ata-dma.c#4 integrate .. //depot/projects/davidxu_ksedbg/src/sys/dev/fdc/fdc.c#7 integrate .. //depot/projects/davidxu_ksedbg/src/sys/dev/fdc/fdc_acpi.c#3 integrate .. //depot/projects/davidxu_ksedbg/src/sys/dev/fdc/fdc_isa.c#4 integrate .. //depot/projects/davidxu_ksedbg/src/sys/dev/fdc/fdc_pccard.c#6 integrate .. //depot/projects/davidxu_ksedbg/src/sys/dev/fdc/fdcvar.h#4 integrate .. //depot/projects/davidxu_ksedbg/src/sys/dev/mpt/mpt.c#2 integrate .. //depot/projects/davidxu_ksedbg/src/sys/dev/mpt/mpt_debug.c#3 integrate .. //depot/projects/davidxu_ksedbg/src/sys/dev/mpt/mpt_freebsd.c#2 integrate .. //depot/projects/davidxu_ksedbg/src/sys/geom/raid3/g_raid3.c#2 integrate .. //depot/projects/davidxu_ksedbg/src/sys/geom/raid3/g_raid3.h#2 integrate .. //depot/projects/davidxu_ksedbg/src/sys/geom/raid3/g_raid3_ctl.c#2 integrate .. //depot/projects/davidxu_ksedbg/src/sys/i386/i386/uio_machdep.c#2 integrate .. //depot/projects/davidxu_ksedbg/src/sys/kern/kern_module.c#4 integrate .. //depot/projects/davidxu_ksedbg/src/sys/kern/kern_shutdown.c#7 integrate .. //depot/projects/davidxu_ksedbg/src/sys/kern/sched_4bsd.c#7 integrate .. //depot/projects/davidxu_ksedbg/src/sys/kern/uipc_socket.c#9 integrate .. //depot/projects/davidxu_ksedbg/src/sys/kern/vfs_subr.c#9 integrate .. //depot/projects/davidxu_ksedbg/src/sys/net/route.c#4 integrate .. //depot/projects/davidxu_ksedbg/src/sys/net/rtsock.c#4 integrate .. //depot/projects/davidxu_ksedbg/src/sys/netinet/ip_mroute.c#5 integrate .. //depot/projects/davidxu_ksedbg/src/sys/netinet/raw_ip.c#4 integrate .. //depot/projects/davidxu_ksedbg/src/sys/netinet/udp_usrreq.c#4 integrate .. //depot/projects/davidxu_ksedbg/src/sys/netinet6/in6_pcb.c#4 integrate .. //depot/projects/davidxu_ksedbg/src/sys/pci/agp_ali.c#2 integrate .. //depot/projects/davidxu_ksedbg/src/sys/pci/agp_intel.c#2 integrate .. //depot/projects/davidxu_ksedbg/src/sys/security/mac_bsdextended/mac_bsdextended.c#3 integrate .. //depot/projects/davidxu_ksedbg/src/sys/sparc64/sparc64/uio_machdep.c#3 integrate .. //depot/projects/davidxu_ksedbg/src/sys/sys/fdcio.h#2 integrate .. //depot/projects/davidxu_ksedbg/src/sys/sys/param.h#8 integrate .. //depot/projects/davidxu_ksedbg/src/sys/ufs/ufs/ufs_vnops.c#4 integrate .. //depot/projects/davidxu_ksedbg/src/sys/vm/vm_fault.c#4 integrate .. //depot/projects/davidxu_ksedbg/src/tools/regression/geom_raid3/test-10.sh#1 branch .. //depot/projects/davidxu_ksedbg/src/tools/tools/README#2 integrate .. //depot/projects/davidxu_ksedbg/src/tools/tools/nanobsd/i386.diskimage#3 integrate .. //depot/projects/davidxu_ksedbg/src/tools/tools/raidtest/raidtest.c#2 integrate .. //depot/projects/davidxu_ksedbg/src/usr.bin/mklocale/mklocale.1#4 integrate .. //depot/projects/davidxu_ksedbg/src/usr.sbin/fdcontrol/fdcontrol.c#2 integrate .. //depot/projects/davidxu_ksedbg/src/usr.sbin/fdformat/fdformat.c#2 integrate .. //depot/projects/davidxu_ksedbg/src/usr.sbin/fdread/fdutil.c#3 integrate .. //depot/projects/davidxu_ksedbg/src/usr.sbin/kbdcontrol/kbdmap.5#3 integrate Differences ... ==== //depot/projects/davidxu_ksedbg/src/UPDATING#9 (text+ko) ==== @@ -69,11 +69,14 @@ compiler upgrade, there are several issues to be aware of. GCC 3.4.x has broken C++ ABI compatibility with previous releases yet again and users will have to rebuild all their C++ programs with the new - compiler. A new unit-at-a-time optimization mode, which is default - in this compiler release, is more aggressive in removing unused - static symbols. This is the likely cause of 'make buildworld' - breakages with non-default CFLAGS where optimization level is set - to -O2 or higher. + compiler. If you are getting run-time error such as + /libexec/ld-elf.so.1: Undefined symbol "_ZNSs20_S_empty_rep_storageE" + This entry does apply to you. + + A new unit-at-a-time optimization mode, which is default in this + compiler release, is more aggressive in removing unused static + symbols. This is the likely cause of 'make buildworld' breakages + with non-default CFLAGS where optimization level is set to -O2 or higher. With the upgrade of the system compiler, the kernel has been upgraded to match the new system compiler. This makes it impossible to build @@ -1788,4 +1791,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.345 2004/08/20 01:24:23 julian Exp $ +$FreeBSD: src/UPDATING,v 1.346 2004/08/21 19:44:43 obrien Exp $ ==== //depot/projects/davidxu_ksedbg/src/contrib/gcc/config/freebsd-spec.h#3 (text+ko) ==== @@ -18,7 +18,7 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* $FreeBSD: src/contrib/gcc/config/freebsd-spec.h,v 1.17 2004/07/28 04:31:47 kan Exp $ */ +/* $FreeBSD: src/contrib/gcc/config/freebsd-spec.h,v 1.18 2004/08/21 03:58:39 obrien Exp $ */ /* Common FreeBSD configuration. All FreeBSD architectures should include this file, which will specify @@ -79,7 +79,7 @@ #ifdef FREEBSD_NATIVE #define FBSD_NATIVE_TARGET_OS_CPP_BUILTINS() \ do { \ - builtin_define_std ("__FreeBSD_cc_version=520001"); \ + builtin_define_std ("__FreeBSD_cc_version=600001"); \ } while (0) #else #define FBSD_NATIVE_TARGET_OS_CPP_BUILTINS() \ ==== //depot/projects/davidxu_ksedbg/src/games/fortune/datfiles/fortunes#4 (text+ko) ==== @@ -1,5 +1,5 @@ This fortune brought to you by: -$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.141 2004/08/15 19:24:17 rwatson Exp $ +$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.142 2004/08/20 13:39:28 des Exp $ % -- Gifts for Children -- @@ -15991,6 +15991,9 @@ (5) Any computer with a mouse is worthless. -- Rich Kulawiec % +Women come and go, but BSD is forever. + -- Derek Young +% Wood is highly ecological, since trees are a renewable resource. If you cut down a tree, another will grow in its place. And if you cut down the new tree, still another will grow. And if you cut down that ==== //depot/projects/davidxu_ksedbg/src/gnu/usr.bin/gdb/libgdb/fbsd-threads.c#27 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/gnu/usr.bin/gdb/libgdb/fbsd-threads.c,v 1.4 2004/08/08 22:45:36 davidxu Exp $ */ +/* $FreeBSD: src/gnu/usr.bin/gdb/libgdb/fbsd-threads.c,v 1.7 2004/08/22 09:05:57 davidxu Exp $ */ /* FreeBSD libthread_db assisted debugging support. Copyright 1999, 2000, 2001 Free Software Foundation, Inc. @@ -33,11 +33,11 @@ #include "gdbcore.h" #include "gdbthread.h" #include "inferior.h" +#include "objfiles.h" +#include "regcache.h" #include "symfile.h" #include "symtab.h" -#include "objfiles.h" #include "target.h" -#include "regcache.h" #include "gdbcmd.h" #include "solib-svr4.h" @@ -53,7 +53,7 @@ extern struct target_ops child_ops; -/* This module's target vector. */ +/* This module's target vectors. */ static struct target_ops fbsd_thread_ops; static struct target_ops fbsd_core_ops; @@ -108,7 +108,6 @@ td_thr_events_t *event); static td_err_e (*td_ta_event_getmsg_p) (const td_thragent_t *ta, td_event_msg_t *msg); -static td_err_e (*td_thr_validate_p) (const td_thrhandle_t *th); static td_err_e (*td_thr_get_info_p) (const td_thrhandle_t *th, td_thrinfo_t *infop); static td_err_e (*td_thr_getfpregs_p) (const td_thrhandle_t *th, @@ -325,8 +324,6 @@ { td_err_e err; - /* Don't attempt to use thread_db on targets which can not run - (core files). */ if (objfile == NULL) { /* All symbols have been discarded. If the thread_db target is @@ -343,9 +340,9 @@ if (!child_suppress_run) goto quit; + /* Nothing to do. The thread library was already detected and the + target vector was already activated. */ if (fbsd_thread_active) - /* Nothing to do. The thread library was already detected and the - target vector was already activated. */ goto quit; /* Initialize the structure that identifies the child process. Note @@ -485,14 +482,12 @@ if (ret) error (thread_db_err_str (ret)); - /* - * For M:N thread, we need to tell UTS to set/unset single step - * flag at context switch time, the flag will be written into - * thread mailbox. This becauses some architecture may not have - * machine single step flag in ucontext, so we put the flag in mailbox, - * when the thread switches back, kse_switchin restores the single step - * state. - */ + /* For M:N thread, we need to tell UTS to set/unset single step + flag at context switch time, the flag will be written into + thread mailbox. This becauses some architecture may not have + machine single step flag in ucontext, so we put the flag in mailbox, + when the thread switches back, kse_switchin restores the single step + state. */ ret = td_thr_sstep_p (&th, step); if (ret) error (thread_db_err_str (ret)); @@ -765,10 +760,8 @@ { if (fbsd_thread_present && !fbsd_thread_active) { - /* - * The child process is now the actual multi-threaded - * program. Snatch its process ID... - */ + /* The child process is now the actual multi-threaded + program. Snatch its process ID... */ proc_handle.pid = GET_PID (ptid); td_ta_new_p (&proc_handle, &thread_agent); fbsd_thread_activate(); @@ -778,10 +771,6 @@ static void fbsd_thread_mourn_inferior (void) { - /* - * Forget about the child's process ID. We shouldn't need it - * anymore. - */ if (fbsd_thread_active) fbsd_thread_deactivate (); @@ -1047,7 +1036,7 @@ fbsd_thread_activate (); } else - error ("fbsd_core_open: td_open: %s", thread_db_err_str (err)); + error ("fbsd_core_open: td_ta_new: %s", thread_db_err_str (err)); } } @@ -1083,7 +1072,7 @@ { fbsd_core_ops.to_shortname = "FreeBSD-core"; fbsd_core_ops.to_longname = "FreeBSD core thread."; - fbsd_core_ops.to_doc = "FreeBSD thread support for core files."; + fbsd_core_ops.to_doc = "FreeBSD threads support for core files."; fbsd_core_ops.to_open = fbsd_core_open; fbsd_core_ops.to_close = fbsd_core_close; fbsd_core_ops.to_attach = 0; @@ -1161,71 +1150,26 @@ if (handle == NULL) return 0; - td_init_p = dlsym (handle, "td_init"); - if (td_init_p == NULL) - return 0; +#define resolve(X) \ + if (!(X##_p = dlsym (handle, #X))) \ + return 0; - td_ta_new_p = dlsym (handle, "td_ta_new"); - if (td_ta_new_p == NULL) - return 0; - - td_ta_delete_p = dlsym (handle, "td_ta_delete"); - if (td_ta_delete_p == NULL) - return 0; - - td_ta_map_id2thr_p = dlsym (handle, "td_ta_map_id2thr"); - if (td_ta_map_id2thr_p == NULL) - return 0; - - td_ta_map_lwp2thr_p = dlsym (handle, "td_ta_map_lwp2thr"); - if (td_ta_map_lwp2thr_p == NULL) - return 0; - - td_ta_thr_iter_p = dlsym (handle, "td_ta_thr_iter"); - if (td_ta_thr_iter_p == NULL) - return 0; - - td_thr_validate_p = dlsym (handle, "td_thr_validate"); - if (td_thr_validate_p == NULL) - return 0; - - td_thr_get_info_p = dlsym (handle, "td_thr_get_info"); - if (td_thr_get_info_p == NULL) - return 0; - - td_thr_getfpregs_p = dlsym (handle, "td_thr_getfpregs"); - if (td_thr_getfpregs_p == NULL) - return 0; - - td_thr_getgregs_p = dlsym (handle, "td_thr_getgregs"); - if (td_thr_getgregs_p == NULL) - return 0; - - td_thr_setfpregs_p = dlsym (handle, "td_thr_setfpregs"); - if (td_thr_setfpregs_p == NULL) - return 0; - - td_thr_setgregs_p = dlsym (handle, "td_thr_setgregs"); - if (td_thr_setgregs_p == NULL) - return 0; - - td_thr_sstep_p = dlsym(handle, "td_thr_sstep"); - if (td_thr_sstep_p == NULL) - return 0; - - td_ta_tsd_iter_p = dlsym (handle, "td_ta_tsd_iter"); - if (td_ta_tsd_iter_p == NULL) - return 0; - - td_thr_dbsuspend_p = dlsym (handle, "td_thr_dbsuspend"); - if (td_thr_dbsuspend_p == NULL) - return 0; - - td_thr_dbresume_p = dlsym (handle, "td_thr_dbresume"); - if (td_thr_dbresume_p == NULL) - return 0; - - td_thr_tls_get_addr_p = dlsym (handle, "td_thr_tls_get_addr"); + resolve(td_init); + resolve(td_ta_new); + resolve(td_ta_delete); + resolve(td_ta_map_id2thr); + resolve(td_ta_map_lwp2thr); + resolve(td_ta_thr_iter); + resolve(td_thr_get_info); + resolve(td_thr_getfpregs); + resolve(td_thr_getgregs); + resolve(td_thr_setfpregs); + resolve(td_thr_setgregs); + resolve(td_thr_sstep); + resolve(td_ta_tsd_iter); + resolve(td_thr_dbsuspend); + resolve(td_thr_dbresume); + resolve(td_thr_tls_get_addr); /* Initialize the library. */ err = td_init_p (); ==== //depot/projects/davidxu_ksedbg/src/include/_ctype.h#2 (text+ko) ==== @@ -40,7 +40,7 @@ * * From @(#)ctype.h 8.4 (Berkeley) 1/21/94 * From FreeBSD: src/include/ctype.h,v 1.27 2004/06/23 07:11:39 tjr Exp - * $FreeBSD: src/include/_ctype.h,v 1.29 2004/08/12 12:19:10 tjr Exp $ + * $FreeBSD: src/include/_ctype.h,v 1.30 2004/08/21 07:00:40 tjr Exp $ */ #ifndef __CTYPE_H_ @@ -72,9 +72,9 @@ /* See comments in about __ct_rune_t. */ __BEGIN_DECLS -unsigned long ___runetype(__ct_rune_t); -__ct_rune_t ___tolower(__ct_rune_t); -__ct_rune_t ___toupper(__ct_rune_t); +unsigned long ___runetype(__ct_rune_t) __pure; +__ct_rune_t ___tolower(__ct_rune_t) __pure; +__ct_rune_t ___toupper(__ct_rune_t) __pure; __END_DECLS /* ==== //depot/projects/davidxu_ksedbg/src/lib/csu/alpha/crt1.c#3 (text+ko) ==== @@ -93,8 +93,6 @@ if (&_DYNAMIC != NULL) atexit(cleanup); - else - _init_tls(); #ifdef GCRT atexit(_mcleanup); @@ -113,4 +111,4 @@ __asm__(".previous"); #endif -__asm__(".ident\t\"$FreeBSD: src/lib/csu/alpha/crt1.c,v 1.16 2004/08/15 16:18:51 dfr Exp $\""); +__asm__(".ident\t\"$FreeBSD: src/lib/csu/alpha/crt1.c,v 1.17 2004/08/21 08:22:00 dfr Exp $\""); ==== //depot/projects/davidxu_ksedbg/src/lib/libc/locale/frune.c#2 (text+ko) ==== @@ -42,7 +42,7 @@ static char sccsid[] = "@(#)frune.c 8.1 (Berkeley) 6/4/93"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/locale/frune.c,v 1.5 2003/10/31 10:55:19 tjr Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/locale/frune.c,v 1.6 2004/08/21 07:48:06 tjr Exp $"); #include #include @@ -50,7 +50,7 @@ #include #include -__warn_references(fgetrune, "warning: fgetrune() is deprecated. See fgetrune(3)."); +__warn_references(fgetrune, "warning: fgetrune() is obsolete. See fgetrune(3)."); long fgetrune(fp) FILE *fp; @@ -62,7 +62,7 @@ return ((long)ch); } -__warn_references(fungetrune, "warning: fungetrune() is deprecated. See fungetrune(3)."); +__warn_references(fungetrune, "warning: fungetrune() is obsolete. See fungetrune(3)."); int fungetrune(r, fp) rune_t r; @@ -72,7 +72,7 @@ return (ungetwc((wint_t)r, fp) == WEOF ? EOF : 0); } -__warn_references(fputrune, "warning: fputrune() is deprecated. See fputrune(3)."); +__warn_references(fputrune, "warning: fputrune() is obsolete. See fputrune(3)."); int fputrune(r, fp) rune_t r; ==== //depot/projects/davidxu_ksedbg/src/lib/libc/locale/isalnum.3#3 (text+ko) ==== @@ -34,9 +34,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)isalnum.3 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/locale/isalnum.3,v 1.18 2004/07/29 23:32:41 tjr Exp $ +.\" $FreeBSD: src/lib/libc/locale/isalnum.3,v 1.19 2004/08/21 07:37:08 tjr Exp $ .\" -.Dd July 30, 2004 +.Dd August 21, 2004 .Dt ISALNUM 3 .Os .Sh NAME @@ -93,10 +93,11 @@ .Bx 4.4 extension of accepting arguments outside of the range of the .Vt "unsigned char" -type in locales with large character sets is deprecated. +type in locales with large character sets is considered obsolete +and may not be supported in future releases. The .Fn iswalnum -function should be used instead for maximum portability. +function should be used instead. .Sh SEE ALSO .Xr ctype 3 , .Xr isalpha 3 , ==== //depot/projects/davidxu_ksedbg/src/lib/libc/locale/isalpha.3#3 (text+ko) ==== @@ -34,9 +34,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)isalpha.3 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/locale/isalpha.3,v 1.17 2004/07/29 23:32:41 tjr Exp $ +.\" $FreeBSD: src/lib/libc/locale/isalpha.3,v 1.18 2004/08/21 07:37:08 tjr Exp $ .\" -.Dd July 30, 2004 +.Dd August 21, 2004 .Dt ISALPHA 3 .Os .Sh NAME @@ -91,10 +91,11 @@ .Bx 4.4 extension of accepting arguments outside of the range of the .Vt "unsigned char" -type in locales with large character sets is deprecated. +type in locales with large character sets is considered obsolete +and may not be supported in future releases. The .Fn iswalpha -function should be used instead for maximum portability. +function should be used instead. .Sh SEE ALSO .Xr ctype 3 , .Xr islower 3 , ==== //depot/projects/davidxu_ksedbg/src/lib/libc/locale/isblank.3#3 (text+ko) ==== @@ -30,9 +30,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)isblank.3 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/locale/isblank.3,v 1.18 2004/07/29 23:32:41 tjr Exp $ +.\" $FreeBSD: src/lib/libc/locale/isblank.3,v 1.19 2004/08/21 07:37:08 tjr Exp $ .\" -.Dd July 30, 2004 +.Dd August 21, 2004 .Dt ISBLANK 3 .Os .Sh NAME @@ -71,10 +71,11 @@ .Bx 4.4 extension of accepting arguments outside of the range of the .Vt "unsigned char" -type in locales with large character sets is deprecated. +type in locales with large character sets is considered obsolete +and may not be supported in future releases. The .Fn iswblank -function should be used instead for maximum portability. +function should be used instead. .Sh RETURN VALUES The .Fn isblank ==== //depot/projects/davidxu_ksedbg/src/lib/libc/locale/iscntrl.3#3 (text+ko) ==== @@ -34,9 +34,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)iscntrl.3 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/locale/iscntrl.3,v 1.16 2004/07/29 23:32:41 tjr Exp $ +.\" $FreeBSD: src/lib/libc/locale/iscntrl.3,v 1.17 2004/08/21 07:37:08 tjr Exp $ .\" -.Dd July 30, 2004 +.Dd August 21, 2004 .Dt ISCNTRL 3 .Os .Sh NAME @@ -83,10 +83,11 @@ .Bx 4.4 extension of accepting arguments outside of the range of the .Vt "unsigned char" -type in locales with large character sets is deprecated. +type in locales with large character sets is considered obsolete +and may not be supported in future releases. The .Fn iswcntrl -function should be used instead for maximum portability. +function should be used instead. .Sh SEE ALSO .Xr ctype 3 , .Xr iswcntrl 3 , ==== //depot/projects/davidxu_ksedbg/src/lib/libc/locale/isdigit.3#3 (text+ko) ==== @@ -34,9 +34,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)isdigit.3 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/locale/isdigit.3,v 1.18 2004/07/29 23:32:41 tjr Exp $ +.\" $FreeBSD: src/lib/libc/locale/isdigit.3,v 1.19 2004/08/21 07:37:08 tjr Exp $ .\" -.Dd July 30, 2004 +.Dd August 21, 2004 .Dt ISDIGIT 3 .Os .Sh NAME @@ -89,10 +89,11 @@ .Bx 4.4 extension of accepting arguments outside of the range of the .Vt "unsigned char" -type in locales with large character sets is deprecated. +type in locales with large character sets is considered obsolete +and may not be supported in future releases. The .Fn iswdigit -function should be used instead for maximum portability. +function should be used instead. .Sh SEE ALSO .Xr ctype 3 , .Xr iswdigit 3 , ==== //depot/projects/davidxu_ksedbg/src/lib/libc/locale/isgraph.3#3 (text+ko) ==== @@ -34,9 +34,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)isgraph.3 8.2 (Berkeley) 12/11/93 -.\" $FreeBSD: src/lib/libc/locale/isgraph.3,v 1.18 2004/07/29 23:32:41 tjr Exp $ +.\" $FreeBSD: src/lib/libc/locale/isgraph.3,v 1.19 2004/08/21 07:37:08 tjr Exp $ .\" -.Dd July 30, 2004 +.Dd August 21, 2004 .Dt ISGRAPH 3 .Os .Sh NAME @@ -98,10 +98,11 @@ .Bx 4.4 extension of accepting arguments outside of the range of the .Vt "unsigned char" -type in locales with large character sets is deprecated. +type in locales with large character sets is considered obsolete +and may not be supported in future releases. The .Fn iswgraph -function should be used instead for maximum portability. +function should be used instead. .Sh SEE ALSO .Xr ctype 3 , .Xr iswgraph 3 , ==== //depot/projects/davidxu_ksedbg/src/lib/libc/locale/islower.3#3 (text+ko) ==== @@ -34,9 +34,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)islower.3 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/locale/islower.3,v 1.16 2004/07/29 23:32:41 tjr Exp $ +.\" $FreeBSD: src/lib/libc/locale/islower.3,v 1.17 2004/08/21 07:37:08 tjr Exp $ .\" -.Dd July 30, 2004 +.Dd August 21, 2004 .Dt ISLOWER 3 .Os .Sh NAME @@ -82,10 +82,11 @@ .Bx 4.4 extension of accepting arguments outside of the range of the .Vt "unsigned char" -type in locales with large character sets is deprecated. +type in locales with large character sets is considered obsolete +and may not be supported in future releases. The .Fn iswlower -function should be used instead for maximum portability. +function should be used instead. .Sh SEE ALSO .Xr ctype 3 , .Xr iswlower 3 , ==== //depot/projects/davidxu_ksedbg/src/lib/libc/locale/isprint.3#3 (text+ko) ==== @@ -34,9 +34,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)isprint.3 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/locale/isprint.3,v 1.19 2004/07/29 23:32:41 tjr Exp $ +.\" $FreeBSD: src/lib/libc/locale/isprint.3,v 1.20 2004/08/21 07:37:08 tjr Exp $ .\" -.Dd July 30, 2004 +.Dd August 21, 2004 .Dt ISPRINT 3 .Os .Sh NAME @@ -96,10 +96,11 @@ .Bx 4.4 extension of accepting arguments outside of the range of the .Vt "unsigned char" -type in locales with large character sets is deprecated. +type in locales with large character sets is considered obsolete +and may not be supported in future releases. The .Fn iswprint -function should be used instead for maximum portability. +function should be used instead. .Sh SEE ALSO .Xr ctype 3 , .Xr iswprint 3 , ==== //depot/projects/davidxu_ksedbg/src/lib/libc/locale/ispunct.3#3 (text+ko) ==== @@ -34,9 +34,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)ispunct.3 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/locale/ispunct.3,v 1.17 2004/07/29 23:32:41 tjr Exp $ +.\" $FreeBSD: src/lib/libc/locale/ispunct.3,v 1.18 2004/08/21 07:37:08 tjr Exp $ .\" -.Dd July 30, 2004 +.Dd August 21, 2004 .Dt ISPUNCT 3 .Os .Sh NAME @@ -88,10 +88,11 @@ .Bx 4.4 extension of accepting arguments outside of the range of the .Vt "unsigned char" -type in locales with large character sets is deprecated. +type in locales with large character sets is considered obsolete +and may not be supported in future releases. The .Fn iswpunct -function should be used instead for maximum portability. +function should be used instead. .Sh SEE ALSO .Xr ctype 3 , .Xr iswpunct 3 , ==== //depot/projects/davidxu_ksedbg/src/lib/libc/locale/isspace.3#3 (text+ko) ==== @@ -34,9 +34,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)isspace.3 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/locale/isspace.3,v 1.16 2004/07/29 23:32:41 tjr Exp $ +.\" $FreeBSD: src/lib/libc/locale/isspace.3,v 1.17 2004/08/21 07:37:08 tjr Exp $ .\" -.Dd July 30, 2004 +.Dd August 21, 2004 .Dt ISSPACE 3 .Os .Sh NAME @@ -80,10 +80,11 @@ .Bx 4.4 extension of accepting arguments outside of the range of the .Vt "unsigned char" -type in locales with large character sets is deprecated. +type in locales with large character sets is considered obsolete +and may not be supported in future releases. The .Fn iswspace -function should be used instead for maximum portability. +function should be used instead. .Sh SEE ALSO .Xr ctype 3 , .Xr iswspace 3 , ==== //depot/projects/davidxu_ksedbg/src/lib/libc/locale/isupper.3#3 (text+ko) ==== @@ -34,9 +34,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)isupper.3 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/locale/isupper.3,v 1.17 2004/07/29 23:32:41 tjr Exp $ +.\" $FreeBSD: src/lib/libc/locale/isupper.3,v 1.18 2004/08/21 07:37:08 tjr Exp $ .\" -.Dd July 30, 2004 +.Dd August 21, 2004 .Dt ISUPPER 3 .Os .Sh NAME @@ -82,10 +82,11 @@ .Bx 4.4 extension of accepting arguments outside of the range of the .Vt "unsigned char" -type in locales with large character sets is deprecated. +type in locales with large character sets is considered obsolete +and may not be supported in future releases. The .Fn iswupper -function should be used instead for maximum portability. +function should be used instead. .Sh SEE ALSO .Xr ctype 3 , .Xr iswupper 3 , ==== //depot/projects/davidxu_ksedbg/src/lib/libc/locale/isxdigit.3#3 (text+ko) ==== @@ -34,9 +34,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)isxdigit.3 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/locale/isxdigit.3,v 1.19 2004/07/29 23:32:41 tjr Exp $ +.\" $FreeBSD: src/lib/libc/locale/isxdigit.3,v 1.20 2004/08/21 07:37:08 tjr Exp $ .\" -.Dd July 30, 2004 +.Dd August 21, 2004 .Dt ISXDIGIT 3 .Os .Sh NAME @@ -90,10 +90,11 @@ .Bx 4.4 extension of accepting arguments outside of the range of the .Vt "unsigned char" -type in locales with large character sets is deprecated. +type in locales with large character sets is considered obsolete +and may not be supported in future releases. The .Fn iswxdigit -function should be used instead for maximum portability. +function should be used instead. .Sh SEE ALSO .Xr ctype 3 , .Xr iswxdigit 3 , ==== //depot/projects/davidxu_ksedbg/src/lib/libc/locale/mbrune.3#2 (text+ko) ==== @@ -33,9 +33,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)mbrune.3 8.2 (Berkeley) 4/19/94 -.\" $FreeBSD: src/lib/libc/locale/mbrune.3,v 1.16 2003/11/15 02:26:04 tjr Exp $ +.\" $FreeBSD: src/lib/libc/locale/mbrune.3,v 1.18 2004/08/21 08:03:18 tjr Exp $ .\" -.Dd April 19, 1994 +.Dd August 21, 2004 .Dt MBRUNE 3 .Os .Sh NAME @@ -58,17 +58,16 @@ The .Bx 4.4 .Dq rune -functions have been deprecated in favour of the +functions are obsolete and may not be supported in future releases. +.Ef +Applications should use the .Tn ISO -C99 extended multibyte and wide character facilities -and should not be used in new applications. -.Ef -Consider working with wide characters instead, and using +C99 .Xr wcschr 3 , .Xr wcsrchr 3 , and .Xr wcsstr 3 -instead of these functions. +functions instead. .Pp These routines provide the corresponding functionality of .Fn strchr , ==== //depot/projects/davidxu_ksedbg/src/lib/libc/locale/mbrune.c#2 (text+ko) ==== @@ -41,14 +41,14 @@ static char sccsid[] = "@(#)mbrune.c 8.1 (Berkeley) 6/27/93"; #endif /* LIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/locale/mbrune.c,v 1.4 2003/06/13 07:13:54 tjr Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/locale/mbrune.c,v 1.5 2004/08/21 07:48:06 tjr Exp $"); #include #include #include #include -__warn_references(mbrune, "warning: mbrune() is deprecated. See mbrune(3)."); +__warn_references(mbrune, "warning: mbrune() is obsolete. See mbrune(3)."); char * mbrune(string, c) const char *string; @@ -66,7 +66,7 @@ return (c == *string ? (char *)string : NULL); } -__warn_references(mbrrune, "warning: mbrrune() is deprecated. See mbrrune(3)."); +__warn_references(mbrrune, "warning: mbrrune() is obsolete. See mbrrune(3)."); char * mbrrune(string, c) const char *string; @@ -84,7 +84,7 @@ return (c == *string ? (char *)string : (char *)last); } -__warn_references(mbmb, "warning: mbmb() is deprecated. See mbmb(3)."); +__warn_references(mbmb, "warning: mbmb() is obsolete. See mbmb(3)."); char * mbmb(string, pattern) const char *string; ==== //depot/projects/davidxu_ksedbg/src/lib/libc/locale/rune.3#3 (text+ko) ==== @@ -33,9 +33,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)rune.3 8.2 (Berkeley) 12/11/93 -.\" $FreeBSD: src/lib/libc/locale/rune.3,v 1.25 2004/07/02 23:52:11 ru Exp $ +.\" $FreeBSD: src/lib/libc/locale/rune.3,v 1.27 2004/08/21 08:03:18 tjr Exp $ .\" -.Dd October 6, 2002 +.Dd August 21, 2004 .Dt RUNE 3 .Os .Sh NAME @@ -73,12 +73,11 @@ The .Bx 4.4 .Dq rune -functions have been deprecated in favour of the +functions are obsolete and may not be supported in future releases. +.Ef +Applications should use the .Tn ISO -C99 extended multibyte and wide character facilities -and should not be used in new applications. -.Ef -Consider using +C99 .Xr setlocale 3 , .Xr mbrtowc 3 , .Xr wcrtomb 3 , @@ -86,7 +85,7 @@ .Xr ungetwc 3 , and .Xr fputwc 3 -instead. +functions instead. .Pp The .Fn setrunelocale ==== //depot/projects/davidxu_ksedbg/src/lib/libc/locale/setinvalidrune.c#2 (text+ko) ==== @@ -38,11 +38,11 @@ #define OBSOLETE_IN_6 #include -__FBSDID("$FreeBSD: src/lib/libc/locale/setinvalidrune.c,v 1.4 2003/06/13 07:13:54 tjr Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/locale/setinvalidrune.c,v 1.5 2004/08/21 07:48:06 tjr Exp $"); #include -__warn_references(setinvalidrune, "warning: setinvalidrune() is deprecated. See setinvalidrune(3)."); +__warn_references(setinvalidrune, "warning: setinvalidrune() is obsolete. See setinvalidrune(3)."); void setinvalidrune(ir) rune_t ir; ==== //depot/projects/davidxu_ksedbg/src/lib/libc/locale/setrunelocale.c#3 (text+ko) ==== @@ -38,7 +38,7 @@ #define OBSOLETE_IN_6 #include -__FBSDID("$FreeBSD: src/lib/libc/locale/setrunelocale.c,v 1.40 2004/07/21 10:54:57 tjr Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/locale/setrunelocale.c,v 1.41 2004/08/21 07:48:06 tjr Exp $"); #include #include @@ -65,7 +65,7 @@ static int __setrunelocale(const char *); -__warn_references(setrunelocale, "warning: setrunelocale() is deprecated. See setrunelocale(3)."); +__warn_references(setrunelocale, "warning: setrunelocale() is obsolete. See setrunelocale(3)."); int setrunelocale(char *encoding) { ==== //depot/projects/davidxu_ksedbg/src/lib/libc/locale/tolower.3#2 (text+ko) ==== @@ -34,9 +34,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)tolower.3 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/locale/tolower.3,v 1.15 2002/10/03 11:14:00 tjr Exp $ +.\" $FreeBSD: src/lib/libc/locale/tolower.3,v 1.16 2004/08/21 07:37:08 tjr Exp $ .\" -.Dd October 3, 2002 +.Dd August 21, 2004 .Dt TOLOWER 3 .Os .Sh NAME @@ -68,16 +68,15 @@ function returns the corresponding lower-case letter if there is one; otherwise the argument is returned unchanged. .Sh COMPATIBILITY -Although -.Fn tolower -accepts arguments outside of the range of the +The +.Bx 4.4 +extension of accepting arguments outside of the range of the .Vt "unsigned char" -type in locales with large character sets, -this is a -.Bx 4.4 -extension and the +type in locales with large character sets is considered obsolete +and may not be supported in future releases. +The >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Aug 22 17:21:37 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3B3AA16A4D0; Sun, 22 Aug 2004 17:21:37 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0DE9A16A4CE for ; Sun, 22 Aug 2004 17:21:37 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E2DAA43D2F for ; Sun, 22 Aug 2004 17:21:36 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7MHLaB0036791 for ; Sun, 22 Aug 2004 17:21:36 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7MHLaDu036787 for perforce@freebsd.org; Sun, 22 Aug 2004 17:21:36 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sun, 22 Aug 2004 17:21:36 GMT Message-Id: <200408221721.i7MHLaDu036787@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 60275 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Aug 2004 17:21:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=60275 Change 60275 by rwatson@rwatson_paprika on 2004/08/22 17:21:09 Integrate netperf_socket: ATA DMA disabled on sparc64 by default and various ATA bug fixes. GEOMified and fixed floppy disk driver. netperf-centric: GIANT_REQUIRED removed from setugidsafety() as KQueue is now MPSAFE. GIANT_REQUIRED removed from firewire_output(). Routing socket netisr queue size tunable. UDP link header optimization merged. in6_pcbnotify() locking fix merged. if_sk locking fixes. Affected files ... .. //depot/projects/netperf_socket/sys/boot/alpha/Makefile.inc#3 integrate .. //depot/projects/netperf_socket/sys/boot/alpha/common/Makefile.common#3 integrate .. //depot/projects/netperf_socket/sys/boot/alpha/common/ldscript#1 branch .. //depot/projects/netperf_socket/sys/boot/common/load.c#2 integrate .. //depot/projects/netperf_socket/sys/boot/ficl/Makefile#3 integrate .. //depot/projects/netperf_socket/sys/boot/sparc64/loader/main.c#3 integrate .. //depot/projects/netperf_socket/sys/conf/NOTES#38 integrate .. //depot/projects/netperf_socket/sys/conf/options.i386#6 integrate .. //depot/projects/netperf_socket/sys/conf/options.pc98#7 integrate .. //depot/projects/netperf_socket/sys/contrib/pf/net/pf_ioctl.c#10 integrate .. //depot/projects/netperf_socket/sys/dev/acpica/acpi_pci_link.c#11 integrate .. //depot/projects/netperf_socket/sys/dev/acpica/acpi_resource.c#10 integrate .. //depot/projects/netperf_socket/sys/dev/aic7xxx/aic79xx_pci.c#5 integrate .. //depot/projects/netperf_socket/sys/dev/aic7xxx/aic7xxx_pci.c#2 integrate .. //depot/projects/netperf_socket/sys/dev/ata/ata-dma.c#6 integrate .. //depot/projects/netperf_socket/sys/dev/ata/ata-pci.c#11 integrate .. //depot/projects/netperf_socket/sys/dev/ata/ata-queue.c#12 integrate .. //depot/projects/netperf_socket/sys/dev/fdc/fdc.c#9 integrate .. //depot/projects/netperf_socket/sys/dev/fdc/fdc_acpi.c#3 integrate .. //depot/projects/netperf_socket/sys/dev/fdc/fdc_isa.c#5 integrate .. //depot/projects/netperf_socket/sys/dev/fdc/fdc_pccard.c#5 integrate .. //depot/projects/netperf_socket/sys/dev/fdc/fdcreg.h#2 delete .. //depot/projects/netperf_socket/sys/dev/fdc/fdcvar.h#4 integrate .. //depot/projects/netperf_socket/sys/dev/mpt/mpt.c#2 integrate .. //depot/projects/netperf_socket/sys/dev/mpt/mpt_debug.c#3 integrate .. //depot/projects/netperf_socket/sys/dev/mpt/mpt_freebsd.c#2 integrate .. //depot/projects/netperf_socket/sys/dev/usb/usb_quirks.c#4 integrate .. //depot/projects/netperf_socket/sys/dev/usb/usbdevs#22 integrate .. //depot/projects/netperf_socket/sys/geom/raid3/g_raid3.c#3 integrate .. //depot/projects/netperf_socket/sys/geom/raid3/g_raid3.h#2 integrate .. //depot/projects/netperf_socket/sys/geom/raid3/g_raid3_ctl.c#2 integrate .. //depot/projects/netperf_socket/sys/geom/vinum/geom_vinum_rm.c#2 integrate .. //depot/projects/netperf_socket/sys/geom/vinum/geom_vinum_subr.c#6 integrate .. //depot/projects/netperf_socket/sys/i386/acpica/acpi_wakeup.c#8 integrate .. //depot/projects/netperf_socket/sys/i386/conf/NOTES#26 integrate .. //depot/projects/netperf_socket/sys/i386/i386/uio_machdep.c#5 integrate .. //depot/projects/netperf_socket/sys/kern/kern_descrip.c#18 integrate .. //depot/projects/netperf_socket/sys/kern/kern_module.c#4 integrate .. //depot/projects/netperf_socket/sys/kern/kern_shutdown.c#14 integrate .. //depot/projects/netperf_socket/sys/kern/kern_switch.c#10 integrate .. //depot/projects/netperf_socket/sys/kern/sched_4bsd.c#13 integrate .. //depot/projects/netperf_socket/sys/kern/subr_disk.c#2 integrate .. //depot/projects/netperf_socket/sys/kern/subr_kdb.c#6 integrate .. //depot/projects/netperf_socket/sys/kern/subr_rman.c#5 integrate .. //depot/projects/netperf_socket/sys/kern/uipc_socket.c#38 integrate .. //depot/projects/netperf_socket/sys/kern/vfs_subr.c#22 integrate .. //depot/projects/netperf_socket/sys/modules/agp/Makefile#4 integrate .. //depot/projects/netperf_socket/sys/net/if_fwsubr.c#6 integrate .. //depot/projects/netperf_socket/sys/net/route.c#12 integrate .. //depot/projects/netperf_socket/sys/net/rtsock.c#12 integrate .. //depot/projects/netperf_socket/sys/netgraph/bluetooth/include/ng_btsocket.h#4 integrate .. //depot/projects/netperf_socket/sys/netgraph/netgraph.h#8 integrate .. //depot/projects/netperf_socket/sys/netgraph/ng_message.h#4 integrate .. //depot/projects/netperf_socket/sys/netinet/ip_fw.h#10 integrate .. //depot/projects/netperf_socket/sys/netinet/ip_fw2.c#16 integrate .. //depot/projects/netperf_socket/sys/netinet/ip_fw_pfil.c#2 integrate .. //depot/projects/netperf_socket/sys/netinet/ip_input.c#23 integrate .. //depot/projects/netperf_socket/sys/netinet/ip_mroute.c#13 integrate .. //depot/projects/netperf_socket/sys/netinet/ip_output.c#18 integrate .. //depot/projects/netperf_socket/sys/netinet/raw_ip.c#14 integrate .. //depot/projects/netperf_socket/sys/netinet/tcp_subr.c#19 integrate .. //depot/projects/netperf_socket/sys/netinet/udp_usrreq.c#14 integrate .. //depot/projects/netperf_socket/sys/netinet6/in6_pcb.c#10 integrate .. //depot/projects/netperf_socket/sys/pc98/pc98/fd.c#13 integrate .. //depot/projects/netperf_socket/sys/pci/agp_ali.c#5 integrate .. //depot/projects/netperf_socket/sys/pci/agp_amd64.c#2 integrate .. //depot/projects/netperf_socket/sys/pci/agp_intel.c#6 integrate .. //depot/projects/netperf_socket/sys/pci/agp_sis.c#6 integrate .. //depot/projects/netperf_socket/sys/pci/agp_via.c#8 integrate .. //depot/projects/netperf_socket/sys/pci/if_sk.c#12 integrate .. //depot/projects/netperf_socket/sys/pci/if_skreg.h#3 integrate .. //depot/projects/netperf_socket/sys/security/mac_bsdextended/mac_bsdextended.c#4 integrate .. //depot/projects/netperf_socket/sys/sparc64/sparc64/uio_machdep.c#6 integrate .. //depot/projects/netperf_socket/sys/sys/bio.h#6 integrate .. //depot/projects/netperf_socket/sys/sys/fdcio.h#2 integrate .. //depot/projects/netperf_socket/sys/sys/param.h#26 integrate .. //depot/projects/netperf_socket/sys/ufs/ufs/ufs_vnops.c#7 integrate .. //depot/projects/netperf_socket/sys/vm/vm_fault.c#8 integrate Differences ... ==== //depot/projects/netperf_socket/sys/boot/alpha/Makefile.inc#3 (text+ko) ==== @@ -1,9 +1,9 @@ -# $FreeBSD: src/sys/boot/alpha/Makefile.inc,v 1.9 2004/02/11 22:01:16 ru Exp $ +# $FreeBSD: src/sys/boot/alpha/Makefile.inc,v 1.10 2004/08/22 06:24:59 marcel Exp $ # Options used when building app-specific libalpha components BINDIR?= /boot -CFLAGS+= -ffreestanding -mno-fp-regs +CFLAGS+= -ffreestanding -mno-fp-regs -Os LDFLAGS+= -nostdlib PRIMARY_LOAD_ADDRESS= 0x20000000 # "Region 1 start" SECONDARY_LOAD_ADDRESS= 0x2000c000 # "Region 1 start" + 48k ==== //depot/projects/netperf_socket/sys/boot/alpha/common/Makefile.common#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/boot/alpha/common/Makefile.common,v 1.18 2004/02/11 22:01:17 ru Exp $ +# $FreeBSD: src/sys/boot/alpha/common/Makefile.common,v 1.19 2004/08/22 00:26:01 marcel Exp $ # # Common Alpha loader build rules @@ -40,7 +40,7 @@ vers.c: ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version sh ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version ${NEWVERSWHAT} -LDFLAGS=-e start -N -Ttext ${LOAD_ADDRESS} +LDFLAGS=-e start -Ttext ${LOAD_ADDRESS} -T ${.CURDIR}/../common/ldscript FILES= ${BOOT} # XXX INSTALLFLAGS_${BOOT}= -b ==== //depot/projects/netperf_socket/sys/boot/common/load.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/common/load.c,v 1.3 2003/08/25 23:30:41 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/common/load.c,v 1.5 2004/08/22 08:57:05 maxim Exp $"); #include @@ -45,10 +45,10 @@ char *buf; int fd; size_t size, result; - + if ((fd = open(path, F_READ | flags)) == -1) return(NULL); - + printf("%s open, flags 0x%x\n", path, files[fd].f_flags); buf = alloc(LOAD_TINYBUF); @@ -68,12 +68,11 @@ printf("tinybuf loaded, size %d\n", size); getchar(); - - + /* Read everything until we know how big it is */ for (;;) { result = read(fd, buf, LOAD_TINYBUF); - if (size == -1) { + if (result == -1) { free(buf, LOAD_TINYBUF); close(fd); return(NULL); @@ -82,7 +81,7 @@ break; size += result; } - + /* discard the old buffer, close the file */ free(buf, LOAD_TINYBUF); close(fd); ==== //depot/projects/netperf_socket/sys/boot/ficl/Makefile#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.37 2004/02/07 08:10:07 ru Exp $ +# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.38 2004/08/22 06:24:59 marcel Exp $ # .PATH: ${.CURDIR}/${MACHINE_ARCH:S/amd64/i386/} BASE_SRCS= dict.c ficl.c fileaccess.c float.c loader.c math64.c \ @@ -8,7 +8,7 @@ CLEANFILES= softcore.c testmain testmain.o CFLAGS+= -ffreestanding .if ${MACHINE_ARCH} == "alpha" -CFLAGS+= -mno-fp-regs +CFLAGS+= -mno-fp-regs -Os .endif .if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64" CFLAGS+= -mpreferred-stack-boundary=2 ==== //depot/projects/netperf_socket/sys/boot/sparc64/loader/main.c#3 (text+ko) ==== @@ -8,7 +8,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/sparc64/loader/main.c,v 1.23 2004/08/16 15:45:25 marius Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/sparc64/loader/main.c,v 1.24 2004/08/19 20:13:31 kensmith Exp $"); /* * FreeBSD/sparc64 kernel loader - machine dependent part @@ -197,7 +197,9 @@ static int sparc64_autoload(void) { - printf("nothing to autoload yet.\n"); + /* XXX - Temporary hack needed for new ATA to work. */ + printf("Turning off DMA for ATA.\n"); + setenv("hw.ata.ata_dma", "0", 1); return 0; } ==== //depot/projects/netperf_socket/sys/conf/NOTES#38 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/NOTES,v 1.1262 2004/08/19 06:38:26 jmg Exp $ +# $FreeBSD: src/sys/conf/NOTES,v 1.1263 2004/08/19 18:29:55 andre Exp $ # # NOTES -- Lines that can be cut/pasted into kernel and hints configs. # @@ -599,6 +599,7 @@ # conjunction with the `ipfw' program. IPFIREWALL_VERBOSE sends # logged packets to the system logger. IPFIREWALL_VERBOSE_LIMIT # limits the number of times a matching entry can be logged. +# IPFIREWALL requires the option PFIL_HOOKS. # # WARNING: IPFIREWALL defaults to a policy of "deny ip from any to any" # and if you do not add other rules during startup to allow access, ==== //depot/projects/netperf_socket/sys/conf/options.i386#6 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options.i386,v 1.214 2004/08/16 12:25:47 obrien Exp $ +# $FreeBSD: src/sys/conf/options.i386,v 1.215 2004/08/19 20:58:23 obrien Exp $ # Options specific to the i386 platform kernels AUTO_EOI_1 opt_auto_eoi.h @@ -162,6 +162,3 @@ # Device options DEV_APIC opt_apic.h DEV_NPX opt_npx.h - -# agp options -AGP_AMD64_GART opt_agp.h ==== //depot/projects/netperf_socket/sys/conf/options.pc98#7 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options.pc98,v 1.178 2004/08/18 03:46:39 rwatson Exp $ +# $FreeBSD: src/sys/conf/options.pc98,v 1.179 2004/08/22 15:13:08 nyan Exp $ # Options specific to the pc98 platform kernels AUTO_EOI_1 opt_auto_eoi.h @@ -108,6 +108,3 @@ DEV_APIC opt_apic.h DEV_MECIA opt_mecia.h DEV_NPX opt_npx.h - -# agp options -AGP_AMD64_GART opt_agp.h ==== //depot/projects/netperf_socket/sys/contrib/pf/net/pf_ioctl.c#10 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/contrib/pf/net/pf_ioctl.c,v 1.12 2004/08/12 14:15:42 mlaier Exp $ */ +/* $FreeBSD: src/sys/contrib/pf/net/pf_ioctl.c,v 1.13 2004/08/22 15:23:48 mlaier Exp $ */ /* $OpenBSD: pf_ioctl.c,v 1.112.2.2 2004/07/24 18:28:12 brad Exp $ */ /* @@ -66,6 +66,7 @@ #ifdef __FreeBSD__ #include #include +#include #else #include #include @@ -979,7 +980,11 @@ int error = 0; /* XXX keep in sync with switch() below */ +#ifdef __FreeBSD__ + if (securelevel_gt(td->td_ucred, 1)) +#else if (securelevel > 1) +#endif switch (cmd) { case DIOCGETRULES: case DIOCGETRULE: ==== //depot/projects/netperf_socket/sys/dev/acpica/acpi_pci_link.c#11 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.25 2004/08/18 16:39:59 njl Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.26 2004/08/21 18:18:32 njl Exp $"); #include "opt_acpi.h" #include @@ -1018,7 +1018,7 @@ /* Walk through all PRT entries for this PCI bridge. */ ACPI_SERIAL_BEGIN(pci_link); TAILQ_FOREACH(entry, &acpi_prt_entries, links) { - if (entry->pcidev == dev || entry->pci_link == NULL) + if (entry->pcidev != dev || entry->pci_link == NULL) continue; link = entry->pci_link; ==== //depot/projects/netperf_socket/sys/dev/acpica/acpi_resource.c#10 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_resource.c,v 1.28 2004/08/13 06:22:13 njl Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_resource.c,v 1.30 2004/08/20 17:04:49 njl Exp $"); #include "opt_acpi.h" #include @@ -504,6 +504,51 @@ void *ar_parent; }; +/* + * Add a resource to the device's resource list. We define our own function + * for this since bus_set_resource() doesn't handle duplicates of any kind. + * + * XXX This should be merged into resource_list_add() eventually. + */ +static int +acpi_reslist_add(device_t dev, int type, int rid, u_long start, u_long count) +{ + struct resource_list_entry *rle; + struct resource_list *rl; + u_long end; + + end = start + count - 1; + rl = BUS_GET_RESOURCE_LIST(device_get_parent(dev), dev); + + /* + * Loop through all current resources to see if the new one overlaps + * any existing ones. If so, the old one always takes precedence and + * the new one is adjusted (or rejected). We check for three cases: + * + * 1. Tail of new resource overlaps head of old resource: truncate the + * new resource so it is contiguous with the start of the old. + * 2. New resource wholly contained within the old resource: error. + * 3. Head of new resource overlaps tail of old resource: truncate the + * new resource so it is contiguous, following the old. + */ + SLIST_FOREACH(rle, rl, link) { + if (rle->type == type) { + if (start < rle->start && end >= rle->start) { + count = rle->start - start; + break; + } else if (start >= rle->start && start <= rle->end) { + if (end > rle->end) { + start = rle->end + 1; + count = end - start + 1; + break; + } else + return (EEXIST); + } + } + } + return (bus_set_resource(dev, type, rid, start, count)); +} + static void acpi_res_set_init(device_t dev, void *arg, void **context) { @@ -534,7 +579,7 @@ if (cp == NULL) return; - bus_set_resource(dev, SYS_RES_IOPORT, cp->ar_nio++, base, length); + acpi_reslist_add(dev, SYS_RES_IOPORT, cp->ar_nio++, base, length); } static void @@ -557,7 +602,7 @@ if (cp == NULL) return; - bus_set_resource(dev, SYS_RES_MEMORY, cp->ar_nmem++, base, length); + acpi_reslist_add(dev, SYS_RES_MEMORY, cp->ar_nmem++, base, length); } static void @@ -584,7 +629,7 @@ if (count != 1) return; - bus_set_resource(dev, SYS_RES_IRQ, cp->ar_nirq++, *irq, 1); + acpi_reslist_add(dev, SYS_RES_IRQ, cp->ar_nirq++, *irq, 1); } static void @@ -599,7 +644,7 @@ if (count != 1) return; - bus_set_resource(dev, SYS_RES_DRQ, cp->ar_ndrq++, *drq, 1); + acpi_reslist_add(dev, SYS_RES_DRQ, cp->ar_ndrq++, *drq, 1); } static void ==== //depot/projects/netperf_socket/sys/dev/aic7xxx/aic79xx_pci.c#5 (text+ko) ==== @@ -46,7 +46,7 @@ #include "aic79xx_inline.h" #else #include -__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/aic79xx_pci.c,v 1.20 2004/08/04 17:55:34 gibbs Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/aic79xx_pci.c,v 1.21 2004/08/22 13:54:27 gibbs Exp $"); #include #include #endif @@ -996,9 +996,9 @@ u_int devconfig1; ahd->features |= AHD_RTI|AHD_NEW_IOCELL_OPTS - | AHD_NEW_DFCNTRL_OPTS|AHD_FAST_CDB_DELIVERY - | AHD_BUSFREEREV_BUG; - ahd->bugs |= AHD_LQOOVERRUN_BUG|AHD_EARLY_REQ_BUG; + | AHD_NEW_DFCNTRL_OPTS|AHD_FAST_CDB_DELIVERY; + ahd->bugs |= AHD_LQOOVERRUN_BUG|AHD_EARLY_REQ_BUG + | AHD_BUSFREEREV_BUG; /* * Some issues have been resolved in the 7901B. ==== //depot/projects/netperf_socket/sys/dev/aic7xxx/aic7xxx_pci.c#2 (text+ko) ==== @@ -48,7 +48,7 @@ #include "aic7xxx_93cx6.h" #else #include -__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/aic7xxx_pci.c,v 1.32 2003/12/17 00:02:10 gibbs Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/aic7xxx_pci.c,v 1.33 2004/08/22 14:02:43 gibbs Exp $"); #include #include #include @@ -2119,12 +2119,13 @@ * that the OS doesn't know about and rely on our chip * reset handler to handle the rest. */ - aic_pci_write_config(ahc->dev_softc, DEVCONFIG, /*bytes*/4, - ahc->bus_softc.pci_softc.devconfig); - aic_pci_write_config(ahc->dev_softc, PCIR_COMMAND, /*bytes*/1, - ahc->bus_softc.pci_softc.command); - aic_pci_write_config(ahc->dev_softc, CSIZE_LATTIME, /*bytes*/1, - ahc->bus_softc.pci_softc.csize_lattime); + aic_pci_write_config(ahc->dev_softc, DEVCONFIG, + ahc->bus_softc.pci_softc.devconfig, /*bytes*/4); + aic_pci_write_config(ahc->dev_softc, PCIR_COMMAND, + ahc->bus_softc.pci_softc.command, /*bytes*/1); + aic_pci_write_config(ahc->dev_softc, CSIZE_LATTIME, + ahc->bus_softc.pci_softc.csize_lattime, + /*bytes*/1); if ((ahc->flags & AHC_HAS_TERM_LOGIC) != 0) { struct seeprom_descriptor sd; u_int sxfrctl1; ==== //depot/projects/netperf_socket/sys/dev/ata/ata-dma.c#6 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-dma.c,v 1.129 2004/08/13 08:14:27 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-dma.c,v 1.130 2004/08/20 19:05:22 sos Exp $"); #include #include @@ -59,7 +59,6 @@ /* misc defines */ #define MAXTABSZ PAGE_SIZE #define MAXWSPCSZ PAGE_SIZE -#define MAXCTLDMASZ (2 * (MAXTABSZ + MAXPHYS)) struct ata_dc_cb_args { bus_addr_t maddr; @@ -95,10 +94,10 @@ { struct ata_dc_cb_args ccba; - if (bus_dma_tag_create(NULL, 1, 0, + if (bus_dma_tag_create(NULL, ch->dma->alignment, 0, BUS_SPACE_MAXADDR_32BIT, BUS_SPACE_MAXADDR, - NULL, NULL, MAXCTLDMASZ, - ATA_DMA_ENTRIES, BUS_SPACE_MAXSIZE_32BIT, + NULL, NULL, 16*1024*1024, + ATA_DMA_ENTRIES, ch->dma->max_iosize, BUS_DMA_ALLOCNOW, NULL, NULL, &ch->dma->dmatag)) goto error; @@ -110,8 +109,8 @@ if (bus_dma_tag_create(ch->dma->dmatag,ch->dma->alignment,ch->dma->boundary, BUS_SPACE_MAXADDR_32BIT, BUS_SPACE_MAXADDR, - NULL, NULL, ch->dma->max_iosize, - ATA_DMA_ENTRIES, ch->dma->boundary, + NULL, NULL, 16*1024*1024, + ATA_DMA_ENTRIES, ch->dma->max_iosize, BUS_DMA_ALLOCNOW, NULL, NULL, &ch->dma->ddmatag)) goto error; ==== //depot/projects/netperf_socket/sys/dev/ata/ata-pci.c#11 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-pci.c,v 1.87 2004/08/12 08:20:36 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-pci.c,v 1.88 2004/08/20 06:19:25 sos Exp $"); #include "opt_ata.h" #include @@ -535,7 +535,8 @@ ch->locking = ctlr->locking; ch->reset = ctlr->reset; - ctlr->dmainit(ch); + if (ctlr->r_res1) + ctlr->dmainit(ch); if (ch->dma) ch->dma->alloc(ch); ==== //depot/projects/netperf_socket/sys/dev/ata/ata-queue.c#12 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-queue.c,v 1.32 2004/08/16 09:32:35 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-queue.c,v 1.33 2004/08/22 15:54:08 sos Exp $"); #include "opt_ata.h" #include @@ -238,8 +238,16 @@ ATA_DEBUG_RQ(request, "completed called"); if (request->flags & ATA_R_TIMEOUT) { - /* workaround for devices failing to interrupt */ - if (request->status == (ATA_S_READY | ATA_S_DSC)) { + /* workarounds for devices failing to interrupt */ + if (!request->status) { + ata_prtdev(request->device, + "FAILURE - %s no interrupt\n", + ata_cmd2str(request)); + request->result = ENXIO; + ATA_UNLOCK_CH(channel); + channel->locking(channel, ATA_LF_UNLOCK); + } + else if (request->status == (ATA_S_READY | ATA_S_DSC)) { ata_prtdev(request->device, "WARNING - %s no interrupt but good status\n", ata_cmd2str(request)); ==== //depot/projects/netperf_socket/sys/dev/fdc/fdc.c#9 (text+ko) ==== @@ -1,4 +1,5 @@ /*- + * Copyright (c) 2004 Poul-Henning Kamp * Copyright (c) 1990 The Regents of the University of California. * All rights reserved. * @@ -46,10 +47,11 @@ * SUCH DAMAGE. * * from: @(#)fd.c 7.4 (Berkeley) 5/25/91 + * */ #include -__FBSDID("$FreeBSD: src/sys/dev/fdc/fdc.c,v 1.283 2004/08/14 21:40:28 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/fdc/fdc.c,v 1.285 2004/08/21 08:40:00 phk Exp $"); #include "opt_fdc.h" @@ -62,36 +64,56 @@ #include #include #include +#include #include #include #include #include #include #include +#include #include +#include + #include #include #include #include #include -#include #include #include -#define FDBIO_FORMAT BIO_CMD2 +#include + +/* + * Runtime configuration hints/flags + */ + +/* configuration flags for fd */ +#define FD_TYPEMASK 0x0f /* drive type, matches enum + * fd_drivetype; on i386 machines, if + * given as 0, use RTC type for fd0 + * and fd1 */ +#define FD_NO_CHLINE 0x10 /* drive does not support changeline + * aka. unit attention */ +#define FD_NO_PROBE 0x20 /* don't probe drive (seek test), just + * assume it is there */ -/* configuration flags for fdc */ -#define FDC_NO_FIFO (1 << 2) /* do not enable FIFO */ +/* + * Things that could conceiveably considered parameters or tweakables + */ /* - * Stop retrying after this many DMA overruns. Since each retry takes - * one revolution, with 300 rpm., 25 retries take approximately 5 - * seconds which the read attempt will block in case the DMA overrun - * is persistent. + * Maximal number of bytes in a cylinder. + * This is used for ISADMA bouncebuffer allocation and sets the max + * xfersize we support. + * + * 2.88M format has 2 x 36 x 512. */ -#define FDC_DMAOV_MAX 25 + +#define MAX_BYTES_PER_CYL (2 * 40 * 512) /* * Timeout value for the PIO loops to wait until the FDC main status @@ -105,230 +127,216 @@ #define FDSTS_TIMEOUT 100000 /* - * Number of subdevices that can be used for different density types. + * After this many errors, stop whining. Close will reset this count. */ -#define NUMDENS 16 - -#define FDBIO_RDSECTID BIO_CMD1 +#define FDC_ERRMAX 100 /* do not log more */ /* - * List of native drive densities. Order must match enum fd_drivetype - * in . Upon attaching the drive, each of the - * programmable subdevices is initialized with the native density - * definition. + * AutoDensity search lists for each drive type. */ -static struct fd_type fd_native_types[] = -{ -{ 0 }, /* FDT_NONE */ -{ 9,2,0xFF,0x2A,40, 720,FDC_250KBPS,2,0x50,1,0,FL_MFM }, /* FDT_360K */ -{ 15,2,0xFF,0x1B,80,2400,FDC_500KBPS,2,0x54,1,0,FL_MFM }, /* FDT_12M */ -{ 9,2,0xFF,0x20,80,1440,FDC_250KBPS,2,0x50,1,0,FL_MFM }, /* FDT_720K */ -{ 18,2,0xFF,0x1B,80,2880,FDC_500KBPS,2,0x6C,1,0,FL_MFM }, /* FDT_144M */ -#if 0 /* we currently don't handle 2.88 MB */ -{ 36,2,0xFF,0x1B,80,5760,FDC_1MBPS, 2,0x4C,1,1,FL_MFM|FL_PERPND } /*FDT_288M*/ -#else -{ 18,2,0xFF,0x1B,80,2880,FDC_500KBPS,2,0x6C,1,0,FL_MFM }, /* FDT_144M */ -#endif + +static struct fd_type fd_searchlist_360k[] = { + { FDF_5_360 }, + { 0 } }; -/* - * 360 KB 5.25" and 720 KB 3.5" drives don't have automatic density - * selection, they just start out with their native density (or lose). - * So 1.2 MB 5.25", 1.44 MB 3.5", and 2.88 MB 3.5" drives have their - * respective lists of densities to search for. - */ static struct fd_type fd_searchlist_12m[] = { -{ 15,2,0xFF,0x1B,80,2400,FDC_500KBPS,2,0x54,1,0,FL_MFM }, /* 1.2M */ -{ 9,2,0xFF,0x23,40, 720,FDC_300KBPS,2,0x50,1,0,FL_MFM|FL_2STEP }, /* 360K */ -{ 9,2,0xFF,0x20,80,1440,FDC_300KBPS,2,0x50,1,0,FL_MFM }, /* 720K */ + { FDF_5_1200 | FL_AUTO }, + { FDF_5_360 | FL_2STEP | FL_AUTO}, + { 0 } +}; + +static struct fd_type fd_searchlist_720k[] = { + { FDF_3_720 }, + { 0 } }; static struct fd_type fd_searchlist_144m[] = { -{ 18,2,0xFF,0x1B,80,2880,FDC_500KBPS,2,0x6C,1,0,FL_MFM }, /* 1.44M */ -{ 9,2,0xFF,0x20,80,1440,FDC_250KBPS,2,0x50,1,0,FL_MFM }, /* 720K */ + { FDF_3_1440 | FL_AUTO}, + { FDF_3_720 | FL_AUTO}, + { 0 } }; -/* We search for 1.44M first since this is the most common case. */ static struct fd_type fd_searchlist_288m[] = { -{ 18,2,0xFF,0x1B,80,2880,FDC_500KBPS,2,0x6C,1,0,FL_MFM }, /* 1.44M */ + { FDF_3_1440 | FL_AUTO }, #if 0 -{ 36,2,0xFF,0x1B,80,5760,FDC_1MBPS, 2,0x4C,1,1,FL_MFM|FL_PERPND } /* 2.88M */ + { FDF_3_2880 | FL_AUTO }, /* XXX: probably doesn't work */ #endif -{ 9,2,0xFF,0x20,80,1440,FDC_250KBPS,2,0x50,1,0,FL_MFM }, /* 720K */ + { FDF_3_720 | FL_AUTO}, + { 0 } +}; + +/* + * Order must match enum fd_drivetype in . + */ +static struct fd_type *fd_native_types[] = { + NULL, /* FDT_NONE */ + fd_searchlist_360k, /* FDT_360K */ + fd_searchlist_12m, /* FDT_12M */ + fd_searchlist_720k, /* FDT_720K */ + fd_searchlist_144m, /* FDT_144M */ + fd_searchlist_288m, /* FDT_288M */ }; -#define MAX_SEC_SIZE (128 << 3) -#define MAX_CYLINDER 85 /* some people really stress their drives - * up to cyl 82 */ -#define MAX_HEAD 1 +/* + * Internals start here + */ + +/* registers */ +#define FDOUT 2 /* Digital Output Register (W) */ +#define FDO_FDSEL 0x03 /* floppy device select */ +#define FDO_FRST 0x04 /* floppy controller reset */ +#define FDO_FDMAEN 0x08 /* enable floppy DMA and Interrupt */ +#define FDO_MOEN0 0x10 /* motor enable drive 0 */ +#define FDO_MOEN1 0x20 /* motor enable drive 1 */ +#define FDO_MOEN2 0x40 /* motor enable drive 2 */ +#define FDO_MOEN3 0x80 /* motor enable drive 3 */ + +#define FDSTS 4 /* NEC 765 Main Status Register (R) */ +#define FDDATA 5 /* NEC 765 Data Register (R/W) */ +#define FDCTL 7 /* Control Register (W) */ + +/* + * this is the secret PIO data port (offset from base) + */ +#define FDC_YE_DATAPORT 6 + +#define FDI_DCHG 0x80 /* diskette has been changed */ + /* requires drive and motor being selected */ + /* is cleared by any step pulse to drive */ -devclass_t fdc_devclass; +/* + * We have two private BIO commands for formatting and sector-id reading + */ +#define BIO_PROBE BIO_CMD0 +#define BIO_RDID BIO_CMD1 +#define BIO_FMT BIO_CMD2 /* * Per drive structure (softc). */ struct fd_data { + u_char *fd_ioptr; /* IO pointer */ + u_int fd_iosize; /* Size of IO chunks */ + u_int fd_iocount; /* Outstanding requests */ struct fdc_data *fdc; /* pointer to controller structure */ int fdsu; /* this units number on this controller */ enum fd_drivetype type; /* drive type */ struct fd_type *ft; /* pointer to current type descriptor */ - struct fd_type fts[NUMDENS]; /* type descriptors */ + struct fd_type fts; /* type descriptors */ + int sectorsize; int flags; -#define FD_OPEN 0x01 /* it's open */ -#define FD_NONBLOCK 0x02 /* O_NONBLOCK set */ -#define FD_ACTIVE 0x04 /* it's active */ -#define FD_MOTOR 0x08 /* motor should be on */ -#define FD_MOTOR_WAIT 0x10 /* motor coming up */ -#define FD_UA 0x20 /* force unit attention */ - int skip; - int hddrv; -#define FD_NO_TRACK -2 +#define FD_WP (1<<0) /* Write protected */ +#define FD_MOTOR (1<<1) /* motor should be on */ +#define FD_MOTORWAIT (1<<2) /* motor should be on */ +#define FD_EMPTY (1<<3) /* no media */ +#define FD_NEWDISK (1<<4) /* media changed */ +#define FD_ISADMA (1<<5) /* isa dma started */ int track; /* where we think the head is */ - int options; /* user configurable options, see fdcio.h */ - struct callout_handle toffhandle; - struct callout_handle tohandle; - struct devstat *device_stats; - struct cdev *masterdev; +#define FD_NO_TRACK -2 + int options; /* FDOPT_* */ + struct callout toffhandle; + struct callout tohandle; + struct g_geom *fd_geom; + struct g_provider *fd_provider; device_t dev; - fdu_t fdu; + struct bio_queue_head fd_bq; }; -struct fdc_ivars { - int fdunit; - int fdtype; -}; +#define FD_NOT_VALID -2 + +static driver_intr_t fdc_intr; +static void fdc_reset(struct fdc_data *); + +SYSCTL_NODE(_debug, OID_AUTO, fdc, CTLFLAG_RW, 0, "fdc driver"); + +static int fifo_threshold = 8; +SYSCTL_INT(_debug_fdc, OID_AUTO, fifo, CTLFLAG_RW, &fifo_threshold, 0, + "FIFO threshold setting"); + +static int debugflags = 0; +SYSCTL_INT(_debug_fdc, OID_AUTO, debugflags, CTLFLAG_RW, &debugflags, 0, + "Debug flags"); + +static int retries = 10; +SYSCTL_INT(_debug_fdc, OID_AUTO, retries, CTLFLAG_RW, &retries, 0, + "Number of retries to attempt"); -static devclass_t fd_devclass; +static int spec1 = 0xaf; +SYSCTL_INT(_debug_fdc, OID_AUTO, spec1, CTLFLAG_RW, &spec1, 0, + "Specification byte one (step-rate + head unload)"); -/* configuration flags for fd */ -#define FD_TYPEMASK 0x0f /* drive type, matches enum - * fd_drivetype; on i386 machines, if - * given as 0, use RTC type for fd0 - * and fd1 */ -#define FD_DTYPE(flags) ((flags) & FD_TYPEMASK) -#define FD_NO_CHLINE 0x10 /* drive does not support changeline - * aka. unit attention */ -#define FD_NO_PROBE 0x20 /* don't probe drive (seek test), just - * assume it is there */ +static int spec2 = 0x10; +SYSCTL_INT(_debug_fdc, OID_AUTO, spec2, CTLFLAG_RW, &spec2, 0, + "Specification byte two (head load time + no-dma)"); -/* - * Throughout this file the following conventions will be used: - * - * fd is a pointer to the fd_data struct for the drive in question - * fdc is a pointer to the fdc_data struct for the controller - * fdu is the floppy drive unit number - * fdcu is the floppy controller unit number - * fdsu is the floppy drive unit number on that controller. (sub-unit) - */ +static int settle; +SYSCTL_INT(_debug_fdc, OID_AUTO, settle, CTLFLAG_RW, &settle, 0, + "Head settling time in sec/hz"); -/* - * Function declarations, same (chaotic) order as they appear in the - * file. Re-ordering is too late now, it would only obfuscate the - * diffs against old and offspring versions (like the PC98 one). - * - * Anyone adding functions here, please keep this sequence the same - * as below -- makes locating a particular function in the body much - * easier. - */ -static u_int8_t fdsts_rd(fdc_p); -static void fddata_wr(fdc_p, u_int8_t); -static u_int8_t fddata_rd(fdc_p); -#if 0 -static u_int8_t fdin_rd(fdc_p); -#endif -static int fdc_err(struct fdc_data *, const char *); -static int enable_fifo(fdc_p fdc); -static int fd_sense_drive_status(fdc_p, int *); -static int fd_sense_int(fdc_p, int *, int *); -static int fd_read_status(fdc_p); -static int fd_probe(device_t); -static int fd_attach(device_t); -static int fd_detach(device_t); -static void set_motor(struct fdc_data *, int, int); -# define TURNON 1 -# define TURNOFF 0 -static timeout_t fd_turnoff; -static timeout_t fd_motor_on; -static void fd_turnon(struct fd_data *); -static void fdc_reset(fdc_p); -static int fd_in(struct fdc_data *, int *); -static int out_fdc(struct fdc_data *, int); -static d_open_t fdopen; -static d_close_t fdclose; -static d_strategy_t fdstrategy; -static void fdstart(struct fdc_data *); -static timeout_t fd_iotimeout; -static timeout_t fd_pseudointr; -static driver_intr_t fdc_intr; -static int fdcpio(fdc_p, long, caddr_t, u_int); -static int fdautoselect(struct cdev *); -static int fdstate(struct fdc_data *); -static int retrier(struct fdc_data *); -static void fdbiodone(struct bio *); -static int fdmisccmd(struct cdev *, u_int, void *); -static d_ioctl_t fdioctl; +static void +fdprinttype(struct fd_type *ft) +{ -static int fifo_threshold = 8; /* XXX: should be accessible via sysctl */ + printf("(%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,0x%x)", + ft->sectrac, ft->secsize, ft->datalen, ft->gap, ft->tracks, + ft->size, ft->trans, ft->heads, ft->f_gap, ft->f_inter, + ft->offset_side2, ft->flags); +} -#ifdef FDC_DEBUG -/* CAUTION: fd_debug causes huge amounts of logging output */ -static int volatile fd_debug = 0; -#define TRACE0(arg) do { if (fd_debug) printf(arg); } while (0) -#define TRACE1(arg1, arg2) do { if (fd_debug) printf(arg1, arg2); } while (0) -#else /* FDC_DEBUG */ -#define TRACE0(arg) do { } while (0) -#define TRACE1(arg1, arg2) do { } while (0) -#endif /* FDC_DEBUG */ +static void +fdsettype(struct fd_data *fd, struct fd_type *ft) +{ + fd->ft = ft; + ft->size = ft->sectrac * ft->heads * ft->tracks; + fd->sectorsize = 128 << fd->ft->secsize; +} /* * Bus space handling (access to low-level IO). */ -void -fdout_wr(fdc_p fdc, u_int8_t v) +static void +fdctl_wr(struct fdc_data *fdc, u_int8_t v) +{ + + bus_space_write_1(fdc->ctlt, fdc->ctlh, fdc->ctl_off, v); +} + +static void +fdout_wr(struct fdc_data *fdc, u_int8_t v) { + bus_space_write_1(fdc->portt, fdc->porth, FDOUT+fdc->port_off, v); } static u_int8_t -fdsts_rd(fdc_p fdc) +fdsts_rd(struct fdc_data *fdc) { + return bus_space_read_1(fdc->portt, fdc->porth, FDSTS+fdc->port_off); } static void -fddata_wr(fdc_p fdc, u_int8_t v) +fddata_wr(struct fdc_data *fdc, u_int8_t v) { + >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Aug 23 20:40:00 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5676E16A4D0; Mon, 23 Aug 2004 20:40:00 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 31A5D16A4CE for ; Mon, 23 Aug 2004 20:40:00 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0D4A343D6B for ; Mon, 23 Aug 2004 20:40:00 +0000 (GMT) (envelope-from julian@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7NKdveW092792 for ; Mon, 23 Aug 2004 20:39:57 GMT (envelope-from julian@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7NKduIL092789 for perforce@freebsd.org; Mon, 23 Aug 2004 20:39:56 GMT (envelope-from julian@freebsd.org) Date: Mon, 23 Aug 2004 20:39:56 GMT Message-Id: <200408232039.i7NKduIL092789@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to julian@freebsd.org using -f From: Julian Elischer To: Perforce Change Reviews Subject: PERFORCE change 60321 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 Aug 2004 20:40:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=60321 Change 60321 by julian@julian_ref on 2004/08/23 20:39:14 IFC Affected files ... .. //depot/projects/nsched/sys/boot/alpha/Makefile.inc#2 integrate .. //depot/projects/nsched/sys/boot/common/load.c#2 integrate .. //depot/projects/nsched/sys/boot/ficl/Makefile#2 integrate .. //depot/projects/nsched/sys/compat/linux/linux_socket.c#4 integrate .. //depot/projects/nsched/sys/conf/files#18 integrate .. //depot/projects/nsched/sys/conf/options.pc98#4 integrate .. //depot/projects/nsched/sys/contrib/pf/net/pf_ioctl.c#7 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi.c#11 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_resource.c#8 integrate .. //depot/projects/nsched/sys/dev/acpica/acpivar.h#10 integrate .. //depot/projects/nsched/sys/dev/aic7xxx/aic79xx_pci.c#4 integrate .. //depot/projects/nsched/sys/dev/aic7xxx/aic7xxx_pci.c#2 integrate .. //depot/projects/nsched/sys/dev/ata/ata-queue.c#5 integrate .. //depot/projects/nsched/sys/dev/isp/isp_freebsd.c#4 integrate .. //depot/projects/nsched/sys/dev/lnc/if_lnc_pci.c#3 integrate .. //depot/projects/nsched/sys/dev/md/md.c#8 integrate .. //depot/projects/nsched/sys/dev/sound/pci/maestro.c#3 integrate .. //depot/projects/nsched/sys/geom/raid3/g_raid3.c#2 integrate .. //depot/projects/nsched/sys/geom/raid3/g_raid3.h#2 integrate .. //depot/projects/nsched/sys/geom/raid3/g_raid3_ctl.c#2 integrate .. //depot/projects/nsched/sys/geom/vinum/geom_vinum_raid5.c#3 integrate .. //depot/projects/nsched/sys/geom/vinum/geom_vinum_rm.c#2 integrate .. //depot/projects/nsched/sys/geom/vinum/geom_vinum_subr.c#4 integrate .. //depot/projects/nsched/sys/i386/conf/NOTES#10 integrate .. //depot/projects/nsched/sys/i386/i386/nexus.c#6 integrate .. //depot/projects/nsched/sys/i386/i386/p4tcc.c#2 integrate .. //depot/projects/nsched/sys/kern/kern_lock.c#4 integrate .. //depot/projects/nsched/sys/kern/subr_kdb.c#3 integrate .. //depot/projects/nsched/sys/modules/agp/Makefile#3 integrate .. //depot/projects/nsched/sys/modules/ipfw/Makefile#3 integrate .. //depot/projects/nsched/sys/net/if_fwsubr.c#3 integrate .. //depot/projects/nsched/sys/net/if_sl.c#8 integrate .. //depot/projects/nsched/sys/netinet/ip_output.c#8 integrate .. //depot/projects/nsched/sys/netinet6/in6.c#3 integrate .. //depot/projects/nsched/sys/netinet6/in6_ifattach.c#2 integrate .. //depot/projects/nsched/sys/netinet6/in6_prefix.c#3 delete .. //depot/projects/nsched/sys/netinet6/in6_prefix.h#2 delete .. //depot/projects/nsched/sys/netinet6/in6_proto.c#4 integrate .. //depot/projects/nsched/sys/netinet6/ip6_input.c#6 integrate .. //depot/projects/nsched/sys/netinet6/nd6.c#3 integrate .. //depot/projects/nsched/sys/pc98/pc98/fd.c#6 integrate .. //depot/projects/nsched/sys/sys/fdcio.h#3 integrate .. //depot/projects/nsched/sys/vm/vm_page.h#6 integrate Differences ... ==== //depot/projects/nsched/sys/boot/alpha/Makefile.inc#2 (text+ko) ==== @@ -1,9 +1,9 @@ -# $FreeBSD: src/sys/boot/alpha/Makefile.inc,v 1.9 2004/02/11 22:01:16 ru Exp $ +# $FreeBSD: src/sys/boot/alpha/Makefile.inc,v 1.11 2004/08/23 16:25:07 obrien Exp $ # Options used when building app-specific libalpha components BINDIR?= /boot -CFLAGS+= -ffreestanding -mno-fp-regs +CFLAGS+= -ffreestanding -mno-fp-regs -Os LDFLAGS+= -nostdlib PRIMARY_LOAD_ADDRESS= 0x20000000 # "Region 1 start" SECONDARY_LOAD_ADDRESS= 0x2000c000 # "Region 1 start" + 48k ==== //depot/projects/nsched/sys/boot/common/load.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/common/load.c,v 1.3 2003/08/25 23:30:41 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/common/load.c,v 1.5 2004/08/22 08:57:05 maxim Exp $"); #include @@ -45,10 +45,10 @@ char *buf; int fd; size_t size, result; - + if ((fd = open(path, F_READ | flags)) == -1) return(NULL); - + printf("%s open, flags 0x%x\n", path, files[fd].f_flags); buf = alloc(LOAD_TINYBUF); @@ -68,12 +68,11 @@ printf("tinybuf loaded, size %d\n", size); getchar(); - - + /* Read everything until we know how big it is */ for (;;) { result = read(fd, buf, LOAD_TINYBUF); - if (size == -1) { + if (result == -1) { free(buf, LOAD_TINYBUF); close(fd); return(NULL); @@ -82,7 +81,7 @@ break; size += result; } - + /* discard the old buffer, close the file */ free(buf, LOAD_TINYBUF); close(fd); ==== //depot/projects/nsched/sys/boot/ficl/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.37 2004/02/07 08:10:07 ru Exp $ +# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.39 2004/08/23 16:25:07 obrien Exp $ # .PATH: ${.CURDIR}/${MACHINE_ARCH:S/amd64/i386/} BASE_SRCS= dict.c ficl.c fileaccess.c float.c loader.c math64.c \ @@ -8,7 +8,7 @@ CLEANFILES= softcore.c testmain testmain.o CFLAGS+= -ffreestanding .if ${MACHINE_ARCH} == "alpha" -CFLAGS+= -mno-fp-regs +CFLAGS+= -mno-fp-regs -Os .endif .if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64" CFLAGS+= -mpreferred-stack-boundary=2 ==== //depot/projects/nsched/sys/compat/linux/linux_socket.c#4 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_socket.c,v 1.51 2004/08/16 07:28:16 tjr Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_socket.c,v 1.52 2004/08/23 12:41:29 des Exp $"); /* XXX we use functions that might not exist. */ #include "opt_compat.h" @@ -1011,7 +1011,8 @@ if (error) return (error); - if (bsd_args.msg->msg_control != NULL) { + if (bsd_args.msg->msg_control != NULL && + bsd_args.msg->msg_controllen > 0) { cmsg = (struct cmsghdr*)bsd_args.msg->msg_control; cmsg->cmsg_level = bsd_to_linux_sockopt_level(cmsg->cmsg_level); } ==== //depot/projects/nsched/sys/conf/files#18 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.943 2004/08/17 22:05:53 andre Exp $ +# $FreeBSD: src/sys/conf/files,v 1.944 2004/08/23 03:00:25 rwatson Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -1516,7 +1516,6 @@ netinet6/in6_gif.c optional gif inet6 netinet6/in6_ifattach.c optional inet6 netinet6/in6_pcb.c optional inet6 -netinet6/in6_prefix.c optional inet6 netinet6/in6_proto.c optional inet6 netinet6/in6_rmx.c optional inet6 netinet6/in6_src.c optional inet6 ==== //depot/projects/nsched/sys/conf/options.pc98#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options.pc98,v 1.178 2004/08/18 03:46:39 rwatson Exp $ +# $FreeBSD: src/sys/conf/options.pc98,v 1.179 2004/08/22 15:13:08 nyan Exp $ # Options specific to the pc98 platform kernels AUTO_EOI_1 opt_auto_eoi.h @@ -108,6 +108,3 @@ DEV_APIC opt_apic.h DEV_MECIA opt_mecia.h DEV_NPX opt_npx.h - -# agp options -AGP_AMD64_GART opt_agp.h ==== //depot/projects/nsched/sys/contrib/pf/net/pf_ioctl.c#7 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/contrib/pf/net/pf_ioctl.c,v 1.12 2004/08/12 14:15:42 mlaier Exp $ */ +/* $FreeBSD: src/sys/contrib/pf/net/pf_ioctl.c,v 1.13 2004/08/22 15:23:48 mlaier Exp $ */ /* $OpenBSD: pf_ioctl.c,v 1.112.2.2 2004/07/24 18:28:12 brad Exp $ */ /* @@ -66,6 +66,7 @@ #ifdef __FreeBSD__ #include #include +#include #else #include #include @@ -979,7 +980,11 @@ int error = 0; /* XXX keep in sync with switch() below */ +#ifdef __FreeBSD__ + if (securelevel_gt(td->td_ucred, 1)) +#else if (securelevel > 1) +#endif switch (cmd) { case DIOCGETRULES: case DIOCGETRULE: ==== //depot/projects/nsched/sys/dev/acpica/acpi.c#11 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/acpica/acpi.c,v 1.188 2004/08/18 07:00:43 njl Exp $ + * $FreeBSD: src/sys/dev/acpica/acpi.c,v 1.189 2004/08/23 16:28:42 njl Exp $ */ #include "opt_acpi.h" @@ -83,9 +83,6 @@ /* Bitmap of device quirks. */ int acpi_quirks; -/* Local pools for managing system resources for ACPI child devices. */ -struct rman acpi_rman_io, acpi_rman_mem; - static int acpi_modevent(struct module *mod, int event, void *junk); static void acpi_identify(driver_t *driver, device_t parent); static int acpi_probe(device_t dev); @@ -99,6 +96,9 @@ static int acpi_write_ivar(device_t dev, device_t child, int index, uintptr_t value); static struct resource_list *acpi_get_rlist(device_t dev, device_t child); +static int acpi_sysres_alloc(device_t dev); +static struct resource_list_entry *acpi_sysres_find(device_t dev, int type, + u_long addr); static struct resource *acpi_alloc_resource(device_t bus, device_t child, int type, int *rid, u_long start, u_long end, u_long count, u_int flags); @@ -189,6 +189,9 @@ ACPI_SERIAL_DECL(acpi, "ACPI root bus"); +/* Local pools for managing system resources for ACPI child devices. */ +static struct rman acpi_rman_io, acpi_rman_mem; + #define ACPI_MINIMUM_AWAKETIME 5 static const char* sleep_state_names[] = { @@ -745,6 +748,75 @@ return (&ad->ad_rl); } +/* + * Pre-allocate/manage all memory and IO resources. Since rman can't handle + * duplicates, we merge any in the sysresource attach routine. + */ +static int +acpi_sysres_alloc(device_t dev) +{ + struct resource *res; + struct resource_list *rl; + struct resource_list_entry *rle; + struct rman *rm; + + rl = BUS_GET_RESOURCE_LIST(device_get_parent(dev), dev); + SLIST_FOREACH(rle, rl, link) { + if (rle->res != NULL) { + device_printf(dev, "duplicate resource for %lx\n", rle->start); + continue; + } + + /* Only memory and IO resources are valid here. */ + switch (rle->type) { + case SYS_RES_IOPORT: + rm = &acpi_rman_io; + break; + case SYS_RES_MEMORY: + rm = &acpi_rman_mem; + break; + default: + continue; + } + + /* Pre-allocate resource and add to our rman pool. */ + res = BUS_ALLOC_RESOURCE(device_get_parent(dev), dev, rle->type, + &rle->rid, rle->start, rle->start + rle->count - 1, rle->count, 0); + if (res != NULL) { + rman_manage_region(rm, rman_get_start(res), rman_get_end(res)); + rle->res = res; + } else + device_printf(dev, "reservation of %lx, %lx (%d) failed\n", + rle->start, rle->count, rle->type); + } + return (0); +} + +/* Find if we manage a given resource. */ +static struct resource_list_entry * +acpi_sysres_find(device_t dev, int type, u_long addr) +{ + struct resource_list *rl; + struct resource_list_entry *rle; + + ACPI_SERIAL_ASSERT(acpi); + + /* We only consider IO and memory resources for our pool. */ + rle = NULL; + if (type != SYS_RES_IOPORT && type != SYS_RES_MEMORY) + goto out; + + rl = BUS_GET_RESOURCE_LIST(device_get_parent(dev), dev); + SLIST_FOREACH(rle, rl, link) { + if (type == rle->type && addr >= rle->start && + addr < rle->start + rle->count) + break; + } + +out: + return (rle); +} + static struct resource * acpi_alloc_resource(device_t bus, device_t child, int type, int *rid, u_long start, u_long end, u_long count, u_int flags) @@ -774,7 +846,7 @@ } /* If we don't manage this address, pass the request up to the parent. */ - rle = acpi_sysres_find(type, start); + rle = acpi_sysres_find(bus, type, start); if (rle == NULL) { res = BUS_ALLOC_RESOURCE(device_get_parent(bus), child, type, rid, start, end, count, flags); @@ -844,7 +916,7 @@ * If we know about this address, deactivate it and release it to the * local pool. If we don't, pass this request up to the parent. */ - if (acpi_sysres_find(type, rman_get_start(r)) == NULL) { + if (acpi_sysres_find(bus, type, rman_get_start(r)) == NULL) { if (rman_get_flags(r) & RF_ACTIVE) { ret = bus_deactivate_resource(child, type, rid, r); if (ret != 0) @@ -1134,6 +1206,9 @@ } } + /* Pre-allocate resources for our rman from any sysresource devices. */ + acpi_sysres_alloc(bus); + /* Create any static children by calling device identify methods. */ ACPI_DEBUG_PRINT((ACPI_DB_OBJECTS, "device identify routines\n")); bus_generic_probe(bus); @@ -1757,7 +1832,7 @@ case ACPI_STATE_S2: case ACPI_STATE_S3: case ACPI_STATE_S4: - status = AcpiGetSleepTypeData((UINT8)state, &TypeA, &TypeB); + status = AcpiGetSleepTypeData(state, &TypeA, &TypeB); if (status == AE_NOT_FOUND) { device_printf(sc->acpi_dev, "Sleep state S%d not supported by BIOS\n", state); @@ -1807,7 +1882,7 @@ AcpiEnable(); } else { ACPI_DISABLE_IRQS(); - status = AcpiEnterSleepState((UINT8)state); + status = AcpiEnterSleepState(state); if (ACPI_FAILURE(status)) { device_printf(sc->acpi_dev, "AcpiEnterSleepState failed - %s\n", AcpiFormatException(status)); ==== //depot/projects/nsched/sys/dev/acpica/acpi_resource.c#8 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_resource.c,v 1.30 2004/08/20 17:04:49 njl Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_resource.c,v 1.31 2004/08/23 16:28:42 njl Exp $"); #include "opt_acpi.h" #include @@ -504,51 +504,6 @@ void *ar_parent; }; -/* - * Add a resource to the device's resource list. We define our own function - * for this since bus_set_resource() doesn't handle duplicates of any kind. - * - * XXX This should be merged into resource_list_add() eventually. - */ -static int -acpi_reslist_add(device_t dev, int type, int rid, u_long start, u_long count) -{ - struct resource_list_entry *rle; - struct resource_list *rl; - u_long end; - - end = start + count - 1; - rl = BUS_GET_RESOURCE_LIST(device_get_parent(dev), dev); - - /* - * Loop through all current resources to see if the new one overlaps - * any existing ones. If so, the old one always takes precedence and - * the new one is adjusted (or rejected). We check for three cases: - * - * 1. Tail of new resource overlaps head of old resource: truncate the - * new resource so it is contiguous with the start of the old. - * 2. New resource wholly contained within the old resource: error. - * 3. Head of new resource overlaps tail of old resource: truncate the - * new resource so it is contiguous, following the old. - */ - SLIST_FOREACH(rle, rl, link) { - if (rle->type == type) { - if (start < rle->start && end >= rle->start) { - count = rle->start - start; - break; - } else if (start >= rle->start && start <= rle->end) { - if (end > rle->end) { - start = rle->end + 1; - count = end - start + 1; - break; - } else - return (EEXIST); - } - } - } - return (bus_set_resource(dev, type, rid, start, count)); -} - static void acpi_res_set_init(device_t dev, void *arg, void **context) { @@ -579,7 +534,7 @@ if (cp == NULL) return; - acpi_reslist_add(dev, SYS_RES_IOPORT, cp->ar_nio++, base, length); + bus_set_resource(dev, SYS_RES_IOPORT, cp->ar_nio++, base, length); } static void @@ -602,7 +557,7 @@ if (cp == NULL) return; - acpi_reslist_add(dev, SYS_RES_MEMORY, cp->ar_nmem++, base, length); + bus_set_resource(dev, SYS_RES_MEMORY, cp->ar_nmem++, base, length); } static void @@ -629,7 +584,7 @@ if (count != 1) return; - acpi_reslist_add(dev, SYS_RES_IRQ, cp->ar_nirq++, *irq, 1); + bus_set_resource(dev, SYS_RES_IRQ, cp->ar_nirq++, *irq, 1); } static void @@ -644,7 +599,7 @@ if (count != 1) return; - acpi_reslist_add(dev, SYS_RES_DRQ, cp->ar_ndrq++, *drq, 1); + bus_set_resource(dev, SYS_RES_DRQ, cp->ar_ndrq++, *drq, 1); } static void @@ -670,11 +625,13 @@ /* * Resource-owning placeholders for IO and memory pseudo-devices. * - * This code allocates system resource objects that will be owned by ACPI - * child devices. Really, the acpi parent device should have the resources - * but this would significantly affect the device probe code. + * This code allocates system resources that will be used by ACPI + * child devices. The acpi parent manages these resources through a + * private rman. */ +static int acpi_sysres_rid = 100; + static int acpi_sysres_probe(device_t dev); static int acpi_sysres_attach(device_t dev); @@ -714,79 +671,66 @@ static int acpi_sysres_attach(device_t dev) { - device_t gparent; - struct resource *res; - struct rman *rm; - struct resource_list_entry *rle; - struct resource_list *rl; + device_t bus; + struct resource_list_entry *bus_rle, *dev_rle; + struct resource_list *bus_rl, *dev_rl; + int done, type; + u_long start, end, count; /* - * Pre-allocate/manage all memory and IO resources. We detect duplicates - * by setting rle->res to the resource we got from the parent. We can't - * ignore them since rman can't handle duplicates. + * Loop through all current resources to see if the new one overlaps + * any existing ones. If so, grow the old one up and/or down + * accordingly. Discard any that are wholly contained in the old. If + * the resource is unique, add it to the parent. It will later go into + * the rman pool. */ - rl = BUS_GET_RESOURCE_LIST(device_get_parent(dev), dev); - SLIST_FOREACH(rle, rl, link) { - if (rle->res != NULL) { - device_printf(dev, "duplicate resource for %lx\n", rle->start); + bus = device_get_parent(dev); + dev_rl = BUS_GET_RESOURCE_LIST(bus, dev); + bus_rl = BUS_GET_RESOURCE_LIST(device_get_parent(bus), bus); + SLIST_FOREACH(dev_rle, dev_rl, link) { + if (dev_rle->type != SYS_RES_IOPORT && dev_rle->type != SYS_RES_MEMORY) continue; - } - /* Only memory and IO resources are valid here. */ - switch (rle->type) { - case SYS_RES_IOPORT: - rm = &acpi_rman_io; - break; - case SYS_RES_MEMORY: - rm = &acpi_rman_mem; - break; - default: - continue; - } + start = dev_rle->start; + end = dev_rle->end; + count = dev_rle->count; + type = dev_rle->type; + done = FALSE; - /* Pre-allocate resource and add to our rman pool. */ - gparent = device_get_parent(device_get_parent(dev)); - res = BUS_ALLOC_RESOURCE(gparent, dev, rle->type, &rle->rid, - rle->start, rle->start + rle->count - 1, rle->count, 0); - if (res != NULL) { - rman_manage_region(rm, rman_get_start(res), rman_get_end(res)); - rle->res = res; - } - } + SLIST_FOREACH(bus_rle, bus_rl, link) { + if (bus_rle->type != type) + continue; - return (0); -} + /* New resource wholly contained in old, discard. */ + if (start >= bus_rle->start && end <= bus_rle->end) + break; -/* XXX The resource list may require locking and refcounting. */ -struct resource_list_entry * -acpi_sysres_find(int type, u_long addr) -{ - device_t *devs; - int i, numdevs; - struct resource_list *rl; - struct resource_list_entry *rle; + /* New tail overlaps old head, grow existing resource downward. */ + if (start < bus_rle->start && end >= bus_rle->start) { + bus_rle->count += bus_rle->start - start; + bus_rle->start = start; + done = TRUE; + } - /* We only consider IO and memory resources for our pool. */ - rle = NULL; - if (type != SYS_RES_IOPORT && type != SYS_RES_MEMORY) - return (rle); + /* New head overlaps old tail, grow existing resource upward. */ + if (start <= bus_rle->end && end > bus_rle->end) { + bus_rle->count += end - bus_rle->end; + bus_rle->end = end; + done = TRUE; + } - /* Find all the sysresource devices. */ - if (devclass_get_devices(acpi_sysres_devclass, &devs, &numdevs) != 0) - return (rle); - - /* Check each device for a resource that contains "addr". */ - for (i = 0; i < numdevs && rle == NULL; i++) { - rl = BUS_GET_RESOURCE_LIST(device_get_parent(devs[i]), devs[i]); - if (rl == NULL) - continue; - SLIST_FOREACH(rle, rl, link) { - if (type == rle->type && addr >= rle->start && - addr < rle->start + rle->count) + /* If we adjusted the old resource, we're finished. */ + if (done) break; } + + /* If we didn't merge with anything, add this resource. */ + if (bus_rle == NULL) + bus_set_resource(bus, type, acpi_sysres_rid++, start, count); } - free(devs, M_TEMP); - return (rle); + /* After merging/moving resources to the parent, free the list. */ + resource_list_free(dev_rl); + + return (0); } ==== //depot/projects/nsched/sys/dev/acpica/acpivar.h#10 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/acpica/acpivar.h,v 1.80 2004/08/18 05:48:24 njl Exp $ + * $FreeBSD: src/sys/dev/acpica/acpivar.h,v 1.81 2004/08/23 16:28:42 njl Exp $ */ #include "acpi_if.h" @@ -306,8 +306,6 @@ struct resource *res, ACPI_RESOURCE *acpi_res); ACPI_STATUS acpi_parse_resources(device_t dev, ACPI_HANDLE handle, struct acpi_parse_resource_set *set, void *arg); -extern struct rman acpi_rman_io, acpi_rman_mem; -struct resource_list_entry *acpi_sysres_find(int type, u_long addr); /* ACPI event handling */ UINT32 acpi_event_power_button_sleep(void *context); ==== //depot/projects/nsched/sys/dev/aic7xxx/aic79xx_pci.c#4 (text+ko) ==== @@ -46,7 +46,7 @@ #include "aic79xx_inline.h" #else #include -__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/aic79xx_pci.c,v 1.20 2004/08/04 17:55:34 gibbs Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/aic79xx_pci.c,v 1.21 2004/08/22 13:54:27 gibbs Exp $"); #include #include #endif @@ -996,9 +996,9 @@ u_int devconfig1; ahd->features |= AHD_RTI|AHD_NEW_IOCELL_OPTS - | AHD_NEW_DFCNTRL_OPTS|AHD_FAST_CDB_DELIVERY - | AHD_BUSFREEREV_BUG; - ahd->bugs |= AHD_LQOOVERRUN_BUG|AHD_EARLY_REQ_BUG; + | AHD_NEW_DFCNTRL_OPTS|AHD_FAST_CDB_DELIVERY; + ahd->bugs |= AHD_LQOOVERRUN_BUG|AHD_EARLY_REQ_BUG + | AHD_BUSFREEREV_BUG; /* * Some issues have been resolved in the 7901B. ==== //depot/projects/nsched/sys/dev/aic7xxx/aic7xxx_pci.c#2 (text+ko) ==== @@ -48,7 +48,7 @@ #include "aic7xxx_93cx6.h" #else #include -__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/aic7xxx_pci.c,v 1.32 2003/12/17 00:02:10 gibbs Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/aic7xxx_pci.c,v 1.33 2004/08/22 14:02:43 gibbs Exp $"); #include #include #include @@ -2119,12 +2119,13 @@ * that the OS doesn't know about and rely on our chip * reset handler to handle the rest. */ - aic_pci_write_config(ahc->dev_softc, DEVCONFIG, /*bytes*/4, - ahc->bus_softc.pci_softc.devconfig); - aic_pci_write_config(ahc->dev_softc, PCIR_COMMAND, /*bytes*/1, - ahc->bus_softc.pci_softc.command); - aic_pci_write_config(ahc->dev_softc, CSIZE_LATTIME, /*bytes*/1, - ahc->bus_softc.pci_softc.csize_lattime); + aic_pci_write_config(ahc->dev_softc, DEVCONFIG, + ahc->bus_softc.pci_softc.devconfig, /*bytes*/4); + aic_pci_write_config(ahc->dev_softc, PCIR_COMMAND, + ahc->bus_softc.pci_softc.command, /*bytes*/1); + aic_pci_write_config(ahc->dev_softc, CSIZE_LATTIME, + ahc->bus_softc.pci_softc.csize_lattime, + /*bytes*/1); if ((ahc->flags & AHC_HAS_TERM_LOGIC) != 0) { struct seeprom_descriptor sd; u_int sxfrctl1; ==== //depot/projects/nsched/sys/dev/ata/ata-queue.c#5 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-queue.c,v 1.32 2004/08/16 09:32:35 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-queue.c,v 1.33 2004/08/22 15:54:08 sos Exp $"); #include "opt_ata.h" #include @@ -238,8 +238,16 @@ ATA_DEBUG_RQ(request, "completed called"); if (request->flags & ATA_R_TIMEOUT) { - /* workaround for devices failing to interrupt */ - if (request->status == (ATA_S_READY | ATA_S_DSC)) { + /* workarounds for devices failing to interrupt */ + if (!request->status) { + ata_prtdev(request->device, + "FAILURE - %s no interrupt\n", + ata_cmd2str(request)); + request->result = ENXIO; + ATA_UNLOCK_CH(channel); + channel->locking(channel, ATA_LF_UNLOCK); + } + else if (request->status == (ATA_S_READY | ATA_S_DSC)) { ata_prtdev(request->device, "WARNING - %s no interrupt but good status\n", ata_cmd2str(request)); ==== //depot/projects/nsched/sys/dev/isp/isp_freebsd.c#4 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/isp/isp_freebsd.c,v 1.102 2004/06/16 09:46:47 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/isp/isp_freebsd.c,v 1.103 2004/08/23 19:04:19 mjacob Exp $"); #include #include @@ -515,7 +515,9 @@ struct ispsoftc *isp = arg; if (isp->isp_role != ISP_ROLE_NONE) { ENABLE_INTS(isp); +#if 0 isp->isp_osinfo.intsok = 1; +#endif } /* Release our hook so that the boot can continue. */ config_intrhook_disestablish(&isp->isp_osinfo.ehook); ==== //depot/projects/nsched/sys/dev/lnc/if_lnc_pci.c#3 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/lnc/if_lnc_pci.c,v 1.34 2004/05/30 20:08:35 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/lnc/if_lnc_pci.c,v 1.35 2004/08/22 23:01:13 mux Exp $"); #include #include @@ -154,7 +154,7 @@ err = bus_dma_tag_create(NULL, /* parent */ 1, /* alignement */ 0, /* boundary */ - BUS_SPACE_MAXADDR, /* lowaddr */ + BUS_SPACE_MAXADDR_24BIT, /* lowaddr */ BUS_SPACE_MAXADDR, /* highaddr */ NULL, NULL, /* filter, filterarg */ lnc_mem_size, /* segsize */ ==== //depot/projects/nsched/sys/dev/md/md.c#8 (text+ko) ==== @@ -6,7 +6,7 @@ * this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp * ---------------------------------------------------------------------------- * - * $FreeBSD: src/sys/dev/md/md.c,v 1.127 2004/08/08 07:57:50 phk Exp $ + * $FreeBSD: src/sys/dev/md/md.c,v 1.128 2004/08/22 19:44:24 cperciva Exp $ * */ @@ -735,6 +735,7 @@ sc->pp = pp; g_error_provider(pp, 0); g_topology_unlock(); + g_waitidle(); PICKUP_GIANT(); } ==== //depot/projects/nsched/sys/dev/sound/pci/maestro.c#3 (text+ko) ==== @@ -51,7 +51,7 @@ #include -SND_DECLARE_FILE("$FreeBSD: src/sys/dev/sound/pci/maestro.c,v 1.23 2004/07/16 03:59:27 tanimura Exp $"); +SND_DECLARE_FILE("$FreeBSD: src/sys/dev/sound/pci/maestro.c,v 1.24 2004/08/22 18:57:40 green Exp $"); #define inline __inline @@ -655,19 +655,10 @@ ch->num = ess->playchns; ch->dir = dir; - p = dma_malloc(ess, ess->bufsz, &physaddr); - if (p == NULL) - return NULL; + physaddr = ess->baseaddr + ch->offset; + p = ess->stat + ch->offset; sndbuf_setup(b, p, ess->bufsz); - ch->offset = physaddr - ess->baseaddr; - if (physaddr < ess->baseaddr || ch->offset > WPWA_MAXADDR) { - device_printf(ess->dev, - "offset %#llx exceeds limit. ", (long long)ch->offset); - dma_free(ess, sndbuf_getbuf(b)); - return NULL; - } - ch->wcreg_tpl = (physaddr - 16) & WAVCACHE_CHCTL_ADDRTAG_MASK; if (dir == PCMDIR_PLAY) { @@ -683,12 +674,6 @@ static int aggch_free(kobj_t obj, void *data) { - struct agg_chinfo *ch = data; - struct agg_info *ess = ch->parent; - - /* free up buffer - called after channel stopped */ - dma_free(ess, sndbuf_getbuf(ch->buffer)); - /* return 0 if ok */ return 0; } @@ -957,6 +942,8 @@ struct resource *irq = NULL; void *ih = NULL; char status[SND_STATUSLEN]; + bus_addr_t offset; + int i; if ((ess = malloc(sizeof *ess, M_DEVBUF, M_NOWAIT | M_ZERO)) == NULL) { device_printf(dev, "cannot allocate softc\n"); @@ -971,21 +958,28 @@ /*boundary*/WPWA_MAXADDR + 1, /*lowaddr*/MAESTRO_MAXADDR, /*highaddr*/BUS_SPACE_MAXADDR, /*filter*/NULL, /*filterarg*/NULL, - /*maxsize*/ess->bufsz, /*nsegments*/1, /*maxsegz*/0x3ffff, - /*flags*/0, /*lockfunc*/busdma_lock_mutex, + /*maxsize*/ess->bufsz * (1 + AGG_MAXPLAYCH + 1), /*nsegments*/1, + /*maxsegz*/0x3ffff, /*flags*/0, /*lockfunc*/busdma_lock_mutex, /*lockarg*/&Giant, &ess->parent_dmat) != 0) { device_printf(dev, "unable to create dma tag\n"); goto bad; } - ess->stat = dma_malloc(ess, ess->bufsz, &ess->baseaddr); + ess->stat = dma_malloc(ess, ess->bufsz * (1 + AGG_MAXPLAYCH + 1), + &ess->baseaddr); if (ess->stat == NULL) { - device_printf(dev, "cannot allocate status buffer\n"); + device_printf(dev, "cannot allocate DMA memory\n"); goto bad; } if (bootverbose) device_printf(dev, "Maestro DMA base: %#llx\n", (long long)ess->baseaddr); + offset = ess->bufsz; + for (i = 0; i < AGG_MAXPLAYCH; i++) { + ess->pch[i].offset = offset; + offset += ess->bufsz; + } + ess->rch.offset = offset; agg_power(ess, PPMI_D0); DELAY(100000); ==== //depot/projects/nsched/sys/geom/raid3/g_raid3.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/geom/raid3/g_raid3.c,v 1.7 2004/08/21 18:11:46 pjd Exp $"); +__FBSDID("$FreeBSD: src/sys/geom/raid3/g_raid3.c,v 1.8 2004/08/22 16:21:12 pjd Exp $"); #include #include @@ -80,6 +80,9 @@ SYSCTL_NODE(_kern_geom_raid3, OID_AUTO, stat, CTLFLAG_RW, 0, "GEOM_RAID3 statistics"); +static u_int g_raid3_parity_mismatch = 0; +SYSCTL_UINT(_kern_geom_raid3_stat, OID_AUTO, parity_mismatch, CTLFLAG_RD, + &g_raid3_parity_mismatch, 0, "Number of failures in VERIFY mode"); static u_int g_raid3_64k_requested = 0; SYSCTL_UINT(_kern_geom_raid3_stat, OID_AUTO, 64k_requested, CTLFLAG_RD, &g_raid3_64k_requested, 0, "Number of requested 64kB allocations"); @@ -214,6 +217,24 @@ } } +static int +g_raid3_is_zero(struct bio *bp) +{ + static const uint64_t zeros[] = { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 + }; + u_char *addr; + ssize_t size; + + size = bp->bio_length; + addr = (u_char *)bp->bio_data; + for (; size > 0; size -= sizeof(zeros), addr += sizeof(zeros)) { + if (bcmp(addr, zeros, sizeof(zeros)) != 0) + return (0); + } + return (1); +} + /* * --- Events handling functions --- * Events in geom_raid3 are used to maintain disks and device status @@ -727,6 +748,46 @@ } static void +g_raid3_remove_bio(struct bio *cbp) +{ + struct bio *pbp, *bp; + + pbp = cbp->bio_parent; + if (G_RAID3_HEAD_BIO(pbp) == cbp) + G_RAID3_HEAD_BIO(pbp) = G_RAID3_NEXT_BIO(cbp); + else { + G_RAID3_FOREACH_BIO(pbp, bp) { + if (G_RAID3_NEXT_BIO(bp) == cbp) { + G_RAID3_NEXT_BIO(bp) = G_RAID3_NEXT_BIO(cbp); + break; + } + } + } + G_RAID3_NEXT_BIO(cbp) = NULL; +} + +static void +g_raid3_replace_bio(struct bio *sbp, struct bio *dbp) +{ + struct bio *pbp, *bp; + + g_raid3_remove_bio(sbp); + pbp = dbp->bio_parent; + G_RAID3_NEXT_BIO(sbp) = G_RAID3_NEXT_BIO(dbp); + if (G_RAID3_HEAD_BIO(pbp) == dbp) + G_RAID3_HEAD_BIO(pbp) = sbp; + else { + G_RAID3_FOREACH_BIO(pbp, bp) { + if (G_RAID3_NEXT_BIO(bp) == dbp) { + G_RAID3_NEXT_BIO(bp) = sbp; + break; + } + } + } + G_RAID3_NEXT_BIO(dbp) = NULL; +} + +static void g_raid3_destroy_bio(struct g_raid3_softc *sc, struct bio *cbp) { struct bio *bp, *pbp; @@ -751,10 +812,12 @@ if (G_RAID3_NEXT_BIO(bp) == cbp) break; } - KASSERT(bp != NULL, ("NULL bp")); - KASSERT(G_RAID3_NEXT_BIO(bp) != NULL, ("NULL bp->bio_driver1")); - G_RAID3_NEXT_BIO(bp) = G_RAID3_NEXT_BIO(cbp); - G_RAID3_NEXT_BIO(cbp) = NULL; + if (bp != NULL) { + KASSERT(G_RAID3_NEXT_BIO(bp) != NULL, + ("NULL bp->bio_driver1")); + G_RAID3_NEXT_BIO(bp) = G_RAID3_NEXT_BIO(cbp); + G_RAID3_NEXT_BIO(cbp) = NULL; + } g_destroy_bio(cbp); } } @@ -928,7 +991,12 @@ } >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Aug 23 21:57:33 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 684C416A4D0; Mon, 23 Aug 2004 21:57:33 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4267416A4CE for ; Mon, 23 Aug 2004 21:57:33 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 21FAD43D31 for ; Mon, 23 Aug 2004 21:57:33 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7NLvXeV095216 for ; Mon, 23 Aug 2004 21:57:33 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7NLvWM0095213 for perforce@freebsd.org; Mon, 23 Aug 2004 21:57:32 GMT (envelope-from peter@freebsd.org) Date: Mon, 23 Aug 2004 21:57:32 GMT Message-Id: <200408232157.i7NLvWM0095213@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 60326 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 Aug 2004 21:57:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=60326 Change 60326 by peter@peter_daintree on 2004/08/23 21:57:12 IFC @60325 Affected files ... .. //depot/projects/hammer/UPDATING#49 integrate .. //depot/projects/hammer/contrib/gcc/config/freebsd-spec.h#11 integrate .. //depot/projects/hammer/contrib/pf/pfctl/pfctl_table.c#4 integrate .. //depot/projects/hammer/games/fortune/datfiles/fortunes#28 integrate .. //depot/projects/hammer/gnu/usr.bin/gdb/libgdb/Makefile#3 integrate .. //depot/projects/hammer/gnu/usr.bin/gdb/libgdb/fbsd-threads.c#4 integrate .. //depot/projects/hammer/include/_ctype.h#2 integrate .. //depot/projects/hammer/lib/csu/alpha/crt1.c#4 integrate .. //depot/projects/hammer/lib/libc/gen/glob.3#6 integrate .. //depot/projects/hammer/lib/libc/gen/tls.c#3 integrate .. //depot/projects/hammer/lib/libc/locale/frune.c#5 integrate .. //depot/projects/hammer/lib/libc/locale/isalnum.3#4 integrate .. //depot/projects/hammer/lib/libc/locale/isalpha.3#4 integrate .. //depot/projects/hammer/lib/libc/locale/isblank.3#5 integrate .. //depot/projects/hammer/lib/libc/locale/iscntrl.3#5 integrate .. //depot/projects/hammer/lib/libc/locale/isdigit.3#5 integrate .. //depot/projects/hammer/lib/libc/locale/isgraph.3#4 integrate .. //depot/projects/hammer/lib/libc/locale/islower.3#4 integrate .. //depot/projects/hammer/lib/libc/locale/isprint.3#4 integrate .. //depot/projects/hammer/lib/libc/locale/ispunct.3#4 integrate .. //depot/projects/hammer/lib/libc/locale/isspace.3#4 integrate .. //depot/projects/hammer/lib/libc/locale/isupper.3#4 integrate .. //depot/projects/hammer/lib/libc/locale/isxdigit.3#6 integrate .. //depot/projects/hammer/lib/libc/locale/mbrune.3#6 integrate .. //depot/projects/hammer/lib/libc/locale/mbrune.c#4 integrate .. //depot/projects/hammer/lib/libc/locale/rune.3#8 integrate .. //depot/projects/hammer/lib/libc/locale/setinvalidrune.c#4 integrate .. //depot/projects/hammer/lib/libc/locale/setrunelocale.c#16 integrate .. //depot/projects/hammer/lib/libc/locale/tolower.3#3 integrate .. //depot/projects/hammer/lib/libc/locale/toupper.3#3 integrate .. //depot/projects/hammer/lib/libc/locale/utf2.5#3 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_init.c#17 integrate .. //depot/projects/hammer/lib/libutil/fparseln.3#2 integrate .. //depot/projects/hammer/libexec/lukemftpd/config.h#3 integrate .. //depot/projects/hammer/libexec/rbootd/rbootd.c#2 integrate .. //depot/projects/hammer/release/doc/de_DE.ISO8859-1/errata/article.sgml#5 integrate .. //depot/projects/hammer/release/doc/de_DE.ISO8859-1/readme/article.sgml#6 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/errata/article.sgml#19 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#55 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/readme/article.sgml#10 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#74 integrate .. //depot/projects/hammer/release/doc/fr_FR.ISO8859-1/errata/article.sgml#4 integrate .. //depot/projects/hammer/release/doc/ja_JP.eucJP/errata/article.sgml#13 integrate .. //depot/projects/hammer/release/doc/ru_RU.KOI8-R/readme/article.sgml#3 integrate .. //depot/projects/hammer/release/doc/share/misc/dev.archlist.txt#4 integrate .. //depot/projects/hammer/release/doc/share/sgml/release.ent#12 integrate .. //depot/projects/hammer/release/sparc64/mkisoimages.sh#7 integrate .. //depot/projects/hammer/sbin/geom/class/raid3/geom_raid3.c#3 integrate .. //depot/projects/hammer/sbin/geom/class/raid3/graid3.8#2 integrate .. //depot/projects/hammer/sbin/geom/core/geom.8#6 integrate .. //depot/projects/hammer/sbin/ipfw/ipfw2.c#28 integrate .. //depot/projects/hammer/share/man/man4/hfa.4#3 integrate .. //depot/projects/hammer/share/man/man4/ixgb.4#4 integrate .. //depot/projects/hammer/share/man/man4/mac_bsdextended.4#6 integrate .. //depot/projects/hammer/share/man/man9/suser.9#6 integrate .. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#67 integrate .. //depot/projects/hammer/sys/amd64/amd64/pmap.c#100 integrate .. //depot/projects/hammer/sys/boot/alpha/Makefile.inc#3 integrate .. //depot/projects/hammer/sys/boot/alpha/common/Makefile.common#4 integrate .. //depot/projects/hammer/sys/boot/alpha/common/ldscript#1 branch .. //depot/projects/hammer/sys/boot/common/load.c#3 integrate .. //depot/projects/hammer/sys/boot/ficl/Makefile#9 integrate .. //depot/projects/hammer/sys/compat/linux/linux_socket.c#13 integrate .. //depot/projects/hammer/sys/conf/files#76 integrate .. //depot/projects/hammer/sys/conf/options.pc98#24 integrate .. //depot/projects/hammer/sys/contrib/pf/net/pf_ioctl.c#11 integrate .. //depot/projects/hammer/sys/dev/acpica/acpi.c#46 integrate .. //depot/projects/hammer/sys/dev/acpica/acpi_pci_link.c#17 integrate .. //depot/projects/hammer/sys/dev/acpica/acpi_resource.c#15 integrate .. //depot/projects/hammer/sys/dev/acpica/acpivar.h#34 integrate .. //depot/projects/hammer/sys/dev/aic7xxx/aic79xx_pci.c#15 integrate .. //depot/projects/hammer/sys/dev/aic7xxx/aic7xxx_pci.c#10 integrate .. //depot/projects/hammer/sys/dev/ata/ata-queue.c#15 integrate .. //depot/projects/hammer/sys/dev/fdc/fdc.c#13 integrate .. //depot/projects/hammer/sys/dev/isp/isp_freebsd.c#14 integrate .. //depot/projects/hammer/sys/dev/lnc/if_lnc_pci.c#9 integrate .. //depot/projects/hammer/sys/dev/md/md.c#35 integrate .. //depot/projects/hammer/sys/dev/mpt/mpt.c#6 integrate .. //depot/projects/hammer/sys/dev/mpt/mpt_debug.c#5 integrate .. //depot/projects/hammer/sys/dev/mpt/mpt_freebsd.c#10 integrate .. //depot/projects/hammer/sys/dev/sound/pci/maestro.c#7 integrate .. //depot/projects/hammer/sys/geom/mirror/g_mirror.c#3 integrate .. //depot/projects/hammer/sys/geom/raid3/g_raid3.c#3 integrate .. //depot/projects/hammer/sys/geom/raid3/g_raid3.h#2 integrate .. //depot/projects/hammer/sys/geom/raid3/g_raid3_ctl.c#2 integrate .. //depot/projects/hammer/sys/geom/vinum/geom_vinum_raid5.c#4 integrate .. //depot/projects/hammer/sys/geom/vinum/geom_vinum_rm.c#2 integrate .. //depot/projects/hammer/sys/geom/vinum/geom_vinum_subr.c#6 integrate .. //depot/projects/hammer/sys/i386/conf/NOTES#51 integrate .. //depot/projects/hammer/sys/i386/i386/mp_machdep.c#31 integrate .. //depot/projects/hammer/sys/i386/i386/nexus.c#14 integrate .. //depot/projects/hammer/sys/i386/i386/p4tcc.c#4 integrate .. //depot/projects/hammer/sys/i386/i386/pmap.c#49 integrate .. //depot/projects/hammer/sys/i386/i386/uio_machdep.c#5 integrate .. //depot/projects/hammer/sys/kern/kern_lock.c#11 integrate .. //depot/projects/hammer/sys/kern/sched_4bsd.c#25 integrate .. //depot/projects/hammer/sys/kern/subr_kdb.c#4 integrate .. //depot/projects/hammer/sys/kern/subr_smp.c#20 integrate .. //depot/projects/hammer/sys/modules/agp/Makefile#6 integrate .. //depot/projects/hammer/sys/modules/ipfw/Makefile#3 integrate .. //depot/projects/hammer/sys/net/if_fwsubr.c#4 integrate .. //depot/projects/hammer/sys/net/if_sl.c#17 integrate .. //depot/projects/hammer/sys/net/route.c#16 integrate .. //depot/projects/hammer/sys/net/rtsock.c#16 integrate .. //depot/projects/hammer/sys/netinet/ip_mroute.c#22 integrate .. //depot/projects/hammer/sys/netinet/ip_output.c#36 integrate .. //depot/projects/hammer/sys/netinet/raw_ip.c#27 integrate .. //depot/projects/hammer/sys/netinet/udp_usrreq.c#23 integrate .. //depot/projects/hammer/sys/netinet6/in6.c#12 integrate .. //depot/projects/hammer/sys/netinet6/in6_ifattach.c#9 integrate .. //depot/projects/hammer/sys/netinet6/in6_pcb.c#17 integrate .. //depot/projects/hammer/sys/netinet6/in6_prefix.c#4 delete .. //depot/projects/hammer/sys/netinet6/in6_prefix.h#2 delete .. //depot/projects/hammer/sys/netinet6/in6_proto.c#8 integrate .. //depot/projects/hammer/sys/netinet6/ip6_input.c#16 integrate .. //depot/projects/hammer/sys/netinet6/nd6.c#13 integrate .. //depot/projects/hammer/sys/pc98/pc98/fd.c#22 integrate .. //depot/projects/hammer/sys/pci/agp_ali.c#10 integrate .. //depot/projects/hammer/sys/pci/agp_intel.c#13 integrate .. //depot/projects/hammer/sys/security/mac_bsdextended/mac_bsdextended.c#11 integrate .. //depot/projects/hammer/sys/sparc64/sparc64/uio_machdep.c#6 integrate .. //depot/projects/hammer/sys/sys/fdcio.h#3 integrate .. //depot/projects/hammer/sys/sys/param.h#43 integrate .. //depot/projects/hammer/sys/sys/smp.h#7 integrate .. //depot/projects/hammer/sys/ufs/ufs/ufs_vnops.c#18 integrate .. //depot/projects/hammer/sys/vm/vm_fault.c#22 integrate .. //depot/projects/hammer/sys/vm/vm_page.h#18 integrate .. //depot/projects/hammer/tools/regression/geom_raid3/test-10.sh#1 branch .. //depot/projects/hammer/tools/regression/geom_raid3/test-11.sh#1 branch .. //depot/projects/hammer/tools/regression/geom_raid3/test-12.sh#1 branch .. //depot/projects/hammer/tools/tools/nanobsd/i386.diskimage#7 integrate .. //depot/projects/hammer/usr.bin/calendar/calendars/calendar.freebsd#24 integrate .. //depot/projects/hammer/usr.bin/mklocale/mklocale.1#10 integrate .. //depot/projects/hammer/usr.sbin/kbdcontrol/kbdmap.5#3 integrate Differences ... ==== //depot/projects/hammer/UPDATING#49 (text+ko) ==== @@ -8,8 +8,10 @@ /usr/ports/UPDATING. Please read that file before running portupgrade. Important recent entries: 20040724 (default X changes). -NOTE TO PEOPLE WHO THINK THAT FreeBSD 5.x IS SLOW: - FreeBSD 5.x has many debugging features turned on, in +[[ The UPDATING file will be trimmed to 20040814 on or about Oct 1, 2004 ]] + +NOTE TO PEOPLE WHO THINK THAT FreeBSD 6.x IS SLOW: + FreeBSD 6.x has many debugging features turned on, in both the kernel and userland. These features attempt to detect incorrect use of system primitives, and encourage loud failure through extra sanity checking and fail stop semantics. They @@ -27,7 +29,7 @@ Netgraph using utilities (e.g. ngctl, nghook, ppp, mpd, pppoed, bluetooth, ATM) should be recompiled when a new kernel is installed. - + 20040817: IPFW has been converted to use PFIL_HOOKS. This change is transparent to userland and preserves the ipfw ABI. The ipfw @@ -69,11 +71,15 @@ compiler upgrade, there are several issues to be aware of. GCC 3.4.x has broken C++ ABI compatibility with previous releases yet again and users will have to rebuild all their C++ programs with the new - compiler. A new unit-at-a-time optimization mode, which is default - in this compiler release, is more aggressive in removing unused - static symbols. This is the likely cause of 'make buildworld' - breakages with non-default CFLAGS where optimization level is set - to -O2 or higher. + compiler. If you are getting run-time error such as + /libexec/ld-elf.so.1: Undefined symbol "_ZNSs20_S_empty_rep_storageE" + This entry does apply to you. + + A new unit-at-a-time optimization mode, which is default in this + compiler release, is more aggressive in removing unused static + symbols. This is the likely cause of 'make buildworld' breakages + with non-default CFLAGS where optimization level is set to -O2 + or higher. With the upgrade of the system compiler, the kernel has been upgraded to match the new system compiler. This makes it impossible to build @@ -1566,6 +1572,12 @@ COMMON ITEMS: + # NOTE: 5.x below applies to 6.0-currrent as well, for the + # momemnt. 4.any -> 5.any upgrade support will remain in + # place for 6.0 current, but after 5.3 RELEASE, the 4.any -> + # 6.0-current upgrade path will require moving through 5.3 + # RELEASE or newer. + General Notes ------------- Avoid using make -j when upgrading. From time to time in the @@ -1788,4 +1800,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.345 2004/08/20 01:24:23 julian Exp $ +$FreeBSD: src/UPDATING,v 1.348 2004/08/23 18:51:36 imp Exp $ ==== //depot/projects/hammer/contrib/gcc/config/freebsd-spec.h#11 (text+ko) ==== @@ -18,7 +18,7 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* $FreeBSD: src/contrib/gcc/config/freebsd-spec.h,v 1.17 2004/07/28 04:31:47 kan Exp $ */ +/* $FreeBSD: src/contrib/gcc/config/freebsd-spec.h,v 1.18 2004/08/21 03:58:39 obrien Exp $ */ /* Common FreeBSD configuration. All FreeBSD architectures should include this file, which will specify @@ -79,7 +79,7 @@ #ifdef FREEBSD_NATIVE #define FBSD_NATIVE_TARGET_OS_CPP_BUILTINS() \ do { \ - builtin_define_std ("__FreeBSD_cc_version=520001"); \ + builtin_define_std ("__FreeBSD_cc_version=600001"); \ } while (0) #else #define FBSD_NATIVE_TARGET_OS_CPP_BUILTINS() \ ==== //depot/projects/hammer/contrib/pf/pfctl/pfctl_table.c#4 (text+ko) ==== @@ -1,4 +1,5 @@ /* $OpenBSD: pfctl_table.c,v 1.59 2004/03/15 15:25:44 dhartmei Exp $ */ +/* add $OpenBSD: pfctl_table.c,v 1.61 2004/06/12 22:22:44 cedric Exp $ */ /* * Copyright (c) 2002 Cedric Berger @@ -31,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/contrib/pf/pfctl/pfctl_table.c,v 1.5 2004/06/16 23:39:31 mlaier Exp $"); +__FBSDID("$FreeBSD: src/contrib/pf/pfctl/pfctl_table.c,v 1.6 2004/08/22 16:58:06 mlaier Exp $"); #include #include @@ -88,7 +89,13 @@ #define CREATE_TABLE do { \ table.pfrt_flags |= PFR_TFLAG_PERSIST; \ - RVTEST(pfr_add_tables(&table, 1, &nadd, flags)); \ + if ((!(opts & PF_OPT_NOACTION) || \ + (opts & PF_OPT_DUMMYACTION)) && \ + (pfr_add_tables(&table, 1, &nadd, flags)) && \ + (errno != EPERM)) { \ + radix_perror(); \ + goto _error; \ + } \ if (nadd) { \ warn_namespace_collision(table.pfrt_name); \ xprintf(opts, "%d table created", nadd); \ ==== //depot/projects/hammer/games/fortune/datfiles/fortunes#28 (text+ko) ==== @@ -1,5 +1,5 @@ This fortune brought to you by: -$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.142 2004/08/20 13:39:28 des Exp $ +$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.143 2004/08/23 11:00:20 blackend Exp $ % -- Gifts for Children -- @@ -5638,7 +5638,7 @@ Come I to make this gig at Caesar's laying down. % Frisbeetarianism, n.: - The belief that when you die, your soul goes up the on roof and + The belief that when you die, your soul goes up on the roof and gets stuck. % Frobnicate, v.: ==== //depot/projects/hammer/gnu/usr.bin/gdb/libgdb/Makefile#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/gdb/libgdb/Makefile,v 1.2 2004/08/08 22:45:36 davidxu Exp $ +# $FreeBSD: src/gnu/usr.bin/gdb/libgdb/Makefile,v 1.3 2004/08/22 10:59:33 davidxu Exp $ LIB= gdb INTERNALLIB= yes @@ -37,10 +37,14 @@ tui-stack.c tui-win.c tui-windata.c tui-wingeneral.c \ tui-winsource.c typeprint.c ui-file.c ui-out.c user-regs.c \ utils.c valarith.c valops.c valprint.c values.c varobj.c \ - wrapper.c fbsd-threads.c ${LIBSRCS} + wrapper.c ${LIBSRCS} GENSRCS= version.c +.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386" +LIBSRCS+= fbsd-threads.c +.endif + version.c: echo '#include "version.h"' > ${.TARGET} echo 'const char version[] = ${VERSION};' >> ${.TARGET} ==== //depot/projects/hammer/gnu/usr.bin/gdb/libgdb/fbsd-threads.c#4 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/gnu/usr.bin/gdb/libgdb/fbsd-threads.c,v 1.4 2004/08/08 22:45:36 davidxu Exp $ */ +/* $FreeBSD: src/gnu/usr.bin/gdb/libgdb/fbsd-threads.c,v 1.7 2004/08/22 09:05:57 davidxu Exp $ */ /* FreeBSD libthread_db assisted debugging support. Copyright 1999, 2000, 2001 Free Software Foundation, Inc. @@ -19,25 +19,28 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#include "defs.h" +#include +#include +#include -#include "gdb_assert.h" -#include #include "proc_service.h" #include "thread_db.h" +#include "defs.h" #include "bfd.h" +#include "elf-bfd.h" +#include "gdb_assert.h" +#include "gdbcore.h" #include "gdbthread.h" #include "inferior.h" +#include "objfiles.h" +#include "regcache.h" #include "symfile.h" #include "symtab.h" -#include "objfiles.h" #include "target.h" -#include "regcache.h" #include "gdbcmd.h" #include "solib-svr4.h" -#include #define LIBTHREAD_DB_SO "libthread_db.so" @@ -46,18 +49,29 @@ pid_t pid; }; +extern int child_suppress_run; + extern struct target_ops child_ops; -/* This module's target vector. */ -static struct target_ops thread_db_ops; +/* This module's target vectors. */ +static struct target_ops fbsd_thread_ops; +static struct target_ops fbsd_core_ops; + +/* Saved copy of orignal core_ops. */ +static struct target_ops orig_core_ops; +extern struct target_ops core_ops; -static struct target_ops base_ops; - /* Pointer to the next function on the objfile event chain. */ static void (*target_new_objfile_chain) (struct objfile *objfile); +/* Non-zero if there is a thread module */ +static int fbsd_thread_present; + /* Non-zero if we're using this module's target vector. */ -static int using_thread_db; +static int fbsd_thread_active; + +/* Non-zero if core_open is called */ +static int fbsd_thread_core = 0; /* Non-zero if we have to keep this module's target vector active across re-runs. */ @@ -78,6 +92,7 @@ static td_err_e (*td_init_p) (void); static td_err_e (*td_ta_new_p) (struct ps_prochandle *ps, td_thragent_t **ta); +static td_err_e (*td_ta_delete_p) (td_thragent_t *); static td_err_e (*td_ta_map_id2thr_p) (const td_thragent_t *ta, thread_t pt, td_thrhandle_t *__th); static td_err_e (*td_ta_map_lwp2thr_p) (const td_thragent_t *ta, lwpid_t lwpid, @@ -93,7 +108,6 @@ td_thr_events_t *event); static td_err_e (*td_ta_event_getmsg_p) (const td_thragent_t *ta, td_event_msg_t *msg); -static td_err_e (*td_thr_validate_p) (const td_thrhandle_t *th); static td_err_e (*td_thr_get_info_p) (const td_thrhandle_t *th, td_thrinfo_t *infop); static td_err_e (*td_thr_getfpregs_p) (const td_thrhandle_t *th, @@ -222,24 +236,46 @@ gdb_assert (IS_LWP (ptid)); - err = td_ta_map_lwp2thr_p (thread_agent, GET_LWP (ptid), &th); - if (err == TD_OK) + if (fbsd_thread_active) { - err = td_thr_get_info_p (&th, &ti); - if (err != TD_OK) - error ("Cannot get thread info: %s", thread_db_err_str (err)); - return BUILD_THREAD (ti.ti_tid, GET_PID (ptid)); + err = td_ta_map_lwp2thr_p (thread_agent, GET_LWP (ptid), &th); + if (err == TD_OK) + { + err = td_thr_get_info_p (&th, &ti); + if (err != TD_OK) + error ("Cannot get thread info: %s", thread_db_err_str (err)); + return BUILD_THREAD (ti.ti_tid, GET_PID (ptid)); + } } /* the LWP is not mapped to user thread */ return BUILD_LWP (GET_LWP (ptid), GET_PID (ptid)); } +static void +fbsd_core_get_first_lwp (bfd *abfd, asection *asect, void *obj) +{ + if (strncmp (bfd_section_name (abfd, asect), ".reg/", 5) != 0) + return; + + if (*(lwpid_t *)obj != 0) + return; + + *(lwpid_t *)obj = atoi (bfd_section_name (abfd, asect) + 5); +} + static long get_current_lwp (int pid) { struct ptrace_lwpinfo pl; + lwpid_t lwpid; + if (!target_has_execution) + { + lwpid = 0; + bfd_map_over_sections (core_bfd, fbsd_core_get_first_lwp, &lwpid); + return lwpid; + } if (ptrace (PT_LWPINFO, pid, (caddr_t)&pl, sizeof(pl))) perror_with_name("PT_LWPINFO"); @@ -263,31 +299,50 @@ } static void +fbsd_thread_activate (void) +{ + fbsd_thread_active = 1; + init_thread_list(); + fbsd_thread_find_new_threads (); + get_current_thread (); +} + +static void +fbsd_thread_deactivate (void) +{ + td_ta_delete_p (thread_agent); + + inferior_ptid = pid_to_ptid (proc_handle.pid); + proc_handle.pid = 0; + fbsd_thread_active = 0; + fbsd_thread_present = 0; + init_thread_list (); +} + +static void fbsd_thread_new_objfile (struct objfile *objfile) { td_err_e err; - /* Don't attempt to use thread_db on targets which can not run - (core files). */ - if (objfile == NULL || !target_has_execution) + if (objfile == NULL) { /* All symbols have been discarded. If the thread_db target is active, deactivate it now. */ - if (using_thread_db) + if (fbsd_thread_active) { gdb_assert (proc_handle.pid == 0); - unpush_target (&thread_db_ops); - using_thread_db = 0; + fbsd_thread_active = 0; } - keep_thread_db = 0; - goto quit; } - if (using_thread_db) - /* Nothing to do. The thread library was already detected and the - target vector was already activated. */ + if (!child_suppress_run) + goto quit; + + /* Nothing to do. The thread library was already detected and the + target vector was already activated. */ + if (fbsd_thread_active) goto quit; /* Initialize the structure that identifies the child process. Note @@ -305,32 +360,21 @@ case TD_OK: /* The thread library was detected. Activate the thread_db target. */ - base_ops = current_target; - push_target (&thread_db_ops); - using_thread_db = 1; - - /* If the thread library was detected in the main symbol file - itself, we assume that the program was statically linked - against the thread library and well have to keep this - module's target vector activated until forever... Well, at - least until all symbols have been discarded anyway (see - above). */ - if (objfile == symfile_objfile) - { - gdb_assert (proc_handle.pid == 0); - keep_thread_db = 1; - } + fbsd_thread_present = 1; /* We can only poke around if there actually is a child process. If there is no child process alive, postpone the steps below until one has been created. */ - if (proc_handle.pid != 0) + if (fbsd_thread_core == 0 && proc_handle.pid != 0) { - fbsd_thread_find_new_threads (); - get_current_thread (); + push_target(&fbsd_thread_ops); + fbsd_thread_activate(); } else - printf_filtered("%s postpone processing\n", __func__); + { + td_ta_delete_p(thread_agent); + thread_agent = NULL; + } break; default: @@ -347,23 +391,41 @@ static void fbsd_thread_attach (char *args, int from_tty) { + fbsd_thread_core = 0; + child_ops.to_attach (args, from_tty); - /* Destroy thread info; it's no longer valid. */ - init_thread_list (); + /* Must get symbols from solibs before libthread_db can run! */ + SOLIB_ADD ((char *) 0, from_tty, (struct target_ops *) 0, auto_solib_add); + + if (fbsd_thread_present && !fbsd_thread_active) + push_target(&fbsd_thread_ops); +} - /* The child process is now the actual multi-threaded - program. Snatch its process ID... */ - proc_handle.pid = GET_PID (inferior_ptid); +static void +fbsd_thread_post_attach (int pid) +{ + child_ops.to_post_attach (pid); - /* ...and perform the remaining initialization steps. */ - fbsd_thread_find_new_threads(); - get_current_thread (); + if (fbsd_thread_present && !fbsd_thread_active) + { + proc_handle.pid = GET_PID (inferior_ptid); + fbsd_thread_activate (); + } } static void fbsd_thread_detach (char *args, int from_tty) { + fbsd_thread_deactivate (); + unpush_target (&fbsd_thread_ops); + + /* Clear gdb solib information and symbol file + cache, so that after detach and re-attach, new_objfile + hook will be called */ + + clear_solib(); + symbol_file_clear(0); proc_handle.pid = 0; child_ops.to_detach (args, from_tty); } @@ -373,7 +435,7 @@ { int err = td_thr_dbsuspend_p (th_p); if (err != 0) - printf_filtered("%s %s\n", __func__, thread_db_err_str (err)); + fprintf_filtered(gdb_stderr, "%s %s\n", __func__, thread_db_err_str (err)); return (err); } @@ -382,7 +444,7 @@ { int err = td_thr_dbresume_p (th_p); if (err != 0) - printf_filtered("%s %s\n", __func__, thread_db_err_str (err)); + fprintf_filtered(gdb_stderr, "%s %s\n", __func__, thread_db_err_str (err)); return (err); } @@ -395,17 +457,9 @@ int resume_all, ret; long lwp, thvalid = 0; -#if 0 - printf_filtered("%s ptid=%ld.%ld.%ld step=%d\n", __func__, - GET_PID(ptid), GET_LWP(ptid), GET_THREAD(ptid), step); - printf_filtered("%s inferior_ptid=%ld.%ld.%ld\n", __func__, - GET_PID(inferior_ptid), GET_LWP(inferior_ptid), - GET_THREAD(inferior_ptid)); -#endif - - if (proc_handle.pid == 0) + if (!fbsd_thread_active) { - base_ops.to_resume (ptid, step, signo); + child_ops.to_resume (ptid, step, signo); return; } @@ -428,14 +482,12 @@ if (ret) error (thread_db_err_str (ret)); - /* - * For M:N thread, we need to tell UTS to set/unset single step - * flag at context switch time, the flag will be written into - * thread mailbox. This becauses some architecture may not have - * machine single step flag in ucontext, so we put the flag in mailbox, - * when the thread switches back, kse_switchin restores the single step - * state. - */ + /* For M:N thread, we need to tell UTS to set/unset single step + flag at context switch time, the flag will be written into + thread mailbox. This becauses some architecture may not have + machine single step flag in ucontext, so we put the flag in mailbox, + when the thread switches back, kse_switchin restores the single step + state. */ ret = td_thr_sstep_p (&th, step); if (ret) error (thread_db_err_str (ret)); @@ -502,7 +554,7 @@ ret = child_ops.to_wait (ptid, ourstatus); if (GET_PID(ret) >= 0 && ourstatus->kind == TARGET_WAITKIND_STOPPED) { - lwp = get_current_lwp (proc_handle.pid); + lwp = get_current_lwp (GET_PID(ret)); ret = thread_from_lwp (BUILD_LWP (lwp, GET_PID (ret))); if (!in_thread_list (ret)) add_thread (ret); @@ -525,8 +577,16 @@ fbsd_thread_xfer_memory (CORE_ADDR memaddr, char *myaddr, int len, int write, struct mem_attrib *attrib, struct target_ops *target) { - return base_ops.to_xfer_memory (memaddr, myaddr, len, write, - attrib, target); + int err; + + if (target_has_execution) + err = child_ops.to_xfer_memory (memaddr, myaddr, len, write, attrib, + target); + else + err = orig_core_ops.to_xfer_memory (memaddr, myaddr, len, write, attrib, + target); + + return (err); } static void @@ -536,7 +596,12 @@ fpregset_t fpregs; lwpid_t lwp; - /* FIXME, use base_ops to fetch lwp registers! */ + if (!target_has_execution) + { + orig_core_ops.to_fetch_registers (-1); + return; + } + lwp = GET_LWP (inferior_ptid); if (ptrace (PT_GETREGS, lwp, (caddr_t) &gregs, 0) == -1) @@ -675,14 +740,17 @@ child_ops.to_kill(); } +static int +fbsd_thread_can_run (void) +{ + return child_suppress_run; +} + static void fbsd_thread_create_inferior (char *exec_file, char *allargs, char **env) { - if (!keep_thread_db) - { - unpush_target (&thread_db_ops); - using_thread_db = 0; - } + if (fbsd_thread_present && !fbsd_thread_active) + push_target(&fbsd_thread_ops); child_ops.to_create_inferior (exec_file, allargs, env); } @@ -690,31 +758,44 @@ static void fbsd_thread_post_startup_inferior (ptid_t ptid) { - if (proc_handle.pid == 0) + if (fbsd_thread_present && !fbsd_thread_active) { - /* - * The child process is now the actual multi-threaded - * program. Snatch its process ID... - */ + /* The child process is now the actual multi-threaded + program. Snatch its process ID... */ proc_handle.pid = GET_PID (ptid); - - fbsd_thread_find_new_threads (); - get_current_thread (); + td_ta_new_p (&proc_handle, &thread_agent); + fbsd_thread_activate(); } } static void fbsd_thread_mourn_inferior (void) { - /* - * Forget about the child's process ID. We shouldn't need it - * anymore. - */ - proc_handle.pid = 0; + if (fbsd_thread_active) + fbsd_thread_deactivate (); + + unpush_target (&fbsd_thread_ops); child_ops.to_mourn_inferior (); } +static void +fbsd_core_check_lwp (bfd *abfd, asection *asect, void *obj) +{ + lwpid_t lwp; + + if (strncmp (bfd_section_name (abfd, asect), ".reg/", 5) != 0) + return; + + /* already found */ + if (*(lwpid_t *)obj == 0) + return; + + lwp = atoi (bfd_section_name (abfd, asect) + 5); + if (*(lwpid_t *)obj == lwp) + *(lwpid_t *)obj = 0; +} + static int fbsd_thread_alive (ptid_t ptid) { @@ -722,6 +803,7 @@ td_thrinfo_t ti; td_err_e err; gregset_t gregs; + lwpid_t lwp; if (IS_THREAD (ptid)) { @@ -745,19 +827,35 @@ return 1; } - err = td_ta_map_lwp2thr_p (thread_agent, GET_LWP (ptid), &th); + if (fbsd_thread_active) + { + err = td_ta_map_lwp2thr_p (thread_agent, GET_LWP (ptid), &th); + + /* + * if the lwp was already mapped to user thread, don't use it + * directly, please use user thread id instead. + */ + if (err == TD_OK) + return 0; + } - /* - * if the lwp was already mapped to user thread, don't use it - * directly, please use user thread id instead. - */ - if (err == TD_OK) - return 0; + if (!target_has_execution) + { + lwp = GET_LWP (ptid); + bfd_map_over_sections (core_bfd, fbsd_core_check_lwp, &lwp); + return (lwp == 0); + } /* check lwp in kernel */ return ptrace (PT_GETREGS, GET_LWP (ptid), (caddr_t)&gregs, 0) == 0; } +static void +fbsd_thread_files_info (struct target_ops *ignore) +{ + child_ops.to_files_info (ignore); +} + static int find_new_threads_callback (const td_thrhandle_t *th_p, void *data) { @@ -773,11 +871,10 @@ if (ti.ti_state == TD_THR_UNKNOWN || ti.ti_state == TD_THR_ZOMBIE) return 0; - ptid = BUILD_THREAD (ti.ti_tid, GET_PID (inferior_ptid)); + ptid = BUILD_THREAD (ti.ti_tid, proc_handle.pid); if (!in_thread_list (ptid)) add_thread (ptid); - return 0; } @@ -786,6 +883,9 @@ { td_err_e err; + if (!fbsd_thread_active) + return; + /* Iterate over all user-space threads to discover new threads. */ err = td_ta_thr_iter_p (thread_agent, find_new_threads_callback, NULL, TD_THR_ANY_STATE, TD_THR_LOWEST_PRIORITY, @@ -908,109 +1008,169 @@ static void fbsd_thread_tsd_cmd (char *exp, int from_tty) { - td_ta_tsd_iter_p (thread_agent, tsd_cb, NULL); + if (fbsd_thread_active) + td_ta_tsd_iter_p (thread_agent, tsd_cb, NULL); } -static void -init_thread_db_ops (void) +static int +ignore (CORE_ADDR addr, char *contents) { - thread_db_ops.to_shortname = "multi-thread"; - thread_db_ops.to_longname = "multi-threaded child process."; - thread_db_ops.to_doc = "Threads and pthreads support."; - thread_db_ops.to_attach = fbsd_thread_attach; - thread_db_ops.to_detach = fbsd_thread_detach; - thread_db_ops.to_resume = fbsd_thread_resume; - thread_db_ops.to_wait = fbsd_thread_wait; - thread_db_ops.to_fetch_registers = fbsd_thread_fetch_registers; - thread_db_ops.to_store_registers = fbsd_thread_store_registers; - thread_db_ops.to_xfer_memory = fbsd_thread_xfer_memory; - thread_db_ops.to_kill = fbsd_thread_kill; - thread_db_ops.to_create_inferior = fbsd_thread_create_inferior; - thread_db_ops.to_post_startup_inferior = fbsd_thread_post_startup_inferior; - thread_db_ops.to_mourn_inferior = fbsd_thread_mourn_inferior; - thread_db_ops.to_thread_alive = fbsd_thread_alive; - thread_db_ops.to_find_new_threads = fbsd_thread_find_new_threads; - thread_db_ops.to_pid_to_str = fbsd_thread_pid_to_str; - thread_db_ops.to_stratum = thread_stratum; - thread_db_ops.to_has_thread_control = tc_none; - thread_db_ops.to_insert_breakpoint = memory_insert_breakpoint; - thread_db_ops.to_remove_breakpoint = memory_remove_breakpoint; - thread_db_ops.to_get_thread_local_address = fbsd_thread_get_local_address; - thread_db_ops.to_magic = OPS_MAGIC; + return 0; } -static int -thread_db_load (void) +static void +fbsd_core_open (char *filename, int from_tty) { - void *handle; - td_err_e err; + int err; - handle = dlopen (LIBTHREAD_DB_SO, RTLD_NOW); - if (handle == NULL) - return 0; + fbsd_thread_core = 1; - td_init_p = dlsym (handle, "td_init"); - if (td_init_p == NULL) - return 0; + orig_core_ops.to_open (filename, from_tty); - td_ta_new_p = dlsym (handle, "td_ta_new"); - if (td_ta_new_p == NULL) - return 0; + if (fbsd_thread_present) + { + err = td_ta_new_p (&proc_handle, &thread_agent); + if (err == TD_OK) + { + proc_handle.pid = elf_tdata (core_bfd)->core_pid; + fbsd_thread_activate (); + } + else + error ("fbsd_core_open: td_ta_new: %s", thread_db_err_str (err)); + } +} - td_ta_map_id2thr_p = dlsym (handle, "td_ta_map_id2thr"); - if (td_ta_map_id2thr_p == NULL) - return 0; +static void +fbsd_core_close (int quitting) +{ + orig_core_ops.to_close (quitting); +} - td_ta_map_lwp2thr_p = dlsym (handle, "td_ta_map_lwp2thr"); - if (td_ta_map_lwp2thr_p == NULL) - return 0; +static void +fbsd_core_detach (char *args, int from_tty) +{ + if (fbsd_thread_active) + fbsd_thread_deactivate (); + unpush_target (&fbsd_thread_ops); + orig_core_ops.to_detach (args, from_tty); + + /* Clear gdb solib information and symbol file + cache, so that after detach and re-attach, new_objfile + hook will be called */ + clear_solib(); + symbol_file_clear(0); +} - td_ta_thr_iter_p = dlsym (handle, "td_ta_thr_iter"); - if (td_ta_thr_iter_p == NULL) - return 0; +static void +fbsd_core_files_info (struct target_ops *ignore) +{ + orig_core_ops.to_files_info (ignore); +} - td_thr_validate_p = dlsym (handle, "td_thr_validate"); - if (td_thr_validate_p == NULL) - return 0; +static void +init_fbsd_core_ops (void) +{ + fbsd_core_ops.to_shortname = "FreeBSD-core"; + fbsd_core_ops.to_longname = "FreeBSD core thread."; + fbsd_core_ops.to_doc = "FreeBSD threads support for core files."; + fbsd_core_ops.to_open = fbsd_core_open; + fbsd_core_ops.to_close = fbsd_core_close; + fbsd_core_ops.to_attach = 0; + fbsd_core_ops.to_post_attach = 0; + fbsd_core_ops.to_detach = fbsd_core_detach; + /* fbsd_core_ops.to_resume = 0; */ + /* fbsd_core_ops.to_wait = 0; */ + fbsd_core_ops.to_fetch_registers = fbsd_thread_fetch_registers; + /* fbsd_core_ops.to_store_registers = 0; */ + /* fbsd_core_ops.to_prepare_to_store = 0; */ + fbsd_core_ops.to_xfer_memory = fbsd_thread_xfer_memory; + fbsd_core_ops.to_files_info = fbsd_core_files_info; + fbsd_core_ops.to_insert_breakpoint = ignore; + fbsd_core_ops.to_remove_breakpoint = ignore; + /* fbsd_core_ops.to_lookup_symbol = 0; */ + fbsd_core_ops.to_create_inferior = fbsd_thread_create_inferior; + fbsd_core_ops.to_stratum = core_stratum; + fbsd_core_ops.to_has_all_memory = 0; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Aug 23 22:56:47 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BF25A16A4D0; Mon, 23 Aug 2004 22:56:46 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 98D0916A4CE for ; Mon, 23 Aug 2004 22:56:46 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7468243D3F for ; Mon, 23 Aug 2004 22:56:46 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7NMukXm096845 for ; Mon, 23 Aug 2004 22:56:46 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7NMuk5T096842 for perforce@freebsd.org; Mon, 23 Aug 2004 22:56:46 GMT (envelope-from peter@freebsd.org) Date: Mon, 23 Aug 2004 22:56:46 GMT Message-Id: <200408232256.i7NMuk5T096842@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 60330 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 Aug 2004 22:56:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=60330 Change 60330 by peter@peter_daintree on 2004/08/23 22:56:23 integ -I -b i386_hammer Affected files ... .. //depot/projects/hammer/sys/amd64/acpica/acpi_wakeup.c#12 integrate .. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#68 integrate .. //depot/projects/hammer/sys/amd64/amd64/nexus.c#28 integrate .. //depot/projects/hammer/sys/amd64/amd64/pmap.c#101 integrate .. //depot/projects/hammer/sys/amd64/conf/NOTES#43 integrate Differences ... ==== //depot/projects/hammer/sys/amd64/acpica/acpi_wakeup.c#12 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#68 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/nexus.c#28 (text+ko) ==== @@ -97,6 +97,7 @@ void (*)(void *), void *, void **); static int nexus_teardown_intr(device_t, device_t, struct resource *, void *); +static struct resource_list *nexus_get_reslist(device_t dev, device_t child); static int nexus_set_resource(device_t, device_t, int, int, u_long, u_long); static int nexus_get_resource(device_t, device_t, int, int, u_long *, u_long *); static void nexus_delete_resource(device_t, device_t, int, int); @@ -120,6 +121,7 @@ DEVMETHOD(bus_setup_intr, nexus_setup_intr), DEVMETHOD(bus_teardown_intr, nexus_teardown_intr), DEVMETHOD(bus_config_intr, nexus_config_intr), + DEVMETHOD(bus_get_resource_list, nexus_get_reslist), DEVMETHOD(bus_set_resource, nexus_set_resource), DEVMETHOD(bus_get_resource, nexus_get_resource), DEVMETHOD(bus_delete_resource, nexus_delete_resource), @@ -464,6 +466,14 @@ return (intr_config_intr(irq, trig, pol)); } +static struct resource_list * +nexus_get_reslist(device_t dev, device_t child) +{ + struct nexus_device *ndev = DEVTONX(child); + + return (&ndev->nx_resources); +} + static int nexus_set_resource(device_t dev, device_t child, int type, int rid, u_long start, u_long count) { ==== //depot/projects/hammer/sys/amd64/amd64/pmap.c#101 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/conf/NOTES#43 (text+ko) ==== @@ -4,7 +4,7 @@ # This file contains machine dependent kernel configuration notes. For # machine independent notes, look in /sys/conf/NOTES. # -# (XXX from i386:NOTES,v 1.1168) +# (XXX from i386:NOTES,v 1.1170) # $FreeBSD: src/sys/amd64/conf/NOTES,v 1.18 2004/08/16 12:39:27 tjr Exp $ # From owner-p4-projects@FreeBSD.ORG Mon Aug 23 22:58:50 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BBEF116A4D0; Mon, 23 Aug 2004 22:58:49 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9679516A4CE for ; Mon, 23 Aug 2004 22:58:49 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8305943D1F for ; Mon, 23 Aug 2004 22:58:49 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7NMwnWP096884 for ; Mon, 23 Aug 2004 22:58:49 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7NMwn8P096881 for perforce@freebsd.org; Mon, 23 Aug 2004 22:58:49 GMT (envelope-from jhb@freebsd.org) Date: Mon, 23 Aug 2004 22:58:49 GMT Message-Id: <200408232258.i7NMwn8P096881@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Subject: PERFORCE change 60331 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 Aug 2004 22:58:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=60331 Change 60331 by jhb@jhb_slimer on 2004/08/23 22:58:14 - Fix LINT compiles on Alpha and i386. - Add a new minor todo. Affected files ... .. //depot/projects/smpng/sys/alpha/osf1/osf1_misc.c#29 edit .. //depot/projects/smpng/sys/compat/svr4/svr4_fcntl.c#16 edit .. //depot/projects/smpng/sys/compat/svr4/svr4_stream.c#19 edit .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_fcntl.c#9 edit .. //depot/projects/smpng/sys/kern/subr_smp.c#35 edit .. //depot/projects/smpng/sys/notes#18 edit Differences ... ==== //depot/projects/smpng/sys/alpha/osf1/osf1_misc.c#29 (text+ko) ==== @@ -60,6 +60,7 @@ #include #include #include +#include #include #include #include @@ -826,7 +827,7 @@ } break; default: - error = kern_fcntl(td, uap->fd, uap->cmd, uap->arg); + error = kern_fcntl(td, uap->fd, uap->cmd, (intptr_t)uap->arg); if ((uap->cmd == OSF1_F_GETFL) && !error ) { tmp = td->td_retval[0] & O_ACCMODE; ==== //depot/projects/smpng/sys/compat/svr4/svr4_fcntl.c#16 (text+ko) ==== @@ -46,6 +46,7 @@ #include #include #include +#include #include #include @@ -590,10 +591,10 @@ case F_DUPFD: case F_GETFD: case F_SETFD: - return (kern_fcntl(td, uap->fd, cmd, uap->arg)); + return (kern_fcntl(td, uap->fd, cmd, (intptr_t)uap->arg)); case F_GETFL: - error = kern_fcntl(td, uap->fd, cmd, uap->arg); + error = kern_fcntl(td, uap->fd, cmd, (intptr_t)uap->arg); if (error) return (error); *retval = bsd_to_svr4_flags(*retval); @@ -615,7 +616,7 @@ flags = *retval; flags &= O_ASYNC; flags |= svr4_to_bsd_flags((u_long) uap->arg); - return (kern_fcntl(td, uap->fd, F_SETFL, flags); + return (kern_fcntl(td, uap->fd, F_SETFL, flags)); } case F_GETLK: @@ -625,9 +626,6 @@ struct svr4_flock ifl; struct flock fl; - flp = stackgap_alloc(&sg, sizeof(struct flock)); - fa.arg = (long) flp; - error = copyin(uap->arg, &ifl, sizeof (ifl)); if (error) return (error); ==== //depot/projects/smpng/sys/compat/svr4/svr4_stream.c#19 (text+ko) ==== @@ -60,6 +60,7 @@ #include #include #include +#include #include #include #include /* Must come after sys/uio.h */ @@ -1518,7 +1519,7 @@ /* set up SIGIO receiver if needed */ if (dat != NULL) - return (kern_fcntl(td, fd, F_SETOWN, td->td_proc->p_pid); + return (kern_fcntl(td, fd, F_SETOWN, td->td_proc->p_pid)); return 0; } ==== //depot/projects/smpng/sys/i386/ibcs2/ibcs2_fcntl.c#9 (text+ko) ==== @@ -37,6 +37,7 @@ #include #include #include +#include #include #include @@ -246,26 +247,28 @@ struct thread *td; struct ibcs2_fcntl_args *uap; { + intptr_t arg; int error; struct flock fl; struct ibcs2_flock ifl; - + + arg = (intptr_t)uap->arg; switch(uap->cmd) { case IBCS2_F_DUPFD: - return (kern_fcntl(td, uap->fd, F_DUPFD, uap->arg)); + return (kern_fcntl(td, uap->fd, F_DUPFD, arg)); case IBCS2_F_GETFD: - return (kern_fcntl(td, uap->fd, F_GETFD, uap->arg)); + return (kern_fcntl(td, uap->fd, F_GETFD, arg)); case IBCS2_F_SETFD: - return (kern_fcntl(td, uap->fd, F_SETFD, uap->arg)); + return (kern_fcntl(td, uap->fd, F_SETFD, arg)); case IBCS2_F_GETFL: - error = kern_fcntl(td, uap->fd, F_GETFL, uap->arg); + error = kern_fcntl(td, uap->fd, F_GETFL, arg); if (error) return error; td->td_retval[0] = oflags2ioflags(td->td_retval[0]); return error; case IBCS2_F_SETFL: return (kern_fcntl(td, uap->fd, F_SETFL, - ioflags2oflags((int)uap->arg))); + ioflags2oflags(arg))); case IBCS2_F_GETLK: { @@ -274,7 +277,7 @@ if (error) return error; cvt_iflock2flock(&ifl, &fl); - error = kern_fcntl(td, uap->fd, F_GETLK, &fl); + error = kern_fcntl(td, uap->fd, F_GETLK, (intptr_t)&fl); if (error) return error; cvt_flock2iflock(&fl, &ifl); @@ -289,7 +292,7 @@ if (error) return error; cvt_iflock2flock(&ifl, &fl); - return (kern_fcntl(td, uap->fd, F_SETLK, &fl)); + return (kern_fcntl(td, uap->fd, F_SETLK, (intptr_t)&fl)); } case IBCS2_F_SETLKW: @@ -299,7 +302,7 @@ if (error) return error; cvt_iflock2flock(&ifl, &fl); - return (kern_fcntl(td, uap->fd, F_SETLKW, &fl)); + return (kern_fcntl(td, uap->fd, F_SETLKW, (intptr_t)&fl)); } } return ENOSYS; ==== //depot/projects/smpng/sys/kern/subr_smp.c#35 (text+ko) ==== @@ -47,6 +47,7 @@ #include #include +#include #include #ifdef SMP ==== //depot/projects/smpng/sys/notes#18 (text+ko) ==== @@ -54,5 +54,6 @@ go figure) - Optimize spin locks on UP such that they don't do atomic operations - Untested +- Move kern_setrlimit() and kern_wait() prototypes to Space reserved for child branches: From owner-p4-projects@FreeBSD.ORG Mon Aug 23 23:52:56 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BBF5716A4D0; Mon, 23 Aug 2004 23:52:55 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 656D416A4CE for ; Mon, 23 Aug 2004 23:52:55 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3DD8143D70 for ; Mon, 23 Aug 2004 23:52:55 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7NNqtp2098661 for ; Mon, 23 Aug 2004 23:52:55 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7NNqs7K098658 for perforce@freebsd.org; Mon, 23 Aug 2004 23:52:54 GMT (envelope-from peter@freebsd.org) Date: Mon, 23 Aug 2004 23:52:54 GMT Message-Id: <200408232352.i7NNqs7K098658@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 60333 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 Aug 2004 23:52:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=60333 Change 60333 by peter@peter_daintree on 2004/08/23 23:52:19 Put on peril senstitive sunglasses and add the two key CPUTYPES for the amd64 platform. Note that there is no minimum common switch. For example, -march=nocona assumes sse3, while -march=k8 assumes ffreep etc. Perhaps the default no-CPUTYPE case should be "-march=nocona -mno-sse3 -mtune=k8" (since there are several orders of magnitude more k8 cores out there right now, but that code should even run on all the prescott/noconas out there too.) Note that this needs to be done on RELENG_5 too. :-( While here, add the i386's prescott/nocona support. Treat them both as prescott since the 64 bit instructions are irrelevant. Likewise, alias prescott for nocona for the amd64 side of the fence. Affected files ... .. //depot/projects/hammer/share/mk/bsd.cpu.mk#19 edit Differences ... ==== //depot/projects/hammer/share/mk/bsd.cpu.mk#19 (text+ko) ==== @@ -12,6 +12,7 @@ _CPUCFLAGS = -mcpu=ev4 -mtune=ev5 MACHINE_CPU = ev4 . elif ${MACHINE_ARCH} == "amd64" +_CPUCFLAGS = MACHINE_CPU = amd64 sse2 sse . elif ${MACHINE_ARCH} == "ia64" _CPUCFLAGS = @@ -28,7 +29,9 @@ # between e.g. i586 and pentium) . if ${MACHINE_ARCH} == "i386" -. if ${CPUTYPE} == "pentium4" +. if ${CPUTYPE} == "nocona" +CPUTYPE = prescott +. elif ${CPUTYPE} == "pentium4" CPUTYPE = p4 . elif ${CPUTYPE} == "pentium3" CPUTYPE = p3 @@ -43,6 +46,12 @@ . elif ${CPUTYPE} == "k7" CPUTYPE = athlon . endif +. elif ${MACHINE_ARCH} == "amd64" +. if ${CPUTYPE} == "athlon64" || ${CPUTYPE} == "opteron" +CPUTYPE = k8 +. elif ${CPUTYPE} == "prescott" +CPUTYPE = nocona +. endif . endif # Logic to set up correct gcc optimization flag. This must be included @@ -71,6 +80,9 @@ . elif ${CPUTYPE} == "k5" _CPUCFLAGS = -march=pentium _ICC_CPUCFLAGS = -tpp5 +. elif ${CPUTYPE} == "prescott" +_CPUCFLAGS = -march=prescott +_ICC_CPUCFLAGS = -tpp7 -xiMKW . elif ${CPUTYPE} == "p4" _CPUCFLAGS = -march=pentium4 _ICC_CPUCFLAGS = -tpp7 -xiMKW @@ -109,6 +121,12 @@ . elif ${CPUTYPE} == "ev4" _CPUCFLAGS = -mcpu=ev4 . endif +. elif ${MACHINE_ARCH} == "amd64" +. if ${CPUTYPE} == "k8" +_CPUCFLAGS = -march=k8 +. elif ${CPUTYPE} == "nocona" +_CPUCFLAGS = -march=nocona +. endif . endif # Set up the list of CPU features based on the CPU type. This is an @@ -127,6 +145,8 @@ MACHINE_CPU = mmx k6 k5 i586 i486 i386 . elif ${CPUTYPE} == "k5" MACHINE_CPU = k5 i586 i486 i386 +. elif ${CPUTYPE} == "prescott" +MACHINE_CPU = sse3 sse2 sse i686 mmx i586 i486 i386 . elif ${CPUTYPE} == "p4" MACHINE_CPU = sse2 sse i686 mmx i586 i486 i386 . elif ${CPUTYPE} == "p3" @@ -159,7 +179,13 @@ MACHINE_CPU = ev4 . endif . elif ${MACHINE_ARCH} == "amd64" -MACHINE_CPU = amd64 sse2 sse +. if ${CPUTYPE} == "k8" +MACHINE_CPU = amd64 3dnow sse2 sse i686 mmx i586 i486 i386 +. elif ${CPUTYPE} == "nocona" +MACHINE_CPU = amd64 sse3 sse2 sse i686 mmx i586 i486 i386 +. else +MACHINE_CPU = amd64 sse2 sse i686 mmx i586 i486 i386 +. endif . elif ${MACHINE_ARCH} == "ia64" . if ${CPUTYPE} == "itanium" MACHINE_CPU = itanium From owner-p4-projects@FreeBSD.ORG Tue Aug 24 22:47:46 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id CA66816A4D0; Tue, 24 Aug 2004 22:47:45 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A4BE216A4CE for ; Tue, 24 Aug 2004 22:47:45 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9B26A43D39 for ; Tue, 24 Aug 2004 22:47:45 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7OMljrH038544 for ; Tue, 24 Aug 2004 22:47:45 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7OMlj27038541 for perforce@freebsd.org; Tue, 24 Aug 2004 22:47:45 GMT (envelope-from peter@freebsd.org) Date: Tue, 24 Aug 2004 22:47:45 GMT Message-Id: <200408242247.i7OMlj27038541@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 60377 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 Aug 2004 22:47:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=60377 Change 60377 by peter@peter_daintree on 2004/08/24 22:47:21 ok, so that was a bad idea. ports took this as a sign that it was ok to use 586/686 32 bit asm code Affected files ... .. //depot/projects/hammer/share/mk/bsd.cpu.mk#20 edit Differences ... ==== //depot/projects/hammer/share/mk/bsd.cpu.mk#20 (text+ko) ==== @@ -180,11 +180,11 @@ . endif . elif ${MACHINE_ARCH} == "amd64" . if ${CPUTYPE} == "k8" -MACHINE_CPU = amd64 3dnow sse2 sse i686 mmx i586 i486 i386 +MACHINE_CPU = amd64 3dnow sse2 sse . elif ${CPUTYPE} == "nocona" -MACHINE_CPU = amd64 sse3 sse2 sse i686 mmx i586 i486 i386 +MACHINE_CPU = amd64 sse3 sse2 sse . else -MACHINE_CPU = amd64 sse2 sse i686 mmx i586 i486 i386 +MACHINE_CPU = amd64 sse2 sse . endif . elif ${MACHINE_ARCH} == "ia64" . if ${CPUTYPE} == "itanium" From owner-p4-projects@FreeBSD.ORG Tue Aug 24 23:52:05 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8915116A4D0; Tue, 24 Aug 2004 23:52:05 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 21BC816A4CE for ; Tue, 24 Aug 2004 23:52:05 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F31B043D45 for ; Tue, 24 Aug 2004 23:52:04 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7ONq4Co040430 for ; Tue, 24 Aug 2004 23:52:04 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7ONq49x040427 for perforce@freebsd.org; Tue, 24 Aug 2004 23:52:04 GMT (envelope-from peter@freebsd.org) Date: Tue, 24 Aug 2004 23:52:04 GMT Message-Id: <200408242352.i7ONq49x040427@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 60381 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 Aug 2004 23:52:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=60381 Change 60381 by peter@peter_daintree on 2004/08/24 23:51:11 bwahahaha. kill count devices dead. Well, kill the config support for them. This means that I dont have to put bogo-quotes around device "snd_via233" anymore. Affected files ... .. //depot/projects/hammer/sys/coda/coda_fbsd.c#11 edit .. //depot/projects/hammer/sys/coda/coda_psdev.c#8 edit .. //depot/projects/hammer/sys/coda/coda_vfsops.c#9 edit .. //depot/projects/hammer/sys/conf/NOTES#60 edit .. //depot/projects/hammer/sys/conf/files#77 edit .. //depot/projects/hammer/sys/conf/files.pc98#34 edit .. //depot/projects/hammer/sys/conf/options#53 edit .. //depot/projects/hammer/sys/conf/options.pc98#25 edit .. //depot/projects/hammer/sys/i386/conf/NOTES#52 edit .. //depot/projects/hammer/sys/i4b/driver/i4b_ing.c#8 edit .. //depot/projects/hammer/sys/i4b/driver/i4b_ipr.c#9 edit .. //depot/projects/hammer/sys/i4b/driver/i4b_isppp.c#8 edit .. //depot/projects/hammer/sys/i4b/driver/i4b_rbch.c#8 edit .. //depot/projects/hammer/sys/i4b/driver/i4b_tel.c#8 edit .. //depot/projects/hammer/sys/i4b/driver/i4b_trace.c#9 edit .. //depot/projects/hammer/sys/i4b/layer4/i4b_i4bdrv.c#8 edit .. //depot/projects/hammer/sys/i4b/layer4/i4b_l4.c#4 edit .. //depot/projects/hammer/sys/pc98/conf/GENERIC#22 edit .. //depot/projects/hammer/sys/pc98/pc98/atapi.c#3 edit .. //depot/projects/hammer/sys/pc98/pc98/wd.c#11 edit .. //depot/projects/hammer/usr.sbin/config/config.h#5 edit .. //depot/projects/hammer/usr.sbin/config/config.y#6 edit .. //depot/projects/hammer/usr.sbin/config/lang.l#5 edit .. //depot/projects/hammer/usr.sbin/config/mkheaders.c#5 edit .. //depot/projects/hammer/usr.sbin/config/mkmakefile.c#8 edit Differences ... ==== //depot/projects/hammer/sys/coda/coda_fbsd.c#11 (text+ko) ==== @@ -31,7 +31,7 @@ #include __FBSDID("$FreeBSD: src/sys/coda/coda_fbsd.c,v 1.36 2004/07/15 08:25:59 phk Exp $"); -#include "vcoda.h" +#include "opt_coda.h" #include #include ==== //depot/projects/hammer/sys/coda/coda_psdev.c#8 (text+ko) ==== @@ -54,7 +54,7 @@ extern int coda_nc_initialized; /* Set if cache has been initialized */ -#include +#include "opt_coda.h" #include #include ==== //depot/projects/hammer/sys/coda/coda_vfsops.c#9 (text+ko) ==== @@ -43,7 +43,7 @@ #include __FBSDID("$FreeBSD: src/sys/coda/coda_vfsops.c,v 1.51 2004/07/30 22:08:49 phk Exp $"); -#include +#include "opt_coda.h" #include #include ==== //depot/projects/hammer/sys/conf/NOTES#60 (text+ko) ==== @@ -819,10 +819,11 @@ # Coda stuff: options CODA #CODA filesystem. -device vcoda 4 #coda minicache <-> venus comm. +device vcoda #coda minicache <-> venus comm. # Use the old Coda 5.x venus<->kernel interface instead of the new # realms-aware 6.x protocol. #options CODA_COMPAT_5 +options NVCODA=4 # # Add support for the EXT2FS filesystem of Linux fame. Be a bit @@ -1871,32 +1872,32 @@ # snd_vibes: S3 Sonicvibes PCI. # snd_uaudio: USB audio. -device "snd_ad1816" -device "snd_als4000" -#device "snd_au88x0" +device snd_ad1816 +device snd_als4000 +#device snd_au88x0 device snd_cmi -device "snd_cs4281" +device snd_cs4281 device snd_csa -device "snd_ds1" -device "snd_emu10k1" -device "snd_es137x" +device snd_ds1 +device snd_emu10k1 +device snd_es137x device snd_ess -device "snd_fm801" +device snd_fm801 device snd_gusc device snd_ich device snd_maestro -device "snd_maestro3" +device snd_maestro3 device snd_mss device snd_neomagic -device "snd_sb16" -device "snd_sb8" +device snd_sb16 +device snd_sb8 device snd_sbc device snd_solo -device "snd_t4dwave" -device "snd_via8233" -device "snd_via82c686" +device snd_t4dwave +device snd_via8233 +device snd_via82c686 device snd_vibes -#device "snd_vortex1" +#device snd_vortex1 device snd_uaudio # For non-pnp sound cards: ==== //depot/projects/hammer/sys/conf/files#77 (text+ko) ==== @@ -82,7 +82,7 @@ cam/scsi/scsi_ses.c optional ses cam/scsi/scsi_targ_bh.c optional targbh cam/scsi/scsi_target.c optional targ -coda/coda_fbsd.c count vcoda +coda/coda_fbsd.c optional vcoda coda/coda_namecache.c optional vcoda coda/coda_psdev.c optional vcoda coda/coda_subr.c optional vcoda @@ -992,14 +992,14 @@ # # isdn4bsd device drivers # -i4b/driver/i4b_trace.c count i4btrc -i4b/driver/i4b_rbch.c count i4brbch -i4b/driver/i4b_tel.c count i4btel -i4b/driver/i4b_ipr.c count i4bipr +i4b/driver/i4b_trace.c optional i4btrc +i4b/driver/i4b_rbch.c optional i4brbch +i4b/driver/i4b_tel.c optional i4btel +i4b/driver/i4b_ipr.c optional i4bipr net/slcompress.c optional i4bipr i4b/driver/i4b_ctl.c optional i4bctl -i4b/driver/i4b_ing.c count i4bing -i4b/driver/i4b_isppp.c count i4bisppp +i4b/driver/i4b_ing.c optional i4bing +i4b/driver/i4b_isppp.c optional i4bisppp net/slcompress.c optional i4bisppp # # isdn4bsd CAPI driver ==== //depot/projects/hammer/sys/conf/files.pc98#34 (text+ko) ==== @@ -347,8 +347,8 @@ pc98/pc98/sio.c optional sio pc98/pc98/sio_cbus.c optional sio isa pc98/pc98/syscons_pc98.c optional sc -pc98/pc98/wd.c count wdc -pc98/pc98/wd_cd.c count wcd wdc +pc98/pc98/wd.c optional wdc +pc98/pc98/wd_cd.c optional wcd wdc pccard/mecia.c optional mecia card pci/agp_ali.c optional agp pci/agp_amd.c optional agp ==== //depot/projects/hammer/sys/conf/options#53 (text+ko) ==== @@ -60,6 +60,7 @@ NO_ADAPTIVE_MUTEXES opt_adaptive_mutexes.h ALQ CODA_COMPAT_5 opt_coda.h +NVCODA opt_coda.h COMPAT_43 opt_compat.h COMPAT_FREEBSD4 opt_compat.h COMPILING_LINT opt_global.h @@ -680,3 +681,11 @@ DCONS_POLL_HZ opt_dcons.h DCONS_FORCE_CONSOLE opt_dcons.h DCONS_FORCE_GDB opt_dcons.h + +# Static unit counts +NI4BTRC opt_i4b.h +NI4BRBCH opt_i4b.h +NI4BTEL opt_i4b.h +NI4BIPR opt_i4b.h +NI4BING opt_i4b.h +NI4BISPPP opt_i4b.h ==== //depot/projects/hammer/sys/conf/options.pc98#25 (text+ko) ==== @@ -108,3 +108,7 @@ DEV_APIC opt_apic.h DEV_MECIA opt_mecia.h DEV_NPX opt_npx.h +DEV_WCD opt_wcd.h + +# Static unit counts +NWDC opt_wdc.h ==== //depot/projects/hammer/sys/i386/conf/NOTES#52 (text+ko) ==== @@ -471,7 +471,7 @@ # for AGP r128 and radeon cards. device mgadrm -device "r128drm" +device r128drm device radeondrm device sisdrm device tdfxdrm @@ -863,7 +863,7 @@ # ifpi2 driver for AVM Fritz!Card PCI version 2 # # AVM Fritz!Card PCI version 2 -device "ifpi2" +device ifpi2 # #--------------------------------------------------------------------------- # iwic driver for Winbond W6692 chipset @@ -893,34 +893,38 @@ # ISDN Protocol Stack - mandatory for all hardware drivers # # Q.921 / layer 2 - i4b passive cards D channel handling -device "i4bq921" +device i4bq921 # # Q.931 / layer 3 - i4b passive cards D channel handling -device "i4bq931" +device i4bq931 # # layer 4 - i4b common passive and active card handling -device "i4b" +device i4b # #--------------------------------------------------------------------------- # ISDN devices - mandatory for all hardware drivers # # userland driver to do ISDN tracing (for passive cards only) -device "i4btrc" 4 +device i4btrc +options NI4BTRC=4 # # userland driver to control the whole thing -device "i4bctl" +device i4bctl # #--------------------------------------------------------------------------- # ISDN devices - optional # # userland driver for access to raw B channel -device "i4brbch" 4 +device i4brbch +options NI4BRBCH=4 # # userland driver for telephony -device "i4btel" 2 +device i4btel +options NI4BTEL=2 # # network driver for IP over raw HDLC ISDN -device "i4bipr" 4 +device i4bipr +options NI4BIPR=4 # enable VJ header compression detection for ipr i/f options IPR_VJ # enable logging of the first n IP packets to isdnd (n=32 here) @@ -928,13 +932,15 @@ # # network driver for sync PPP over ISDN; requires an equivalent # number of sppp device to be configured -device "i4bisppp" 4 +device i4bisppp +options NI4BISPPP=4 # # B-channel interface to the netgraph subsystem -device "i4bing" 2 +device i4bing +options NI4BING=2 # # CAPI driver needed for active ISDN cards (see iavc driver above) -device "i4bcapi" +device i4bcapi # #--------------------------------------------------------------------------- ==== //depot/projects/hammer/sys/i4b/driver/i4b_ing.c#8 (text+ko) ==== @@ -33,8 +33,6 @@ #include __FBSDID("$FreeBSD: src/sys/i4b/driver/i4b_ing.c,v 1.22 2004/07/06 06:43:45 ru Exp $"); -#include "i4bing.h" - #include "opt_i4b.h" #include ==== //depot/projects/hammer/sys/i4b/driver/i4b_ipr.c#9 (text+ko) ==== @@ -56,8 +56,6 @@ #include __FBSDID("$FreeBSD: src/sys/i4b/driver/i4b_ipr.c,v 1.27 2004/06/13 17:29:08 mlaier Exp $"); -#include "i4bipr.h" - #include "opt_i4b.h" #include ==== //depot/projects/hammer/sys/i4b/driver/i4b_isppp.c#8 (text+ko) ==== @@ -41,7 +41,7 @@ #include __FBSDID("$FreeBSD: src/sys/i4b/driver/i4b_isppp.c,v 1.25 2003/10/31 18:32:07 brooks Exp $"); -#include "i4bisppp.h" +#include "opt_i4b.h" #include #include ==== //depot/projects/hammer/sys/i4b/driver/i4b_rbch.c#8 (text+ko) ==== @@ -33,7 +33,7 @@ #include __FBSDID("$FreeBSD: src/sys/i4b/driver/i4b_rbch.c,v 1.33 2004/06/16 09:47:10 phk Exp $"); -#include "i4brbch.h" +#include "opt_i4b.h" #include #include ==== //depot/projects/hammer/sys/i4b/driver/i4b_tel.c#8 (text+ko) ==== @@ -33,7 +33,7 @@ #include __FBSDID("$FreeBSD: src/sys/i4b/driver/i4b_tel.c,v 1.34 2004/06/16 09:47:10 phk Exp $"); -#include "i4btel.h" +#include "opt_i4b.h" #undef I4BTELDEBUG ==== //depot/projects/hammer/sys/i4b/driver/i4b_trace.c#9 (text+ko) ==== @@ -35,7 +35,7 @@ #include __FBSDID("$FreeBSD: src/sys/i4b/driver/i4b_trace.c,v 1.30 2004/06/16 09:47:10 phk Exp $"); -#include "i4btrc.h" +#include "opt_i4b.h" #include #include ==== //depot/projects/hammer/sys/i4b/layer4/i4b_i4bdrv.c#8 (text+ko) ==== @@ -33,8 +33,7 @@ #include __FBSDID("$FreeBSD: src/sys/i4b/layer4/i4b_i4bdrv.c,v 1.41 2004/06/16 09:47:10 phk Exp $"); -#include "i4bipr.h" -#include "i4btel.h" +#include "opt_i4b.h" #include #include @@ -48,9 +47,6 @@ #include #include -#include "i4bing.h" -#include "i4bisppp.h" - #include #include #include ==== //depot/projects/hammer/sys/i4b/layer4/i4b_l4.c#4 (text+ko) ==== @@ -33,18 +33,13 @@ #include __FBSDID("$FreeBSD: src/sys/i4b/layer4/i4b_l4.c,v 1.17 2003/06/11 00:01:05 obrien Exp $"); -#include "i4bipr.h" +#include "opt_i4b.h" #include #include #include #include -#include "i4bing.h" -#include "i4bisppp.h" -#include "i4brbch.h" -#include "i4btel.h" - #include #include #include ==== //depot/projects/hammer/sys/pc98/conf/GENERIC#22 (text+ko) ==== @@ -90,10 +90,11 @@ options ATA_STATIC_ID # Static device numbering # IDE controller and disks -#device wdc 1 # Needs COMPAT_OLDISA +#device wdc # Needs COMPAT_OLDISA +#options NWDC=1 # ATAPI devices on wdc -#device wcd 1 # IDE CD-ROM +#device wcd # IDE CD-ROM # SCSI Controllers device adv # Advansys SCSI adapters ==== //depot/projects/hammer/sys/pc98/pc98/atapi.c#3 (text+ko) ==== @@ -101,11 +101,8 @@ */ #undef DEBUG -#include "wdc.h" - -#include "wcd.h" - -#if NWDC > 0 +#include "opt_wcd.h" +#include "opt_wdc.h" #include #include @@ -248,14 +245,14 @@ break; case AT_TYPE_DIRECT: /* direct-access */ -#if NWCD > 0 +#ifdef DEV_WCD /* FALLTHROUGH */ #else printf ("wdc%d: ATAPI Floppies not configured\n", ctlr); break; #endif case AT_TYPE_CDROM: /* CD-ROM device */ -#if NWCD > 0 +#ifdef DEV_WCD /* ATAPI CD-ROM & CD-R/RW drives */ if (acdattach (ata, unit, ap, ata->debug) < 0) break; @@ -966,5 +963,3 @@ } return (ac->result); } - -#endif /* NWDC */ ==== //depot/projects/hammer/sys/pc98/pc98/wd.c#11 (text+ko) ==== @@ -48,12 +48,10 @@ * driver entries for polled reinit and polled write). */ -#include "wdc.h" +#include "opt_wdc.h" #undef NWD #define NWD (NWDC * 4) /* 4 drives per wdc on PC98 */ -#if NWDC > 0 - #include "opt_hw_wdog.h" #include @@ -2070,5 +2068,3 @@ } while (--timeout != 0); return (-1); } - -#endif /* NWDC > 0 */ ==== //depot/projects/hammer/usr.sbin/config/config.h#5 (text+ko) ==== @@ -41,7 +41,7 @@ struct file_list { STAILQ_ENTRY(file_list) f_next; char *f_fn; /* the name */ - int f_type; /* type or count */ + int f_type; /* type */ u_char f_flags; /* see below */ char *f_compilewith; /* special make rule if present */ char *f_depends; /* additional dependancies */ @@ -72,14 +72,12 @@ #define NO_IMPLCT_RULE 1 #define NO_OBJ 2 #define BEFORE_DEPEND 4 -#define NEED_COUNT 8 -#define ISDUP 16 -#define NOWERROR 32 +#define ISDUP 8 +#define NOWERROR 16 struct device { int d_done; /* processed */ char *d_name; /* name of device (e.g. rk11) */ - int d_count; /* device count */ #define UNKNOWN -2 /* -2 means not set yet */ STAILQ_ENTRY(device) d_next; /* Next one in list */ }; ==== //depot/projects/hammer/usr.sbin/config/config.y#6 (text+ko) ==== @@ -250,16 +250,7 @@ = { newopt(&opt, devopt($2), ns("1")); /* and the device part */ - newdev($2, UNKNOWN); - } | - DEVICE Dev NUMBER - = { - newopt(&opt, devopt($2), ns("1")); - /* and the device part */ - newdev($2, $3); - if ($3 == 0) - errx(1, "%s:%d: devices with zero units are not " - "likely to be correct", yyfile, yyline); + newdev($2); } | NODEVICE Dev = { @@ -298,14 +289,13 @@ * add a device to the list of devices */ static void -newdev(char *name, int count) +newdev(char *name) { struct device *np; np = (struct device *) malloc(sizeof *np); memset(np, 0, sizeof(*np)); np->d_name = name; - np->d_count = count; STAILQ_INSERT_TAIL(&dtab, np, d_next); } ==== //depot/projects/hammer/usr.sbin/config/lang.l#5 (text+ko) ==== @@ -89,11 +89,10 @@ int yyerror(const char *); %} -WORD [A-Za-z_][-A-Za-z_]* ID [A-Za-z_][-A-Za-z_0-9]* -%START NONUM TOEOL +%START TOEOL %% -{WORD} { +{ID} { int i; BEGIN 0; @@ -104,20 +103,6 @@ } return i; } -{WORD}/[0-9]* { - int i; - - if ((i = kw_lookup(yytext)) == -1) - REJECT; - if (i == DEVICE || i == NODEVICE) - BEGIN NONUM; - return i; - } -{ID} { - BEGIN 0; - yylval.str = strdup(yytext); - return ID; - } \\\"[^"]+\\\" { BEGIN 0; yytext[yyleng-2] = '"'; ==== //depot/projects/hammer/usr.sbin/config/mkheaders.c#5 (text+ko) ==== @@ -47,10 +47,6 @@ #include "config.h" #include "y.tab.h" -static int do_header(char *, int); -static char *toheader(char *); -static char *tomacro(char *); - void headers(void) { @@ -69,8 +65,6 @@ dp->d_done |= DEVDONE; } } - if (fl->f_flags & NEED_COUNT) - errors += do_header(fl->f_needs, match); } } STAILQ_FOREACH(dp, &dtab, d_next) { @@ -79,157 +73,7 @@ dp->d_name); errors++; } - if (dp->d_count == UNKNOWN) - continue; - match = 0; - STAILQ_FOREACH(fl, &ftab, f_next) { - if (fl->f_needs == 0) - continue; - if ((fl->f_flags & NEED_COUNT) == 0) - continue; - if (eq(dp->d_name, fl->f_needs)) { - match++; - break; - } - } - if (match == 0) { - warnx("Error: device \"%s\" does not take a count", - dp->d_name); - errors++; - } } if (errors) errx(1, "%d errors", errors); } - -static int -do_header(char *dev, int match) -{ - char *file, *name, *inw; - struct file_list *fl, *tflp; - struct file_list_head fl_head; - struct device *dp; - FILE *inf, *outf; - int inc, oldcount; - int count, hicount; - int errors; - - /* - * After this loop, "count" will be the actual number of units, - * and "hicount" will be the highest unit declared. do_header() - * must use this higher of these values. - */ - errors = 0; - hicount = count = 0; - STAILQ_FOREACH(dp, &dtab, d_next) { - if (eq(dp->d_name, dev)) { - if (dp->d_count == UNKNOWN) { - warnx("Device \"%s\" requires a count", dev); - return 1; - } - count = dp->d_count; - break; - } - } - file = toheader(dev); - name = tomacro(dev); - if (match) - fprintf(stderr, - "FYI: static unit limits for %s are set: %s=%d\n", - dev, name, count); - remember(file); - inf = fopen(file, "r"); - oldcount = -1; - if (inf == 0) { - outf = fopen(file, "w"); - if (outf == 0) - err(1, "%s", file); - fprintf(outf, "#ifndef BURN_BRIDGES\n"); - fprintf(outf, "#define %s %d\n", name, count); - fprintf(outf, "#endif\n"); - (void) fclose(outf); - return 0; - } - STAILQ_INIT(&fl_head); - for (;;) { - char *cp; - if ((inw = get_word(inf)) == 0 || inw == (char *)EOF) - break; - if ((inw = get_word(inf)) == 0 || inw == (char *)EOF) - break; - inw = ns(inw); - cp = get_word(inf); - if (cp == 0 || cp == (char *)EOF) - break; - inc = atoi(cp); - if (eq(inw, name)) { - oldcount = inc; - inc = count; - } - cp = get_word(inf); - if (cp == (char *)EOF) - break; - fl = (struct file_list *) malloc(sizeof *fl); - bzero(fl, sizeof(*fl)); - fl->f_fn = inw; /* malloced */ - fl->f_type = inc; - STAILQ_INSERT_HEAD(&fl_head, fl, f_next); - } - (void) fclose(inf); - if (count == oldcount) { - for (fl = STAILQ_FIRST(&fl_head); fl != NULL; fl = tflp) { - tflp = STAILQ_NEXT(fl, f_next); - free(fl->f_fn); - free(fl); - } - return 0; - } - if (oldcount == -1) { - fl = (struct file_list *) malloc(sizeof *fl); - bzero(fl, sizeof(*fl)); - fl->f_fn = ns(name); - fl->f_type = count; - STAILQ_INSERT_HEAD(&fl_head, fl, f_next); - } - outf = fopen(file, "w"); - if (outf == 0) - err(1, "%s", file); - for (fl = STAILQ_FIRST(&fl_head); fl != NULL; fl = tflp) { - fprintf(outf, - "#define %s %u\n", fl->f_fn, count ? fl->f_type : 0); - tflp = STAILQ_NEXT(fl, f_next); - free(fl->f_fn); - free(fl); - } - (void) fclose(outf); - return 0; -} - -/* - * convert a dev name to a .h file name - */ -static char * -toheader(char *dev) -{ - static char hbuf[MAXPATHLEN]; - - snprintf(hbuf, sizeof(hbuf), "%s.h", path(dev)); - return (hbuf); -} - -/* - * convert a dev name to a macro name - */ -static char * -tomacro(char *dev) -{ - static char mbuf[20]; - char *cp; - - cp = mbuf; - *cp++ = 'N'; - while (*dev) - *cp++ = islower(*dev) ? toupper(*dev++) : *dev++; - *cp++ = 0; - return (mbuf); -} ==== //depot/projects/hammer/usr.sbin/config/mkmakefile.c#8 (text+ko) ==== @@ -298,14 +298,14 @@ struct opt *op; char *wd, *this, *needs, *compilewith, *depends, *clean, *warning; int nreqs, isdup, std, filetype, - imp_rule, no_obj, needcount, before_depend, mandatory, nowerror; + imp_rule, no_obj, before_depend, mandatory, nowerror; fp = fopen(fname, "r"); if (fp == 0) err(1, "%s", fname); next: /* - * filename [ standard | mandatory | optional | count ] + * filename [ standard | mandatory | optional ] * [ dev* | profiling-routine ] [ no-obj ] * [ compile-with "compile rule" [no-implicit-rule] ] * [ dependency "dependency-list"] [ before-depend ] @@ -345,7 +345,6 @@ std = mandatory = 0; imp_rule = 0; no_obj = 0; - needcount = 0; before_depend = 0; nowerror = 0; filetype = NORMAL; @@ -358,10 +357,8 @@ */ } else if (eq(wd, "mandatory")) { mandatory = 1; - } else if (eq(wd, "count")) { - needcount = 1; } else if (!eq(wd, "optional")) { - printf("%s: %s must be count, optional, mandatory or standard\n", + printf("%s: %s must be optional, mandatory or standard\n", fname, this); exit(1); } @@ -451,11 +448,8 @@ if (isdup) goto invis; STAILQ_FOREACH(dp, &dtab, d_next) - if (eq(dp->d_name, wd)) { - if (std && dp->d_count <= 0) - dp->d_count = 1; + if (eq(dp->d_name, wd)) goto nextparam; - } if (mandatory) { printf("%s: mandatory device \"%s\" not found\n", fname, wd); @@ -483,8 +477,6 @@ tp->f_type = INVISIBLE; tp->f_needs = needs; tp->f_flags |= isdup; - if (needcount) - tp->f_flags |= NEED_COUNT; tp->f_compilewith = compilewith; tp->f_depends = depends; tp->f_clean = clean; @@ -516,8 +508,6 @@ tp->f_flags |= NO_OBJ; if (before_depend) tp->f_flags |= BEFORE_DEPEND; - if (needcount) - tp->f_flags |= NEED_COUNT; if (nowerror) tp->f_flags |= NOWERROR; tp->f_needs = needs; From owner-p4-projects@FreeBSD.ORG Wed Aug 25 00:35:59 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B26AE16A4D0; Wed, 25 Aug 2004 00:35:58 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 75DD416A4CE for ; Wed, 25 Aug 2004 00:35:58 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4893E43D5F for ; Wed, 25 Aug 2004 00:35:58 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7P0ZwD6041528 for ; Wed, 25 Aug 2004 00:35:58 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7P0ZvCI041525 for perforce@freebsd.org; Wed, 25 Aug 2004 00:35:57 GMT (envelope-from jhb@freebsd.org) Date: Wed, 25 Aug 2004 00:35:57 GMT Message-Id: <200408250035.i7P0ZvCI041525@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Subject: PERFORCE change 60382 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 Aug 2004 00:35:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=60382 Change 60382 by jhb@jhb_slimer on 2004/08/25 00:34:56 IFC @60380. Affected files ... .. //depot/projects/smpng/sys/alpha/linux/linux_proto.h#14 integrate .. //depot/projects/smpng/sys/alpha/linux/linux_syscall.h#12 integrate .. //depot/projects/smpng/sys/alpha/linux/linux_sysent.c#12 integrate .. //depot/projects/smpng/sys/alpha/linux/syscalls.master#14 integrate .. //depot/projects/smpng/sys/alpha/osf1/osf1_misc.c#30 integrate .. //depot/projects/smpng/sys/alpha/osf1/osf1_proto.h#8 integrate .. //depot/projects/smpng/sys/alpha/osf1/osf1_syscall.h#7 integrate .. //depot/projects/smpng/sys/alpha/osf1/osf1_sysent.c#7 integrate .. //depot/projects/smpng/sys/alpha/osf1/syscalls.master#8 integrate .. //depot/projects/smpng/sys/amd64/amd64/machdep.c#28 integrate .. //depot/projects/smpng/sys/amd64/amd64/mp_machdep.c#12 integrate .. //depot/projects/smpng/sys/amd64/amd64/nexus.c#13 integrate .. //depot/projects/smpng/sys/amd64/amd64/pmap.c#30 integrate .. //depot/projects/smpng/sys/amd64/linux32/linux32_machdep.c#2 integrate .. //depot/projects/smpng/sys/boot/alpha/Makefile.inc#3 integrate .. //depot/projects/smpng/sys/boot/alpha/common/Makefile.common#5 integrate .. //depot/projects/smpng/sys/boot/alpha/common/ldscript#1 branch .. //depot/projects/smpng/sys/boot/common/load.c#3 integrate .. //depot/projects/smpng/sys/boot/ficl/Makefile#9 integrate .. //depot/projects/smpng/sys/compat/linux/linux_socket.c#20 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_fcntl.c#17 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_proto.h#7 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_stream.c#20 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_syscall.h#6 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_syscallnames.c#6 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_sysent.c#6 integrate .. //depot/projects/smpng/sys/compat/svr4/syscalls.master#7 integrate .. //depot/projects/smpng/sys/conf/files#118 integrate .. //depot/projects/smpng/sys/conf/options.pc98#41 integrate .. //depot/projects/smpng/sys/contrib/pf/net/pf_ioctl.c#8 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi.c#72 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_pci_link.c#18 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_resource.c#21 integrate .. //depot/projects/smpng/sys/dev/acpica/acpivar.h#47 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic79xx_pci.c#19 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic7xxx_pci.c#16 integrate .. //depot/projects/smpng/sys/dev/ata/ata-all.c#57 integrate .. //depot/projects/smpng/sys/dev/ata/ata-chipset.c#41 integrate .. //depot/projects/smpng/sys/dev/ata/ata-dma.c#39 integrate .. //depot/projects/smpng/sys/dev/ata/ata-queue.c#17 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-cd.c#51 integrate .. //depot/projects/smpng/sys/dev/fdc/fdc.c#6 integrate .. //depot/projects/smpng/sys/dev/isp/isp_freebsd.c#31 integrate .. //depot/projects/smpng/sys/dev/lnc/if_lnc_pci.c#10 integrate .. //depot/projects/smpng/sys/dev/md/md.c#53 integrate .. //depot/projects/smpng/sys/dev/mpt/mpt.c#6 integrate .. //depot/projects/smpng/sys/dev/mpt/mpt_debug.c#5 integrate .. //depot/projects/smpng/sys/dev/mpt/mpt_freebsd.c#10 integrate .. //depot/projects/smpng/sys/dev/sound/pci/maestro.c#12 integrate .. //depot/projects/smpng/sys/geom/mirror/g_mirror.c#3 integrate .. //depot/projects/smpng/sys/geom/raid3/g_raid3.c#2 integrate .. //depot/projects/smpng/sys/geom/raid3/g_raid3.h#2 integrate .. //depot/projects/smpng/sys/geom/raid3/g_raid3_ctl.c#2 integrate .. //depot/projects/smpng/sys/geom/vinum/geom_vinum_raid5.c#3 integrate .. //depot/projects/smpng/sys/geom/vinum/geom_vinum_rm.c#2 integrate .. //depot/projects/smpng/sys/geom/vinum/geom_vinum_subr.c#5 integrate .. //depot/projects/smpng/sys/i386/acpica/acpi_panasonic.c#3 integrate .. //depot/projects/smpng/sys/i386/conf/NOTES#88 integrate .. //depot/projects/smpng/sys/i386/i386/mp_machdep.c#67 integrate .. //depot/projects/smpng/sys/i386/i386/nexus.c#15 integrate .. //depot/projects/smpng/sys/i386/i386/p4tcc.c#3 integrate .. //depot/projects/smpng/sys/i386/i386/pmap.c#68 integrate .. //depot/projects/smpng/sys/i386/i386/uio_machdep.c#4 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_fcntl.c#10 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_proto.h#8 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_syscall.h#7 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_sysent.c#9 integrate .. //depot/projects/smpng/sys/i386/ibcs2/syscalls.master#8 integrate .. //depot/projects/smpng/sys/i386/linux/linux_machdep.c#25 integrate .. //depot/projects/smpng/sys/i386/linux/linux_proto.h#17 integrate .. //depot/projects/smpng/sys/i386/linux/linux_syscall.h#16 integrate .. //depot/projects/smpng/sys/i386/linux/linux_sysent.c#17 integrate .. //depot/projects/smpng/sys/i386/linux/syscalls.master#17 integrate .. //depot/projects/smpng/sys/ia64/conf/GENERIC#40 integrate .. //depot/projects/smpng/sys/ia64/ia64/nexus.c#7 integrate .. //depot/projects/smpng/sys/kern/kern_kse.c#7 integrate .. //depot/projects/smpng/sys/kern/kern_lock.c#33 integrate .. //depot/projects/smpng/sys/kern/kern_module.c#14 integrate .. //depot/projects/smpng/sys/kern/kern_shutdown.c#48 integrate .. //depot/projects/smpng/sys/kern/sched_4bsd.c#34 integrate .. //depot/projects/smpng/sys/kern/subr_bus.c#39 integrate .. //depot/projects/smpng/sys/kern/subr_kdb.c#4 integrate .. //depot/projects/smpng/sys/kern/subr_smp.c#36 integrate .. //depot/projects/smpng/sys/kern/uipc_socket.c#56 integrate .. //depot/projects/smpng/sys/kern/vfs_subr.c#80 integrate .. //depot/projects/smpng/sys/modules/agp/Makefile#7 integrate .. //depot/projects/smpng/sys/modules/ipfw/Makefile#5 integrate .. //depot/projects/smpng/sys/net/if_fwsubr.c#3 integrate .. //depot/projects/smpng/sys/net/if_sl.c#24 integrate .. //depot/projects/smpng/sys/net/route.c#24 integrate .. //depot/projects/smpng/sys/net/rtsock.c#38 integrate .. //depot/projects/smpng/sys/netinet/ip_mroute.c#36 integrate .. //depot/projects/smpng/sys/netinet/ip_output.c#62 integrate .. //depot/projects/smpng/sys/netinet/raw_ip.c#43 integrate .. //depot/projects/smpng/sys/netinet/udp_usrreq.c#48 integrate .. //depot/projects/smpng/sys/netinet6/in6.c#22 integrate .. //depot/projects/smpng/sys/netinet6/in6_ifattach.c#11 integrate .. //depot/projects/smpng/sys/netinet6/in6_pcb.c#34 integrate .. //depot/projects/smpng/sys/netinet6/in6_prefix.c#5 delete .. //depot/projects/smpng/sys/netinet6/in6_prefix.h#2 delete .. //depot/projects/smpng/sys/netinet6/in6_proto.c#9 integrate .. //depot/projects/smpng/sys/netinet6/ip6_input.c#34 integrate .. //depot/projects/smpng/sys/netinet6/nd6.c#21 integrate .. //depot/projects/smpng/sys/pc98/pc98/fd.c#37 integrate .. //depot/projects/smpng/sys/pci/agp_ali.c#10 integrate .. //depot/projects/smpng/sys/pci/agp_intel.c#17 integrate .. //depot/projects/smpng/sys/security/mac_bsdextended/mac_bsdextended.c#11 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/uio_machdep.c#5 integrate .. //depot/projects/smpng/sys/sys/fdcio.h#4 integrate .. //depot/projects/smpng/sys/sys/param.h#69 integrate .. //depot/projects/smpng/sys/sys/smp.h#11 integrate .. //depot/projects/smpng/sys/ufs/ufs/ufs_vnops.c#38 integrate .. //depot/projects/smpng/sys/vm/vm_fault.c#39 integrate .. //depot/projects/smpng/sys/vm/vm_page.h#26 integrate Differences ... ==== //depot/projects/smpng/sys/alpha/linux/linux_proto.h#14 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/linux/linux_proto.h,v 1.18 2004/06/04 13:52:51 jhb Exp $ - * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.58 2004/06/04 13:52:23 jhb Exp + * $FreeBSD: src/sys/alpha/linux/linux_proto.h,v 1.19 2004/08/24 20:24:33 jhb Exp $ + * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.59 2004/08/24 20:21:21 jhb Exp */ #ifndef _LINUX_SYSPROTO_H_ ==== //depot/projects/smpng/sys/alpha/linux/linux_syscall.h#12 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/linux/linux_syscall.h,v 1.16 2004/06/04 13:52:51 jhb Exp $ - * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.58 2004/06/04 13:52:23 jhb Exp + * $FreeBSD: src/sys/alpha/linux/linux_syscall.h,v 1.17 2004/08/24 20:24:33 jhb Exp $ + * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.59 2004/08/24 20:21:21 jhb Exp */ #define LINUX_SYS_exit 1 ==== //depot/projects/smpng/sys/alpha/linux/linux_sysent.c#12 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/linux/linux_sysent.c,v 1.16 2004/06/04 13:52:51 jhb Exp $ - * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.58 2004/06/04 13:52:23 jhb Exp + * $FreeBSD: src/sys/alpha/linux/linux_sysent.c,v 1.17 2004/08/24 20:24:33 jhb Exp $ + * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.59 2004/08/24 20:21:21 jhb Exp */ #include "opt_compat.h" @@ -109,7 +109,7 @@ { 0, (sy_call_t *)linux_getdtablesize }, /* 89 = linux_getdtablesize */ { SYF_MPSAFE | AS(dup2_args), (sy_call_t *)dup2 }, /* 90 = dup2 */ { AS(linux_newfstat_args), (sy_call_t *)linux_newfstat }, /* 91 = linux_newfstat */ - { AS(linux_fcntl_args), (sy_call_t *)linux_fcntl }, /* 92 = linux_fcntl */ + { SYF_MPSAFE | AS(linux_fcntl_args), (sy_call_t *)linux_fcntl }, /* 92 = linux_fcntl */ { AS(osf1_select_args), (sy_call_t *)osf1_select }, /* 93 = osf1_select */ { AS(poll_args), (sy_call_t *)poll }, /* 94 = poll */ { AS(fsync_args), (sy_call_t *)fsync }, /* 95 = fsync */ ==== //depot/projects/smpng/sys/alpha/linux/syscalls.master#14 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.58 2004/06/04 13:52:23 jhb Exp $ + $FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.59 2004/08/24 20:21:21 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). ==== //depot/projects/smpng/sys/alpha/osf1/osf1_misc.c#30 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/osf1/osf1_misc.c,v 1.47 2004/07/26 07:24:01 cperciva Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/osf1/osf1_misc.c,v 1.48 2004/08/24 20:21:21 jhb Exp $"); #include #include ==== //depot/projects/smpng/sys/alpha/osf1/osf1_proto.h#8 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/osf1/osf1_proto.h,v 1.10 2004/03/15 22:44:35 jhb Exp $ - * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.9 2004/03/15 22:43:49 jhb Exp + * $FreeBSD: src/sys/alpha/osf1/osf1_proto.h,v 1.11 2004/08/24 20:24:33 jhb Exp $ + * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.10 2004/08/24 20:21:21 jhb Exp */ #ifndef _OSF1_SYSPROTO_H_ ==== //depot/projects/smpng/sys/alpha/osf1/osf1_syscall.h#7 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/osf1/osf1_syscall.h,v 1.9 2004/03/15 22:44:35 jhb Exp $ - * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.9 2004/03/15 22:43:49 jhb Exp + * $FreeBSD: src/sys/alpha/osf1/osf1_syscall.h,v 1.10 2004/08/24 20:24:33 jhb Exp $ + * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.10 2004/08/24 20:21:21 jhb Exp */ #define OSF1_SYS_nosys 0 ==== //depot/projects/smpng/sys/alpha/osf1/osf1_sysent.c#7 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/osf1/osf1_sysent.c,v 1.9 2004/03/15 22:44:35 jhb Exp $ - * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.9 2004/03/15 22:43:49 jhb Exp + * $FreeBSD: src/sys/alpha/osf1/osf1_sysent.c,v 1.10 2004/08/24 20:24:33 jhb Exp $ + * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.10 2004/08/24 20:21:21 jhb Exp */ #include "opt_compat.h" @@ -110,7 +110,7 @@ { SYF_MPSAFE | 0, (sy_call_t *)getdtablesize }, /* 89 = getdtablesize */ { SYF_MPSAFE | AS(dup2_args), (sy_call_t *)dup2 }, /* 90 = dup2 */ { AS(osf1_fstat_args), (sy_call_t *)osf1_fstat }, /* 91 = osf1_fstat */ - { AS(osf1_fcntl_args), (sy_call_t *)osf1_fcntl }, /* 92 = osf1_fcntl */ + { SYF_MPSAFE | AS(osf1_fcntl_args), (sy_call_t *)osf1_fcntl }, /* 92 = osf1_fcntl */ { AS(osf1_select_args), (sy_call_t *)osf1_select }, /* 93 = osf1_select */ { AS(poll_args), (sy_call_t *)poll }, /* 94 = poll */ { AS(fsync_args), (sy_call_t *)fsync }, /* 95 = fsync */ ==== //depot/projects/smpng/sys/alpha/osf1/syscalls.master#8 (text+ko) ==== @@ -1,4 +1,4 @@ -; $FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.9 2004/03/15 22:43:49 jhb Exp $ +; $FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.10 2004/08/24 20:21:21 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from OSF1). ==== //depot/projects/smpng/sys/amd64/amd64/machdep.c#28 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.618 2004/08/16 22:57:47 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.619 2004/08/24 00:16:43 peter Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -498,6 +498,10 @@ cpu_idle(void) { +#ifdef SMP + if (mp_grab_cpu_hlt()) + return; +#endif if (cpu_idle_hlt) { disable_intr(); if (sched_runnable()) ==== //depot/projects/smpng/sys/amd64/amd64/mp_machdep.c#12 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.242 2004/08/13 22:30:55 ambrisko Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.243 2004/08/23 21:39:28 peter Exp $"); #include "opt_cpu.h" #include "opt_kstack_pages.h" @@ -103,7 +103,6 @@ vm_offset_t smp_tlb_addr1; vm_offset_t smp_tlb_addr2; volatile int smp_tlb_wait; -struct mtx smp_tlb_mtx; extern inthand_t IDTVEC(fast_syscall), IDTVEC(fast_syscall32); @@ -319,8 +318,6 @@ /* Install an inter-CPU IPI for CPU stop/restart */ setidt(IPI_STOP, IDTVEC(cpustop), SDT_SYSIGT, SEL_KPL, 0); - mtx_init(&smp_tlb_mtx, "tlb", NULL, MTX_SPIN); - /* Set boot_cpu_id if needed. */ if (boot_cpu_id == -1) { boot_cpu_id = PCPU_GET(apic_id); @@ -711,7 +708,7 @@ ncpu = mp_ncpus - 1; /* does not shootdown self */ if (ncpu < 1) return; /* no other cpus */ - mtx_assert(&smp_tlb_mtx, MA_OWNED); + mtx_assert(&smp_rv_mtx, MA_OWNED); smp_tlb_addr1 = addr1; smp_tlb_addr2 = addr2; atomic_store_rel_int(&smp_tlb_wait, 0); @@ -797,7 +794,7 @@ if (ncpu < 1) return; } - mtx_assert(&smp_tlb_mtx, MA_OWNED); + mtx_assert(&smp_rv_mtx, MA_OWNED); smp_tlb_addr1 = addr1; smp_tlb_addr2 = addr2; atomic_store_rel_int(&smp_tlb_wait, 0); ==== //depot/projects/smpng/sys/amd64/amd64/nexus.c#13 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/nexus.c,v 1.62 2004/07/08 01:34:24 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/nexus.c,v 1.63 2004/08/24 19:22:54 njl Exp $"); /* * This code implements a `root nexus' for Intel Architecture @@ -97,6 +97,7 @@ void (*)(void *), void *, void **); static int nexus_teardown_intr(device_t, device_t, struct resource *, void *); +static struct resource_list *nexus_get_reslist(device_t dev, device_t child); static int nexus_set_resource(device_t, device_t, int, int, u_long, u_long); static int nexus_get_resource(device_t, device_t, int, int, u_long *, u_long *); static void nexus_delete_resource(device_t, device_t, int, int); @@ -120,6 +121,7 @@ DEVMETHOD(bus_setup_intr, nexus_setup_intr), DEVMETHOD(bus_teardown_intr, nexus_teardown_intr), DEVMETHOD(bus_config_intr, nexus_config_intr), + DEVMETHOD(bus_get_resource_list, nexus_get_reslist), DEVMETHOD(bus_set_resource, nexus_set_resource), DEVMETHOD(bus_get_resource, nexus_get_resource), DEVMETHOD(bus_delete_resource, nexus_delete_resource), @@ -464,6 +466,14 @@ return (intr_config_intr(irq, trig, pol)); } +static struct resource_list * +nexus_get_reslist(device_t dev, device_t child) +{ + struct nexus_device *ndev = DEVTONX(child); + + return (&ndev->nx_resources); +} + static int nexus_set_resource(device_t dev, device_t child, int type, int rid, u_long start, u_long count) { ==== //depot/projects/smpng/sys/amd64/amd64/pmap.c#30 (text+ko) ==== @@ -75,7 +75,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.491 2004/08/08 00:31:58 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.493 2004/08/24 00:17:52 peter Exp $"); /* * Manages physical address maps. @@ -631,7 +631,7 @@ if (smp_started) { if (!(read_rflags() & PSL_I)) panic("%s: interrupts disabled", __func__); - mtx_lock_spin(&smp_tlb_mtx); + mtx_lock_spin(&smp_rv_mtx); } else critical_enter(); /* @@ -652,7 +652,7 @@ smp_masked_invlpg(pmap->pm_active & other_cpus, va); } if (smp_started) - mtx_unlock_spin(&smp_tlb_mtx); + mtx_unlock_spin(&smp_rv_mtx); else critical_exit(); } @@ -667,7 +667,7 @@ if (smp_started) { if (!(read_rflags() & PSL_I)) panic("%s: interrupts disabled", __func__); - mtx_lock_spin(&smp_tlb_mtx); + mtx_lock_spin(&smp_rv_mtx); } else critical_enter(); /* @@ -691,7 +691,7 @@ sva, eva); } if (smp_started) - mtx_unlock_spin(&smp_tlb_mtx); + mtx_unlock_spin(&smp_rv_mtx); else critical_exit(); } @@ -705,7 +705,7 @@ if (smp_started) { if (!(read_rflags() & PSL_I)) panic("%s: interrupts disabled", __func__); - mtx_lock_spin(&smp_tlb_mtx); + mtx_lock_spin(&smp_rv_mtx); } else critical_enter(); /* @@ -726,7 +726,7 @@ smp_masked_invltlb(pmap->pm_active & other_cpus); } if (smp_started) - mtx_unlock_spin(&smp_tlb_mtx); + mtx_unlock_spin(&smp_rv_mtx); else critical_exit(); } @@ -1048,9 +1048,7 @@ if (va >= VM_MAXUSER_ADDRESS) return 0; -/* XXX this should be an error, all cases should be caught now */ - if (ptepde == 0) - ptepde = *pmap_pde(pmap, va); + KASSERT(ptepde != 0, ("pmap_unuse_pt: ptepde != 0")); mpte = PHYS_TO_VM_PAGE(ptepde & PG_FRAME); return pmap_unwire_pte_hold(pmap, va, mpte); } ==== //depot/projects/smpng/sys/amd64/linux32/linux32_machdep.c#2 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.2 2004/08/16 10:54:25 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.3 2004/08/24 20:52:52 jhb Exp $"); #include #include @@ -849,8 +849,8 @@ ss.ss_size = lss.ss_size; ss.ss_flags = linux_to_bsd_sigaltstack(lss.ss_flags); } - error = kern_sigaltstack(td, (uap->uoss != NULL) ? &oss : NULL, - (uap->uss != NULL) ? &ss : NULL); + error = kern_sigaltstack(td, (uap->uss != NULL) ? &ss : NULL, + (uap->uoss != NULL) ? &oss : NULL); if (!error && uap->uoss != NULL) { lss.ss_sp = PTROUT(oss.ss_sp); lss.ss_size = oss.ss_size; ==== //depot/projects/smpng/sys/boot/alpha/Makefile.inc#3 (text+ko) ==== @@ -1,9 +1,9 @@ -# $FreeBSD: src/sys/boot/alpha/Makefile.inc,v 1.9 2004/02/11 22:01:16 ru Exp $ +# $FreeBSD: src/sys/boot/alpha/Makefile.inc,v 1.11 2004/08/23 16:25:07 obrien Exp $ # Options used when building app-specific libalpha components BINDIR?= /boot -CFLAGS+= -ffreestanding -mno-fp-regs +CFLAGS+= -ffreestanding -mno-fp-regs -Os LDFLAGS+= -nostdlib PRIMARY_LOAD_ADDRESS= 0x20000000 # "Region 1 start" SECONDARY_LOAD_ADDRESS= 0x2000c000 # "Region 1 start" + 48k ==== //depot/projects/smpng/sys/boot/alpha/common/Makefile.common#5 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/boot/alpha/common/Makefile.common,v 1.18 2004/02/11 22:01:17 ru Exp $ +# $FreeBSD: src/sys/boot/alpha/common/Makefile.common,v 1.19 2004/08/22 00:26:01 marcel Exp $ # # Common Alpha loader build rules @@ -40,7 +40,7 @@ vers.c: ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version sh ${.CURDIR}/../../common/newvers.sh ${.CURDIR}/version ${NEWVERSWHAT} -LDFLAGS=-e start -N -Ttext ${LOAD_ADDRESS} +LDFLAGS=-e start -Ttext ${LOAD_ADDRESS} -T ${.CURDIR}/../common/ldscript FILES= ${BOOT} # XXX INSTALLFLAGS_${BOOT}= -b ==== //depot/projects/smpng/sys/boot/common/load.c#3 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/common/load.c,v 1.3 2003/08/25 23:30:41 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/common/load.c,v 1.5 2004/08/22 08:57:05 maxim Exp $"); #include @@ -45,10 +45,10 @@ char *buf; int fd; size_t size, result; - + if ((fd = open(path, F_READ | flags)) == -1) return(NULL); - + printf("%s open, flags 0x%x\n", path, files[fd].f_flags); buf = alloc(LOAD_TINYBUF); @@ -68,12 +68,11 @@ printf("tinybuf loaded, size %d\n", size); getchar(); - - + /* Read everything until we know how big it is */ for (;;) { result = read(fd, buf, LOAD_TINYBUF); - if (size == -1) { + if (result == -1) { free(buf, LOAD_TINYBUF); close(fd); return(NULL); @@ -82,7 +81,7 @@ break; size += result; } - + /* discard the old buffer, close the file */ free(buf, LOAD_TINYBUF); close(fd); ==== //depot/projects/smpng/sys/boot/ficl/Makefile#9 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.37 2004/02/07 08:10:07 ru Exp $ +# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.39 2004/08/23 16:25:07 obrien Exp $ # .PATH: ${.CURDIR}/${MACHINE_ARCH:S/amd64/i386/} BASE_SRCS= dict.c ficl.c fileaccess.c float.c loader.c math64.c \ @@ -8,7 +8,7 @@ CLEANFILES= softcore.c testmain testmain.o CFLAGS+= -ffreestanding .if ${MACHINE_ARCH} == "alpha" -CFLAGS+= -mno-fp-regs +CFLAGS+= -mno-fp-regs -Os .endif .if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64" CFLAGS+= -mpreferred-stack-boundary=2 ==== //depot/projects/smpng/sys/compat/linux/linux_socket.c#20 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_socket.c,v 1.51 2004/08/16 07:28:16 tjr Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_socket.c,v 1.53 2004/08/24 20:21:21 jhb Exp $"); /* XXX we use functions that might not exist. */ #include "opt_compat.h" @@ -1004,7 +1004,8 @@ if (error) return (error); - if (bsd_args.msg->msg_control != NULL) { + if (bsd_args.msg->msg_control != NULL && + bsd_args.msg->msg_controllen > 0) { cmsg = (struct cmsghdr*)bsd_args.msg->msg_control; cmsg->cmsg_level = bsd_to_linux_sockopt_level(cmsg->cmsg_level); } ==== //depot/projects/smpng/sys/compat/svr4/svr4_fcntl.c#17 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_fcntl.c,v 1.32 2003/06/22 08:41:41 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_fcntl.c,v 1.33 2004/08/24 20:21:21 jhb Exp $"); #include "opt_mac.h" ==== //depot/projects/smpng/sys/compat/svr4/svr4_proto.h#7 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/svr4/svr4_proto.h,v 1.15 2004/02/06 20:21:18 jhb Exp $ - * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.15 2004/02/06 20:07:33 jhb Exp + * $FreeBSD: src/sys/compat/svr4/svr4_proto.h,v 1.16 2004/08/24 20:24:33 jhb Exp $ + * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.16 2004/08/24 20:21:21 jhb Exp */ #ifndef _SVR4_SYSPROTO_H_ ==== //depot/projects/smpng/sys/compat/svr4/svr4_stream.c#20 (text+ko) ==== @@ -36,7 +36,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_stream.c,v 1.49 2004/07/10 15:42:16 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_stream.c,v 1.50 2004/08/24 20:21:21 jhb Exp $"); #define COMPAT_43 1 ==== //depot/projects/smpng/sys/compat/svr4/svr4_syscall.h#6 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/svr4/svr4_syscall.h,v 1.13 2004/02/06 20:21:18 jhb Exp $ - * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.15 2004/02/06 20:07:33 jhb Exp + * $FreeBSD: src/sys/compat/svr4/svr4_syscall.h,v 1.14 2004/08/24 20:24:33 jhb Exp $ + * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.16 2004/08/24 20:21:21 jhb Exp */ #define SVR4_SYS_exit 1 ==== //depot/projects/smpng/sys/compat/svr4/svr4_syscallnames.c#6 (text+ko) ==== @@ -2,8 +2,8 @@ * System call names. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/svr4/svr4_syscallnames.c,v 1.13 2004/02/06 20:21:18 jhb Exp $ - * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.15 2004/02/06 20:07:33 jhb Exp + * $FreeBSD: src/sys/compat/svr4/svr4_syscallnames.c,v 1.14 2004/08/24 20:24:33 jhb Exp $ + * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.16 2004/08/24 20:21:21 jhb Exp */ const char *svr4_syscallnames[] = { ==== //depot/projects/smpng/sys/compat/svr4/svr4_sysent.c#6 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/svr4/svr4_sysent.c,v 1.14 2004/02/06 20:21:18 jhb Exp $ - * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.15 2004/02/06 20:07:33 jhb Exp + * $FreeBSD: src/sys/compat/svr4/svr4_sysent.c,v 1.15 2004/08/24 20:24:33 jhb Exp $ + * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.16 2004/08/24 20:21:21 jhb Exp */ #include @@ -85,7 +85,7 @@ { AS(svr4_sys_execve_args), (sy_call_t *)svr4_sys_execve }, /* 59 = svr4_sys_execve */ { SYF_MPSAFE | AS(umask_args), (sy_call_t *)umask }, /* 60 = umask */ { AS(chroot_args), (sy_call_t *)chroot }, /* 61 = chroot */ - { AS(svr4_sys_fcntl_args), (sy_call_t *)svr4_sys_fcntl }, /* 62 = svr4_sys_fcntl */ + { SYF_MPSAFE | AS(svr4_sys_fcntl_args), (sy_call_t *)svr4_sys_fcntl }, /* 62 = svr4_sys_fcntl */ { SYF_MPSAFE | AS(svr4_sys_ulimit_args), (sy_call_t *)svr4_sys_ulimit }, /* 63 = svr4_sys_ulimit */ { 0, (sy_call_t *)nosys }, /* 64 = reserved */ { 0, (sy_call_t *)nosys }, /* 65 = reserved */ ==== //depot/projects/smpng/sys/compat/svr4/syscalls.master#7 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.15 2004/02/06 20:07:33 jhb Exp $ + $FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.16 2004/08/24 20:21:21 jhb Exp $ ; from: @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; ; System call name/number master file (or rather, slave, from SVR4). ==== //depot/projects/smpng/sys/conf/files#118 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.943 2004/08/17 22:05:53 andre Exp $ +# $FreeBSD: src/sys/conf/files,v 1.944 2004/08/23 03:00:25 rwatson Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -1517,7 +1517,6 @@ netinet6/in6_gif.c optional gif inet6 netinet6/in6_ifattach.c optional inet6 netinet6/in6_pcb.c optional inet6 -netinet6/in6_prefix.c optional inet6 netinet6/in6_proto.c optional inet6 netinet6/in6_rmx.c optional inet6 netinet6/in6_src.c optional inet6 ==== //depot/projects/smpng/sys/conf/options.pc98#41 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options.pc98,v 1.178 2004/08/18 03:46:39 rwatson Exp $ +# $FreeBSD: src/sys/conf/options.pc98,v 1.179 2004/08/22 15:13:08 nyan Exp $ # Options specific to the pc98 platform kernels AUTO_EOI_1 opt_auto_eoi.h @@ -108,6 +108,3 @@ DEV_APIC opt_apic.h DEV_MECIA opt_mecia.h DEV_NPX opt_npx.h - -# agp options -AGP_AMD64_GART opt_agp.h ==== //depot/projects/smpng/sys/contrib/pf/net/pf_ioctl.c#8 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/contrib/pf/net/pf_ioctl.c,v 1.12 2004/08/12 14:15:42 mlaier Exp $ */ +/* $FreeBSD: src/sys/contrib/pf/net/pf_ioctl.c,v 1.13 2004/08/22 15:23:48 mlaier Exp $ */ /* $OpenBSD: pf_ioctl.c,v 1.112.2.2 2004/07/24 18:28:12 brad Exp $ */ /* @@ -66,6 +66,7 @@ #ifdef __FreeBSD__ #include #include +#include #else #include #include @@ -979,7 +980,11 @@ int error = 0; /* XXX keep in sync with switch() below */ +#ifdef __FreeBSD__ + if (securelevel_gt(td->td_ucred, 1)) +#else if (securelevel > 1) +#endif switch (cmd) { case DIOCGETRULES: case DIOCGETRULE: ==== //depot/projects/smpng/sys/dev/acpica/acpi.c#72 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/acpica/acpi.c,v 1.188 2004/08/18 07:00:43 njl Exp $ + * $FreeBSD: src/sys/dev/acpica/acpi.c,v 1.189 2004/08/23 16:28:42 njl Exp $ */ #include "opt_acpi.h" @@ -83,9 +83,6 @@ /* Bitmap of device quirks. */ int acpi_quirks; -/* Local pools for managing system resources for ACPI child devices. */ -struct rman acpi_rman_io, acpi_rman_mem; - static int acpi_modevent(struct module *mod, int event, void *junk); static void acpi_identify(driver_t *driver, device_t parent); static int acpi_probe(device_t dev); @@ -99,6 +96,9 @@ static int acpi_write_ivar(device_t dev, device_t child, int index, uintptr_t value); static struct resource_list *acpi_get_rlist(device_t dev, device_t child); +static int acpi_sysres_alloc(device_t dev); +static struct resource_list_entry *acpi_sysres_find(device_t dev, int type, + u_long addr); static struct resource *acpi_alloc_resource(device_t bus, device_t child, int type, int *rid, u_long start, u_long end, u_long count, u_int flags); @@ -189,6 +189,9 @@ ACPI_SERIAL_DECL(acpi, "ACPI root bus"); +/* Local pools for managing system resources for ACPI child devices. */ +static struct rman acpi_rman_io, acpi_rman_mem; + #define ACPI_MINIMUM_AWAKETIME 5 static const char* sleep_state_names[] = { @@ -745,6 +748,75 @@ return (&ad->ad_rl); } +/* + * Pre-allocate/manage all memory and IO resources. Since rman can't handle + * duplicates, we merge any in the sysresource attach routine. + */ +static int +acpi_sysres_alloc(device_t dev) +{ + struct resource *res; + struct resource_list *rl; + struct resource_list_entry *rle; + struct rman *rm; + + rl = BUS_GET_RESOURCE_LIST(device_get_parent(dev), dev); + SLIST_FOREACH(rle, rl, link) { + if (rle->res != NULL) { + device_printf(dev, "duplicate resource for %lx\n", rle->start); + continue; + } + + /* Only memory and IO resources are valid here. */ + switch (rle->type) { + case SYS_RES_IOPORT: + rm = &acpi_rman_io; + break; + case SYS_RES_MEMORY: + rm = &acpi_rman_mem; + break; + default: + continue; + } + + /* Pre-allocate resource and add to our rman pool. */ + res = BUS_ALLOC_RESOURCE(device_get_parent(dev), dev, rle->type, + &rle->rid, rle->start, rle->start + rle->count - 1, rle->count, 0); + if (res != NULL) { + rman_manage_region(rm, rman_get_start(res), rman_get_end(res)); + rle->res = res; + } else + device_printf(dev, "reservation of %lx, %lx (%d) failed\n", + rle->start, rle->count, rle->type); + } + return (0); +} + +/* Find if we manage a given resource. */ +static struct resource_list_entry * +acpi_sysres_find(device_t dev, int type, u_long addr) +{ + struct resource_list *rl; + struct resource_list_entry *rle; + + ACPI_SERIAL_ASSERT(acpi); + + /* We only consider IO and memory resources for our pool. */ + rle = NULL; + if (type != SYS_RES_IOPORT && type != SYS_RES_MEMORY) + goto out; + + rl = BUS_GET_RESOURCE_LIST(device_get_parent(dev), dev); + SLIST_FOREACH(rle, rl, link) { + if (type == rle->type && addr >= rle->start && + addr < rle->start + rle->count) + break; + } + +out: + return (rle); +} + static struct resource * acpi_alloc_resource(device_t bus, device_t child, int type, int *rid, u_long start, u_long end, u_long count, u_int flags) @@ -774,7 +846,7 @@ } /* If we don't manage this address, pass the request up to the parent. */ - rle = acpi_sysres_find(type, start); + rle = acpi_sysres_find(bus, type, start); if (rle == NULL) { res = BUS_ALLOC_RESOURCE(device_get_parent(bus), child, type, rid, start, end, count, flags); @@ -844,7 +916,7 @@ * If we know about this address, deactivate it and release it to the * local pool. If we don't, pass this request up to the parent. */ - if (acpi_sysres_find(type, rman_get_start(r)) == NULL) { + if (acpi_sysres_find(bus, type, rman_get_start(r)) == NULL) { if (rman_get_flags(r) & RF_ACTIVE) { ret = bus_deactivate_resource(child, type, rid, r); if (ret != 0) @@ -1134,6 +1206,9 @@ } } + /* Pre-allocate resources for our rman from any sysresource devices. */ + acpi_sysres_alloc(bus); + /* Create any static children by calling device identify methods. */ ACPI_DEBUG_PRINT((ACPI_DB_OBJECTS, "device identify routines\n")); bus_generic_probe(bus); @@ -1757,7 +1832,7 @@ case ACPI_STATE_S2: case ACPI_STATE_S3: case ACPI_STATE_S4: - status = AcpiGetSleepTypeData((UINT8)state, &TypeA, &TypeB); + status = AcpiGetSleepTypeData(state, &TypeA, &TypeB); if (status == AE_NOT_FOUND) { device_printf(sc->acpi_dev, "Sleep state S%d not supported by BIOS\n", state); @@ -1807,7 +1882,7 @@ AcpiEnable(); } else { ACPI_DISABLE_IRQS(); - status = AcpiEnterSleepState((UINT8)state); + status = AcpiEnterSleepState(state); if (ACPI_FAILURE(status)) { device_printf(sc->acpi_dev, "AcpiEnterSleepState failed - %s\n", AcpiFormatException(status)); ==== //depot/projects/smpng/sys/dev/acpica/acpi_pci_link.c#18 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.25 2004/08/18 16:39:59 njl Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.26 2004/08/21 18:18:32 njl Exp $"); #include "opt_acpi.h" #include @@ -1018,7 +1018,7 @@ /* Walk through all PRT entries for this PCI bridge. */ ACPI_SERIAL_BEGIN(pci_link); TAILQ_FOREACH(entry, &acpi_prt_entries, links) { - if (entry->pcidev == dev || entry->pci_link == NULL) + if (entry->pcidev != dev || entry->pci_link == NULL) continue; link = entry->pci_link; ==== //depot/projects/smpng/sys/dev/acpica/acpi_resource.c#21 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_resource.c,v 1.30 2004/08/20 17:04:49 njl Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_resource.c,v 1.31 2004/08/23 16:28:42 njl Exp $"); #include "opt_acpi.h" #include @@ -504,51 +504,6 @@ void *ar_parent; }; -/* - * Add a resource to the device's resource list. We define our own function - * for this since bus_set_resource() doesn't handle duplicates of any kind. - * - * XXX This should be merged into resource_list_add() eventually. - */ -static int -acpi_reslist_add(device_t dev, int type, int rid, u_long start, u_long count) -{ - struct resource_list_entry *rle; - struct resource_list *rl; - u_long end; - - end = start + count - 1; - rl = BUS_GET_RESOURCE_LIST(device_get_parent(dev), dev); - - /* - * Loop through all current resources to see if the new one overlaps - * any existing ones. If so, the old one always takes precedence and - * the new one is adjusted (or rejected). We check for three cases: - * - * 1. Tail of new resource overlaps head of old resource: truncate the - * new resource so it is contiguous with the start of the old. - * 2. New resource wholly contained within the old resource: error. - * 3. Head of new resource overlaps tail of old resource: truncate the - * new resource so it is contiguous, following the old. - */ - SLIST_FOREACH(rle, rl, link) { - if (rle->type == type) { - if (start < rle->start && end >= rle->start) { - count = rle->start - start; - break; - } else if (start >= rle->start && start <= rle->end) { - if (end > rle->end) { - start = rle->end + 1; - count = end - start + 1; - break; - } else - return (EEXIST); - } - } - } - return (bus_set_resource(dev, type, rid, start, count)); -} - static void acpi_res_set_init(device_t dev, void *arg, void **context) { @@ -579,7 +534,7 @@ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Aug 25 00:39:03 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BC01716A4D7; Wed, 25 Aug 2004 00:39:02 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7FE8D16A4CF for ; Wed, 25 Aug 2004 00:39:02 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 73F2A43D2D for ; Wed, 25 Aug 2004 00:39:02 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7P0d2mH041590 for ; Wed, 25 Aug 2004 00:39:02 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7P0d2Te041587 for perforce@freebsd.org; Wed, 25 Aug 2004 00:39:02 GMT (envelope-from jhb@freebsd.org) Date: Wed, 25 Aug 2004 00:39:02 GMT Message-Id: <200408250039.i7P0d2Te041587@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Subject: PERFORCE change 60383 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 Aug 2004 00:39:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=60383 Change 60383 by jhb@jhb_slimer on 2004/08/25 00:38:37 Revert some junk. Affected files ... .. //depot/projects/smpng/sys/i386/include/cpufunc.h#30 edit .. //depot/projects/smpng/sys/kern/subr_witness.c#120 edit Differences ... ==== //depot/projects/smpng/sys/i386/include/cpufunc.h#30 (text+ko) ==== @@ -85,12 +85,9 @@ static __inline void do_cpuid(u_int ax, u_int *p) { - - p[0] = ax; - __asm __volatile( - "cpuid" - : "+a" (p[0]), "=b" (p[1]), "=c" (p[2]), "=d" (p[3]) - ); + __asm __volatile("cpuid" + : "=a" (p[0]), "=b" (p[1]), "=c" (p[2]), "=d" (p[3]) + : "0" (ax)); } static __inline void ==== //depot/projects/smpng/sys/kern/subr_witness.c#120 (text+ko) ==== @@ -533,9 +533,6 @@ witness_destroy(struct lock_object *lock) { struct witness *w; -#if 0 - const char *name = NULL; -#endif if (witness_cold) panic("lock (%s) %s destroyed while witness_cold", @@ -550,20 +547,13 @@ mtx_lock_spin(&w_mtx); MPASS(w->w_refcount > 0); w->w_refcount--; -#if 0 - if (w->w_refcount == 0) - name = w->w_name; -#endif + /* * Lock is already released if we have an allocation failure * and depart() fails. */ if (w->w_refcount != 0 || depart(w)) mtx_unlock_spin(&w_mtx); -#if 0 - if (name != NULL) - printf("dead witness: %s\n", w->w_name); -#endif } mtx_lock(&all_mtx); From owner-p4-projects@FreeBSD.ORG Wed Aug 25 00:40:04 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 60BEC16A4D0; Wed, 25 Aug 2004 00:40:04 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3C33916A4CE for ; Wed, 25 Aug 2004 00:40:04 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 31B7D43D48 for ; Wed, 25 Aug 2004 00:40:04 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7P0e4LN041616 for ; Wed, 25 Aug 2004 00:40:04 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7P0e3XE041613 for perforce@freebsd.org; Wed, 25 Aug 2004 00:40:03 GMT (envelope-from jhb@freebsd.org) Date: Wed, 25 Aug 2004 00:40:03 GMT Message-Id: <200408250040.i7P0e3XE041613@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Subject: PERFORCE change 60384 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 Aug 2004 00:40:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=60384 Change 60384 by jhb@jhb_slimer on 2004/08/25 00:39:33 Update. Affected files ... .. //depot/projects/smpng/sys/notes#19 edit Differences ... ==== //depot/projects/smpng/sys/notes#19 (text+ko) ==== @@ -19,10 +19,6 @@ more realistic since they call functions. However, these clobber updates need to be verified against the actual pc98 code. - Untested -- Fixup asm constraints for do_cpuid(). - - Untested -- Fixup asm constraints for i386/isa/bs/bsif.h - - Untested - Fixup td_ucred of thread doing execve() to re-sync with process ucred after single threading during an exec. - Untested @@ -49,7 +45,6 @@ buys is being able to swi_sched() from a fast handler, but that doesn't make sense because you can't actually enqueue a task onto its queue from a fast interrupt context -- Make ABI wrappers use kern_fcntl() and make them MP safe. - "Optimize" atomic_store_rel() on i386 (it actually seems to be slower, go figure) - Optimize spin locks on UP such that they don't do atomic operations From owner-p4-projects@FreeBSD.ORG Wed Aug 25 02:08:53 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C40B816A4D0; Wed, 25 Aug 2004 02:08:52 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 87F5E16A4CE for ; Wed, 25 Aug 2004 02:08:52 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5F65F43D5A for ; Wed, 25 Aug 2004 02:08:52 +0000 (GMT) (envelope-from wsalamon@computer.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7P28qZx044035 for ; Wed, 25 Aug 2004 02:08:52 GMT (envelope-from wsalamon@computer.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7P28qNW044032 for perforce@freebsd.org; Wed, 25 Aug 2004 02:08:52 GMT (envelope-from wsalamon@computer.org) Date: Wed, 25 Aug 2004 02:08:52 GMT Message-Id: <200408250208.i7P28qNW044032@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to wsalamon@computer.org using -f From: Wayne Salamon To: Perforce Change Reviews Subject: PERFORCE change 60388 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 Aug 2004 02:08:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=60388 Change 60388 by wsalamon@wsalamon_epi on 2004/08/25 02:08:13 Add the audit event associated with each system call to the system call table. Remove the audit event table in kern_bsm_klib.c. The makesyscalls.sh is modified to process syscalls.master for the audit event, but specifies a default event for many calls. Some of the changed files in this commit are auto-generated by the script. Affected files ... .. //depot/projects/trustedbsd/audit3/sys/bsm/audit_kevents.h#2 edit .. //depot/projects/trustedbsd/audit3/sys/kern/init_sysent.c#3 edit .. //depot/projects/trustedbsd/audit3/sys/kern/makesyscalls.sh#2 edit .. //depot/projects/trustedbsd/audit3/sys/kern/syscalls.c#3 edit .. //depot/projects/trustedbsd/audit3/sys/kern/syscalls.master#3 edit .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_klib.h#4 edit .. //depot/projects/trustedbsd/audit3/sys/security/audit/kern_audit.c#8 edit .. //depot/projects/trustedbsd/audit3/sys/security/audit/kern_bsm_klib.c#7 edit .. //depot/projects/trustedbsd/audit3/sys/sys/syscall.h#3 edit .. //depot/projects/trustedbsd/audit3/sys/sys/syscall.mk#3 edit .. //depot/projects/trustedbsd/audit3/sys/sys/sysent.h#2 edit .. //depot/projects/trustedbsd/audit3/sys/sys/sysproto.h#4 edit Differences ... ==== //depot/projects/trustedbsd/audit3/sys/bsm/audit_kevents.h#2 (text+ko) ==== @@ -27,7 +27,8 @@ /* * Values marked as AUE_NULL are not required to be audited as per CAPP * - * The second value within comments is the syscall number in Darwin + * The second value within comments is the syscall number in FreeBSD + * XXX: These values are not all correct at this time. * * Values in the third column are the values assigned by BSM for obsolete * or old system calls @@ -219,7 +220,8 @@ #define AUE_O_EXPORTFS AUE_NULL /*166*/ #define AUE_MOUNT 62 /*167*/ #define AUE_O_USTATE AUE_NULL /*168*/ -#define AUE_TABLE AUE_NULL /*170*/ /*ENOSYS*/ +#define AUE_SEMSYS AUE_NULL /*169*/ +#define AUE_MSGSYS AUE_NULL /*170*/ #define AUE_O_WAIT3 AUE_NULL /*171*/ #define AUE_O_RPAUSE AUE_NULL /*172*/ #define AUE_O_GETDENTS AUE_NULL /*174*/ @@ -248,6 +250,7 @@ #define AUE_MLOCK 332 /*203*/ #define AUE_MUNLOCK 333 /*204*/ #define AUE_UNDELETE 334 /*205*/ +#define AUE_POLL 316 /*209*/ #define AUE_MKCOMPLEX AUE_NULL /*216*/ /*XXX*/ #define AUE_STATV AUE_NULL /*217*/ /*EOPNOTSUPP*/ @@ -268,8 +271,7 @@ #define AUE_FSCTL AUE_NULL /*242*/ /* reserved */ #define AUE_MINHERIT 340 /*250*/ -#define AUE_SEMSYS AUE_NULL /*251*/ /* To Be Removed */ -#define AUE_MSGSYS AUE_NULL /*252*/ /* To Be Removed */ +#define AUE_RFORK 353 /*251*/ #define AUE_SHMSYS AUE_NULL /*253*/ #define AUE_SEMCTL 98 /*254*/ #define AUE_SEMCTL_GETALL 105 /*254*/ @@ -304,9 +306,9 @@ #define AUE_SEMWAIT AUE_NULL /*271*/ #define AUE_SEMTRYWAIT AUE_NULL /*272*/ #define AUE_SEMPOST AUE_NULL /*273*/ -#define AUE_SEMGETVALUE AUE_NULL /*274*/ /*ENOSYS*/ -#define AUE_SEMINIT AUE_NULL /*275*/ /*ENOSYS*/ -#define AUE_SEMDESTROY AUE_NULL /*276*/ /*ENOSYS*/ +#define AUE_LCHMOD 354 /*274*/ +#define AUE_LCHOWN 237 /*275*/ +#define AUE_LUTIMES 362 /*276*/ #define AUE_LOADSHFILE 347 /*296*/ #define AUE_RESETSHFILE 348 /*297*/ @@ -321,14 +323,11 @@ #define AUE_PTHREADKILL 350 /*328*/ #define AUE_PTHREADSIGMASK 351 /*329*/ #define AUE_SIGWAIT AUE_NULL /*330*/ /*XXX*/ -#define AUE_SWAPOFF 355 -#define AUE_INITPROCESS 356 -#define AUE_MAPFD 357 -#define AUE_TASKFORPID 358 -#define AUE_PIDFORTASK 359 #define AUE_SYSCTL_NONADMIN 360 +#define AUE_LCHFLAGS 358 /*391*/ +#define AUE_SWAPOFF 355 /*424*/ -// BSM events - Have to identify which ones are relevant to MacOSX +// BSM events - Have to identify which ones are relevant to FreeBSD #define AUE_ACLSET 251 #define AUE_AUDIT 211 #define AUE_AUDITON 138 @@ -372,7 +371,6 @@ #define AUE_GETPMSG 219 #define AUE_GETPORTAUDIT 149 #define AUE_INST_SYNC 264 -#define AUE_LCHOWN 237 #define AUE_LXSTAT 236 #define AUE_MEMCNTL 238 #define AUE_MODADDMAJ 246 ==== //depot/projects/trustedbsd/audit3/sys/kern/init_sysent.c#3 (text+ko) ==== @@ -8,6 +8,7 @@ #include "opt_compat.h" +#include #include #include #include @@ -28,114 +29,114 @@ /* The casts are bogus but will do for now. */ struct sysent sysent[] = { - { SYF_MPSAFE | 0, (sy_call_t *)nosys }, /* 0 = syscall */ - { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit }, /* 1 = exit */ - { SYF_MPSAFE | 0, (sy_call_t *)fork }, /* 2 = fork */ - { SYF_MPSAFE | AS(read_args), (sy_call_t *)read }, /* 3 = read */ - { SYF_MPSAFE | AS(write_args), (sy_call_t *)write }, /* 4 = write */ - { SYF_MPSAFE | AS(open_args), (sy_call_t *)open }, /* 5 = open */ - { SYF_MPSAFE | AS(close_args), (sy_call_t *)close }, /* 6 = close */ - { SYF_MPSAFE | AS(wait_args), (sy_call_t *)wait4 }, /* 7 = wait4 */ + { SYF_MPSAFE | 0, (sy_call_t *)nosys, AUE_NULL }, /* 0 = syscall */ + { SYF_MPSAFE | AS(sys_exit_args), (sy_call_t *)sys_exit, AUE_EXIT }, /* 1 = exit */ + { SYF_MPSAFE | 0, (sy_call_t *)fork, AUE_FORK }, /* 2 = fork */ + { SYF_MPSAFE | AS(read_args), (sy_call_t *)read, AUE_NULL }, /* 3 = read */ + { SYF_MPSAFE | AS(write_args), (sy_call_t *)write, AUE_NULL }, /* 4 = write */ + { SYF_MPSAFE | AS(open_args), (sy_call_t *)open, AUE_OPEN }, /* 5 = open */ + { SYF_MPSAFE | AS(close_args), (sy_call_t *)close, AUE_CLOSE }, /* 6 = close */ + { SYF_MPSAFE | AS(wait_args), (sy_call_t *)wait4, AUE_NULL }, /* 7 = wait4 */ { compat(SYF_MPSAFE | AS(ocreat_args),creat) }, /* 8 = old creat */ - { AS(link_args), (sy_call_t *)link }, /* 9 = link */ - { AS(unlink_args), (sy_call_t *)unlink }, /* 10 = unlink */ - { 0, (sy_call_t *)nosys }, /* 11 = obsolete execv */ - { AS(chdir_args), (sy_call_t *)chdir }, /* 12 = chdir */ - { AS(fchdir_args), (sy_call_t *)fchdir }, /* 13 = fchdir */ - { AS(mknod_args), (sy_call_t *)mknod }, /* 14 = mknod */ - { AS(chmod_args), (sy_call_t *)chmod }, /* 15 = chmod */ - { AS(chown_args), (sy_call_t *)chown }, /* 16 = chown */ - { SYF_MPSAFE | AS(obreak_args), (sy_call_t *)obreak }, /* 17 = break */ + { AS(link_args), (sy_call_t *)link, AUE_LINK }, /* 9 = link */ + { AS(unlink_args), (sy_call_t *)unlink, AUE_UNLINK }, /* 10 = unlink */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 11 = obsolete execv */ + { AS(chdir_args), (sy_call_t *)chdir, AUE_CHDIR }, /* 12 = chdir */ + { AS(fchdir_args), (sy_call_t *)fchdir, AUE_FCHDIR }, /* 13 = fchdir */ + { AS(mknod_args), (sy_call_t *)mknod, AUE_MKNOD }, /* 14 = mknod */ + { AS(chmod_args), (sy_call_t *)chmod, AUE_CHMOD }, /* 15 = chmod */ + { AS(chown_args), (sy_call_t *)chown, AUE_CHOWN }, /* 16 = chown */ + { SYF_MPSAFE | AS(obreak_args), (sy_call_t *)obreak, AUE_NULL }, /* 17 = break */ { compat4(AS(freebsd4_getfsstat_args),getfsstat) }, /* 18 = old getfsstat */ { compat(AS(olseek_args),lseek) }, /* 19 = old lseek */ - { SYF_MPSAFE | 0, (sy_call_t *)getpid }, /* 20 = getpid */ - { AS(mount_args), (sy_call_t *)mount }, /* 21 = mount */ - { AS(unmount_args), (sy_call_t *)unmount }, /* 22 = unmount */ - { SYF_MPSAFE | AS(setuid_args), (sy_call_t *)setuid }, /* 23 = setuid */ - { SYF_MPSAFE | 0, (sy_call_t *)getuid }, /* 24 = getuid */ - { SYF_MPSAFE | 0, (sy_call_t *)geteuid }, /* 25 = geteuid */ - { SYF_MPSAFE | AS(ptrace_args), (sy_call_t *)ptrace }, /* 26 = ptrace */ - { SYF_MPSAFE | AS(recvmsg_args), (sy_call_t *)recvmsg }, /* 27 = recvmsg */ - { SYF_MPSAFE | AS(sendmsg_args), (sy_call_t *)sendmsg }, /* 28 = sendmsg */ - { SYF_MPSAFE | AS(recvfrom_args), (sy_call_t *)recvfrom }, /* 29 = recvfrom */ - { SYF_MPSAFE | AS(accept_args), (sy_call_t *)accept }, /* 30 = accept */ - { SYF_MPSAFE | AS(getpeername_args), (sy_call_t *)getpeername }, /* 31 = getpeername */ - { SYF_MPSAFE | AS(getsockname_args), (sy_call_t *)getsockname }, /* 32 = getsockname */ - { AS(access_args), (sy_call_t *)access }, /* 33 = access */ - { AS(chflags_args), (sy_call_t *)chflags }, /* 34 = chflags */ - { AS(fchflags_args), (sy_call_t *)fchflags }, /* 35 = fchflags */ - { 0, (sy_call_t *)sync }, /* 36 = sync */ - { SYF_MPSAFE | AS(kill_args), (sy_call_t *)kill }, /* 37 = kill */ + { SYF_MPSAFE | 0, (sy_call_t *)getpid, AUE_GETPID }, /* 20 = getpid */ + { AS(mount_args), (sy_call_t *)mount, AUE_MOUNT }, /* 21 = mount */ + { AS(unmount_args), (sy_call_t *)unmount, AUE_UMOUNT }, /* 22 = unmount */ + { SYF_MPSAFE | AS(setuid_args), (sy_call_t *)setuid, AUE_SETUID }, /* 23 = setuid */ + { SYF_MPSAFE | 0, (sy_call_t *)getuid, AUE_NULL }, /* 24 = getuid */ + { SYF_MPSAFE | 0, (sy_call_t *)geteuid, AUE_NULL }, /* 25 = geteuid */ + { SYF_MPSAFE | AS(ptrace_args), (sy_call_t *)ptrace, AUE_PTRACE }, /* 26 = ptrace */ + { SYF_MPSAFE | AS(recvmsg_args), (sy_call_t *)recvmsg, AUE_RECVMSG }, /* 27 = recvmsg */ + { SYF_MPSAFE | AS(sendmsg_args), (sy_call_t *)sendmsg, AUE_SENDMSG }, /* 28 = sendmsg */ + { SYF_MPSAFE | AS(recvfrom_args), (sy_call_t *)recvfrom, AUE_RECVFROM }, /* 29 = recvfrom */ + { SYF_MPSAFE | AS(accept_args), (sy_call_t *)accept, AUE_ACCEPT }, /* 30 = accept */ + { SYF_MPSAFE | AS(getpeername_args), (sy_call_t *)getpeername, AUE_GETPEERNAME }, /* 31 = getpeername */ + { SYF_MPSAFE | AS(getsockname_args), (sy_call_t *)getsockname, AUE_GETSOCKNAME }, /* 32 = getsockname */ + { AS(access_args), (sy_call_t *)access, AUE_ACCESS }, /* 33 = access */ + { AS(chflags_args), (sy_call_t *)chflags, AUE_CHFLAGS }, /* 34 = chflags */ + { AS(fchflags_args), (sy_call_t *)fchflags, AUE_FCHFLAGS }, /* 35 = fchflags */ + { 0, (sy_call_t *)sync, AUE_SYNC }, /* 36 = sync */ + { SYF_MPSAFE | AS(kill_args), (sy_call_t *)kill, AUE_KILL }, /* 37 = kill */ { compat(AS(ostat_args),stat) }, /* 38 = old stat */ - { SYF_MPSAFE | 0, (sy_call_t *)getppid }, /* 39 = getppid */ + { SYF_MPSAFE | 0, (sy_call_t *)getppid, AUE_GETPPID }, /* 39 = getppid */ { compat(AS(olstat_args),lstat) }, /* 40 = old lstat */ - { SYF_MPSAFE | AS(dup_args), (sy_call_t *)dup }, /* 41 = dup */ - { SYF_MPSAFE | 0, (sy_call_t *)pipe }, /* 42 = pipe */ - { SYF_MPSAFE | 0, (sy_call_t *)getegid }, /* 43 = getegid */ - { SYF_MPSAFE | AS(profil_args), (sy_call_t *)profil }, /* 44 = profil */ - { SYF_MPSAFE | AS(ktrace_args), (sy_call_t *)ktrace }, /* 45 = ktrace */ + { SYF_MPSAFE | AS(dup_args), (sy_call_t *)dup, AUE_DUP }, /* 41 = dup */ + { SYF_MPSAFE | 0, (sy_call_t *)pipe, AUE_PIPE }, /* 42 = pipe */ + { SYF_MPSAFE | 0, (sy_call_t *)getegid, AUE_GETEGID }, /* 43 = getegid */ + { SYF_MPSAFE | AS(profil_args), (sy_call_t *)profil, AUE_PROFILE }, /* 44 = profil */ + { SYF_MPSAFE | AS(ktrace_args), (sy_call_t *)ktrace, AUE_KTRACE }, /* 45 = ktrace */ { compat(SYF_MPSAFE | AS(osigaction_args),sigaction) }, /* 46 = old sigaction */ - { SYF_MPSAFE | 0, (sy_call_t *)getgid }, /* 47 = getgid */ + { SYF_MPSAFE | 0, (sy_call_t *)getgid, AUE_GETGID }, /* 47 = getgid */ { compat(SYF_MPSAFE | AS(osigprocmask_args),sigprocmask) }, /* 48 = old sigprocmask */ - { SYF_MPSAFE | AS(getlogin_args), (sy_call_t *)getlogin }, /* 49 = getlogin */ - { SYF_MPSAFE | AS(setlogin_args), (sy_call_t *)setlogin }, /* 50 = setlogin */ - { SYF_MPSAFE | AS(acct_args), (sy_call_t *)acct }, /* 51 = acct */ + { SYF_MPSAFE | AS(getlogin_args), (sy_call_t *)getlogin, AUE_GETLOGIN }, /* 49 = getlogin */ + { SYF_MPSAFE | AS(setlogin_args), (sy_call_t *)setlogin, AUE_SETLOGIN }, /* 50 = setlogin */ + { SYF_MPSAFE | AS(acct_args), (sy_call_t *)acct, AUE_ACCT }, /* 51 = acct */ { compat(SYF_MPSAFE | 0,sigpending) }, /* 52 = old sigpending */ - { SYF_MPSAFE | AS(sigaltstack_args), (sy_call_t *)sigaltstack }, /* 53 = sigaltstack */ - { SYF_MPSAFE | AS(ioctl_args), (sy_call_t *)ioctl }, /* 54 = ioctl */ - { SYF_MPSAFE | AS(reboot_args), (sy_call_t *)reboot }, /* 55 = reboot */ - { AS(revoke_args), (sy_call_t *)revoke }, /* 56 = revoke */ - { AS(symlink_args), (sy_call_t *)symlink }, /* 57 = symlink */ - { AS(readlink_args), (sy_call_t *)readlink }, /* 58 = readlink */ - { SYF_MPSAFE | AS(execve_args), (sy_call_t *)execve }, /* 59 = execve */ - { SYF_MPSAFE | AS(umask_args), (sy_call_t *)umask }, /* 60 = umask */ - { AS(chroot_args), (sy_call_t *)chroot }, /* 61 = chroot */ + { SYF_MPSAFE | AS(sigaltstack_args), (sy_call_t *)sigaltstack, AUE_SIGPENDING }, /* 53 = sigaltstack */ + { SYF_MPSAFE | AS(ioctl_args), (sy_call_t *)ioctl, AUE_IOCTL }, /* 54 = ioctl */ + { SYF_MPSAFE | AS(reboot_args), (sy_call_t *)reboot, AUE_REBOOT }, /* 55 = reboot */ + { AS(revoke_args), (sy_call_t *)revoke, AUE_REVOKE }, /* 56 = revoke */ + { AS(symlink_args), (sy_call_t *)symlink, AUE_SYMLINK }, /* 57 = symlink */ + { AS(readlink_args), (sy_call_t *)readlink, AUE_READLINK }, /* 58 = readlink */ + { SYF_MPSAFE | AS(execve_args), (sy_call_t *)execve, AUE_EXECVE }, /* 59 = execve */ + { SYF_MPSAFE | AS(umask_args), (sy_call_t *)umask, AUE_UMASK }, /* 60 = umask */ + { AS(chroot_args), (sy_call_t *)chroot, AUE_CHROOT }, /* 61 = chroot */ { compat(SYF_MPSAFE | AS(ofstat_args),fstat) }, /* 62 = old fstat */ { compat(SYF_MPSAFE | AS(getkerninfo_args),getkerninfo) }, /* 63 = old getkerninfo */ { compat(SYF_MPSAFE | 0,getpagesize) }, /* 64 = old getpagesize */ - { SYF_MPSAFE | AS(msync_args), (sy_call_t *)msync }, /* 65 = msync */ - { SYF_MPSAFE | 0, (sy_call_t *)vfork }, /* 66 = vfork */ - { 0, (sy_call_t *)nosys }, /* 67 = obsolete vread */ - { 0, (sy_call_t *)nosys }, /* 68 = obsolete vwrite */ - { SYF_MPSAFE | AS(sbrk_args), (sy_call_t *)sbrk }, /* 69 = sbrk */ - { SYF_MPSAFE | AS(sstk_args), (sy_call_t *)sstk }, /* 70 = sstk */ + { SYF_MPSAFE | AS(msync_args), (sy_call_t *)msync, AUE_MSYNC }, /* 65 = msync */ + { SYF_MPSAFE | 0, (sy_call_t *)vfork, AUE_VFORK }, /* 66 = vfork */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 67 = obsolete vread */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 68 = obsolete vwrite */ + { SYF_MPSAFE | AS(sbrk_args), (sy_call_t *)sbrk, AUE_SBRK }, /* 69 = sbrk */ + { SYF_MPSAFE | AS(sstk_args), (sy_call_t *)sstk, AUE_SSTK }, /* 70 = sstk */ { compat(SYF_MPSAFE | AS(ommap_args),mmap) }, /* 71 = old mmap */ - { SYF_MPSAFE | AS(ovadvise_args), (sy_call_t *)ovadvise }, /* 72 = vadvise */ - { SYF_MPSAFE | AS(munmap_args), (sy_call_t *)munmap }, /* 73 = munmap */ - { SYF_MPSAFE | AS(mprotect_args), (sy_call_t *)mprotect }, /* 74 = mprotect */ - { SYF_MPSAFE | AS(madvise_args), (sy_call_t *)madvise }, /* 75 = madvise */ - { 0, (sy_call_t *)nosys }, /* 76 = obsolete vhangup */ - { 0, (sy_call_t *)nosys }, /* 77 = obsolete vlimit */ - { SYF_MPSAFE | AS(mincore_args), (sy_call_t *)mincore }, /* 78 = mincore */ - { SYF_MPSAFE | AS(getgroups_args), (sy_call_t *)getgroups }, /* 79 = getgroups */ - { SYF_MPSAFE | AS(setgroups_args), (sy_call_t *)setgroups }, /* 80 = setgroups */ - { SYF_MPSAFE | 0, (sy_call_t *)getpgrp }, /* 81 = getpgrp */ - { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid }, /* 82 = setpgid */ - { SYF_MPSAFE | AS(setitimer_args), (sy_call_t *)setitimer }, /* 83 = setitimer */ + { SYF_MPSAFE | AS(ovadvise_args), (sy_call_t *)ovadvise, AUE_O_VADVISE }, /* 72 = vadvise */ + { SYF_MPSAFE | AS(munmap_args), (sy_call_t *)munmap, AUE_MUNMAP }, /* 73 = munmap */ + { SYF_MPSAFE | AS(mprotect_args), (sy_call_t *)mprotect, AUE_MPROTECT }, /* 74 = mprotect */ + { SYF_MPSAFE | AS(madvise_args), (sy_call_t *)madvise, AUE_MADVISE }, /* 75 = madvise */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 76 = obsolete vhangup */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 77 = obsolete vlimit */ + { SYF_MPSAFE | AS(mincore_args), (sy_call_t *)mincore, AUE_MINCORE }, /* 78 = mincore */ + { SYF_MPSAFE | AS(getgroups_args), (sy_call_t *)getgroups, AUE_GETGROUPS }, /* 79 = getgroups */ + { SYF_MPSAFE | AS(setgroups_args), (sy_call_t *)setgroups, AUE_SETGROUPS }, /* 80 = setgroups */ + { SYF_MPSAFE | 0, (sy_call_t *)getpgrp, AUE_GETPGRP }, /* 81 = getpgrp */ + { SYF_MPSAFE | AS(setpgid_args), (sy_call_t *)setpgid, AUE_SETPGRP }, /* 82 = setpgid */ + { SYF_MPSAFE | AS(setitimer_args), (sy_call_t *)setitimer, AUE_SETITIMER }, /* 83 = setitimer */ { compat(SYF_MPSAFE | 0,wait) }, /* 84 = old wait */ - { SYF_MPSAFE | AS(swapon_args), (sy_call_t *)swapon }, /* 85 = swapon */ - { SYF_MPSAFE | AS(getitimer_args), (sy_call_t *)getitimer }, /* 86 = getitimer */ + { SYF_MPSAFE | AS(swapon_args), (sy_call_t *)swapon, AUE_SWAPON }, /* 85 = swapon */ + { SYF_MPSAFE | AS(getitimer_args), (sy_call_t *)getitimer, AUE_GETITIMER }, /* 86 = getitimer */ { compat(SYF_MPSAFE | AS(gethostname_args),gethostname) }, /* 87 = old gethostname */ { compat(SYF_MPSAFE | AS(sethostname_args),sethostname) }, /* 88 = old sethostname */ - { SYF_MPSAFE | 0, (sy_call_t *)getdtablesize }, /* 89 = getdtablesize */ - { SYF_MPSAFE | AS(dup2_args), (sy_call_t *)dup2 }, /* 90 = dup2 */ - { 0, (sy_call_t *)nosys }, /* 91 = getdopt */ - { SYF_MPSAFE | AS(fcntl_args), (sy_call_t *)fcntl }, /* 92 = fcntl */ - { SYF_MPSAFE | AS(select_args), (sy_call_t *)select }, /* 93 = select */ - { 0, (sy_call_t *)nosys }, /* 94 = setdopt */ - { AS(fsync_args), (sy_call_t *)fsync }, /* 95 = fsync */ - { SYF_MPSAFE | AS(setpriority_args), (sy_call_t *)setpriority }, /* 96 = setpriority */ - { SYF_MPSAFE | AS(socket_args), (sy_call_t *)socket }, /* 97 = socket */ - { SYF_MPSAFE | AS(connect_args), (sy_call_t *)connect }, /* 98 = connect */ + { SYF_MPSAFE | 0, (sy_call_t *)getdtablesize, AUE_GETDTABLESIZE }, /* 89 = getdtablesize */ + { SYF_MPSAFE | AS(dup2_args), (sy_call_t *)dup2, AUE_DUP2 }, /* 90 = dup2 */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 91 = getdopt */ + { SYF_MPSAFE | AS(fcntl_args), (sy_call_t *)fcntl, AUE_FCNTL }, /* 92 = fcntl */ + { SYF_MPSAFE | AS(select_args), (sy_call_t *)select, AUE_SELECT }, /* 93 = select */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 94 = setdopt */ + { AS(fsync_args), (sy_call_t *)fsync, AUE_FSYNC }, /* 95 = fsync */ + { SYF_MPSAFE | AS(setpriority_args), (sy_call_t *)setpriority, AUE_SETPRIORITY }, /* 96 = setpriority */ + { SYF_MPSAFE | AS(socket_args), (sy_call_t *)socket, AUE_SOCKET }, /* 97 = socket */ + { SYF_MPSAFE | AS(connect_args), (sy_call_t *)connect, AUE_CONNECT }, /* 98 = connect */ { compat(SYF_MPSAFE | AS(accept_args),accept) }, /* 99 = old accept */ - { SYF_MPSAFE | AS(getpriority_args), (sy_call_t *)getpriority }, /* 100 = getpriority */ + { SYF_MPSAFE | AS(getpriority_args), (sy_call_t *)getpriority, AUE_GETPRIORITY }, /* 100 = getpriority */ { compat(SYF_MPSAFE | AS(osend_args),send) }, /* 101 = old send */ { compat(SYF_MPSAFE | AS(orecv_args),recv) }, /* 102 = old recv */ { compat(SYF_MPSAFE | AS(osigreturn_args),sigreturn) }, /* 103 = old sigreturn */ - { SYF_MPSAFE | AS(bind_args), (sy_call_t *)bind }, /* 104 = bind */ - { SYF_MPSAFE | AS(setsockopt_args), (sy_call_t *)setsockopt }, /* 105 = setsockopt */ - { SYF_MPSAFE | AS(listen_args), (sy_call_t *)listen }, /* 106 = listen */ - { 0, (sy_call_t *)nosys }, /* 107 = obsolete vtimes */ + { SYF_MPSAFE | AS(bind_args), (sy_call_t *)bind, AUE_BIND }, /* 104 = bind */ + { SYF_MPSAFE | AS(setsockopt_args), (sy_call_t *)setsockopt, AUE_SETSOCKOPT }, /* 105 = setsockopt */ + { SYF_MPSAFE | AS(listen_args), (sy_call_t *)listen, AUE_LISTEN }, /* 106 = listen */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 107 = obsolete vtimes */ { compat(SYF_MPSAFE | AS(osigvec_args),sigvec) }, /* 108 = old sigvec */ { compat(SYF_MPSAFE | AS(osigblock_args),sigblock) }, /* 109 = old sigblock */ { compat(SYF_MPSAFE | AS(osigsetmask_args),sigsetmask) }, /* 110 = old sigsetmask */ @@ -143,342 +144,342 @@ { compat(SYF_MPSAFE | AS(osigstack_args),sigstack) }, /* 112 = old sigstack */ { compat(SYF_MPSAFE | AS(orecvmsg_args),recvmsg) }, /* 113 = old recvmsg */ { compat(SYF_MPSAFE | AS(osendmsg_args),sendmsg) }, /* 114 = old sendmsg */ - { 0, (sy_call_t *)nosys }, /* 115 = obsolete vtrace */ - { SYF_MPSAFE | AS(gettimeofday_args), (sy_call_t *)gettimeofday }, /* 116 = gettimeofday */ - { SYF_MPSAFE | AS(getrusage_args), (sy_call_t *)getrusage }, /* 117 = getrusage */ - { SYF_MPSAFE | AS(getsockopt_args), (sy_call_t *)getsockopt }, /* 118 = getsockopt */ - { 0, (sy_call_t *)nosys }, /* 119 = resuba */ - { SYF_MPSAFE | AS(readv_args), (sy_call_t *)readv }, /* 120 = readv */ - { SYF_MPSAFE | AS(writev_args), (sy_call_t *)writev }, /* 121 = writev */ - { SYF_MPSAFE | AS(settimeofday_args), (sy_call_t *)settimeofday }, /* 122 = settimeofday */ - { AS(fchown_args), (sy_call_t *)fchown }, /* 123 = fchown */ - { AS(fchmod_args), (sy_call_t *)fchmod }, /* 124 = fchmod */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 115 = obsolete vtrace */ + { SYF_MPSAFE | AS(gettimeofday_args), (sy_call_t *)gettimeofday, AUE_GETTIMEOFDAY }, /* 116 = gettimeofday */ + { SYF_MPSAFE | AS(getrusage_args), (sy_call_t *)getrusage, AUE_GETRUSAGE }, /* 117 = getrusage */ + { SYF_MPSAFE | AS(getsockopt_args), (sy_call_t *)getsockopt, AUE_GTSOCKOPT }, /* 118 = getsockopt */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 119 = resuba */ + { SYF_MPSAFE | AS(readv_args), (sy_call_t *)readv, AUE_READV }, /* 120 = readv */ + { SYF_MPSAFE | AS(writev_args), (sy_call_t *)writev, AUE_WRITEV }, /* 121 = writev */ + { SYF_MPSAFE | AS(settimeofday_args), (sy_call_t *)settimeofday, AUE_SETTIMEOFDAY }, /* 122 = settimeofday */ + { AS(fchown_args), (sy_call_t *)fchown, AUE_FCHOWN }, /* 123 = fchown */ + { AS(fchmod_args), (sy_call_t *)fchmod, AUE_FCHMOD }, /* 124 = fchmod */ { compat(SYF_MPSAFE | AS(recvfrom_args),recvfrom) }, /* 125 = old recvfrom */ - { SYF_MPSAFE | AS(setreuid_args), (sy_call_t *)setreuid }, /* 126 = setreuid */ - { SYF_MPSAFE | AS(setregid_args), (sy_call_t *)setregid }, /* 127 = setregid */ - { AS(rename_args), (sy_call_t *)rename }, /* 128 = rename */ + { SYF_MPSAFE | AS(setreuid_args), (sy_call_t *)setreuid, AUE_O_SETREUID }, /* 126 = setreuid */ + { SYF_MPSAFE | AS(setregid_args), (sy_call_t *)setregid, AUE_O_SETREGID }, /* 127 = setregid */ + { AS(rename_args), (sy_call_t *)rename, AUE_RENAME }, /* 128 = rename */ { compat(AS(otruncate_args),truncate) }, /* 129 = old truncate */ { compat(AS(oftruncate_args),ftruncate) }, /* 130 = old ftruncate */ - { SYF_MPSAFE | AS(flock_args), (sy_call_t *)flock }, /* 131 = flock */ - { AS(mkfifo_args), (sy_call_t *)mkfifo }, /* 132 = mkfifo */ - { SYF_MPSAFE | AS(sendto_args), (sy_call_t *)sendto }, /* 133 = sendto */ - { SYF_MPSAFE | AS(shutdown_args), (sy_call_t *)shutdown }, /* 134 = shutdown */ - { SYF_MPSAFE | AS(socketpair_args), (sy_call_t *)socketpair }, /* 135 = socketpair */ - { AS(mkdir_args), (sy_call_t *)mkdir }, /* 136 = mkdir */ - { AS(rmdir_args), (sy_call_t *)rmdir }, /* 137 = rmdir */ - { AS(utimes_args), (sy_call_t *)utimes }, /* 138 = utimes */ - { 0, (sy_call_t *)nosys }, /* 139 = obsolete 4.2 sigreturn */ - { SYF_MPSAFE | AS(adjtime_args), (sy_call_t *)adjtime }, /* 140 = adjtime */ + { SYF_MPSAFE | AS(flock_args), (sy_call_t *)flock, AUE_FLOCK }, /* 131 = flock */ + { AS(mkfifo_args), (sy_call_t *)mkfifo, AUE_MKFIFO }, /* 132 = mkfifo */ + { SYF_MPSAFE | AS(sendto_args), (sy_call_t *)sendto, AUE_SENDTO }, /* 133 = sendto */ + { SYF_MPSAFE | AS(shutdown_args), (sy_call_t *)shutdown, AUE_SHUTDOWN }, /* 134 = shutdown */ + { SYF_MPSAFE | AS(socketpair_args), (sy_call_t *)socketpair, AUE_SOCKETPAIR }, /* 135 = socketpair */ + { AS(mkdir_args), (sy_call_t *)mkdir, AUE_MKDIR }, /* 136 = mkdir */ + { AS(rmdir_args), (sy_call_t *)rmdir, AUE_RMDIR }, /* 137 = rmdir */ + { AS(utimes_args), (sy_call_t *)utimes, AUE_UTIMES }, /* 138 = utimes */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 139 = obsolete 4.2 sigreturn */ + { SYF_MPSAFE | AS(adjtime_args), (sy_call_t *)adjtime, AUE_ADJTIME }, /* 140 = adjtime */ { compat(SYF_MPSAFE | AS(ogetpeername_args),getpeername) }, /* 141 = old getpeername */ { compat(SYF_MPSAFE | 0,gethostid) }, /* 142 = old gethostid */ { compat(SYF_MPSAFE | AS(osethostid_args),sethostid) }, /* 143 = old sethostid */ { compat(SYF_MPSAFE | AS(ogetrlimit_args),getrlimit) }, /* 144 = old getrlimit */ { compat(SYF_MPSAFE | AS(osetrlimit_args),setrlimit) }, /* 145 = old setrlimit */ { compat(SYF_MPSAFE | AS(okillpg_args),killpg) }, /* 146 = old killpg */ - { SYF_MPSAFE | 0, (sy_call_t *)setsid }, /* 147 = setsid */ - { AS(quotactl_args), (sy_call_t *)quotactl }, /* 148 = quotactl */ + { SYF_MPSAFE | 0, (sy_call_t *)setsid, AUE_SETSID }, /* 147 = setsid */ + { AS(quotactl_args), (sy_call_t *)quotactl, AUE_QUOTACTL }, /* 148 = quotactl */ { compat(SYF_MPSAFE | 0,quota) }, /* 149 = old quota */ { compat(SYF_MPSAFE | AS(getsockname_args),getsockname) }, /* 150 = old getsockname */ - { 0, (sy_call_t *)nosys }, /* 151 = sem_lock */ - { 0, (sy_call_t *)nosys }, /* 152 = sem_wakeup */ - { 0, (sy_call_t *)nosys }, /* 153 = asyncdaemon */ - { 0, (sy_call_t *)nosys }, /* 154 = nosys */ - { SYF_MPSAFE | AS(nfssvc_args), (sy_call_t *)nosys }, /* 155 = nfssvc */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 151 = sem_lock */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 152 = sem_wakeup */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 153 = asyncdaemon */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 154 = nosys */ + { SYF_MPSAFE | AS(nfssvc_args), (sy_call_t *)nosys, AUE_NULL }, /* 155 = nfssvc */ { compat(AS(ogetdirentries_args),getdirentries) }, /* 156 = old getdirentries */ { compat4(AS(freebsd4_statfs_args),statfs) }, /* 157 = old statfs */ { compat4(AS(freebsd4_fstatfs_args),fstatfs) }, /* 158 = old fstatfs */ - { 0, (sy_call_t *)nosys }, /* 159 = nosys */ - { AS(lgetfh_args), (sy_call_t *)lgetfh }, /* 160 = lgetfh */ - { AS(getfh_args), (sy_call_t *)getfh }, /* 161 = getfh */ - { SYF_MPSAFE | AS(getdomainname_args), (sy_call_t *)getdomainname }, /* 162 = getdomainname */ - { SYF_MPSAFE | AS(setdomainname_args), (sy_call_t *)setdomainname }, /* 163 = setdomainname */ - { SYF_MPSAFE | AS(uname_args), (sy_call_t *)uname }, /* 164 = uname */ - { SYF_MPSAFE | AS(sysarch_args), (sy_call_t *)sysarch }, /* 165 = sysarch */ - { SYF_MPSAFE | AS(rtprio_args), (sy_call_t *)rtprio }, /* 166 = rtprio */ - { 0, (sy_call_t *)nosys }, /* 167 = nosys */ - { 0, (sy_call_t *)nosys }, /* 168 = nosys */ - { SYF_MPSAFE | AS(semsys_args), (sy_call_t *)lkmressys }, /* 169 = semsys */ - { SYF_MPSAFE | AS(msgsys_args), (sy_call_t *)lkmressys }, /* 170 = msgsys */ - { SYF_MPSAFE | AS(shmsys_args), (sy_call_t *)lkmressys }, /* 171 = shmsys */ - { 0, (sy_call_t *)nosys }, /* 172 = nosys */ - { SYF_MPSAFE | AS(pread_args), (sy_call_t *)pread }, /* 173 = pread */ - { SYF_MPSAFE | AS(pwrite_args), (sy_call_t *)pwrite }, /* 174 = pwrite */ - { 0, (sy_call_t *)nosys }, /* 175 = nosys */ - { SYF_MPSAFE | AS(ntp_adjtime_args), (sy_call_t *)ntp_adjtime }, /* 176 = ntp_adjtime */ - { 0, (sy_call_t *)nosys }, /* 177 = sfork */ - { 0, (sy_call_t *)nosys }, /* 178 = getdescriptor */ - { 0, (sy_call_t *)nosys }, /* 179 = setdescriptor */ - { 0, (sy_call_t *)nosys }, /* 180 = nosys */ - { SYF_MPSAFE | AS(setgid_args), (sy_call_t *)setgid }, /* 181 = setgid */ - { SYF_MPSAFE | AS(setegid_args), (sy_call_t *)setegid }, /* 182 = setegid */ - { SYF_MPSAFE | AS(seteuid_args), (sy_call_t *)seteuid }, /* 183 = seteuid */ - { 0, (sy_call_t *)nosys }, /* 184 = lfs_bmapv */ - { 0, (sy_call_t *)nosys }, /* 185 = lfs_markv */ - { 0, (sy_call_t *)nosys }, /* 186 = lfs_segclean */ - { 0, (sy_call_t *)nosys }, /* 187 = lfs_segwait */ - { AS(stat_args), (sy_call_t *)stat }, /* 188 = stat */ - { SYF_MPSAFE | AS(fstat_args), (sy_call_t *)fstat }, /* 189 = fstat */ - { AS(lstat_args), (sy_call_t *)lstat }, /* 190 = lstat */ - { AS(pathconf_args), (sy_call_t *)pathconf }, /* 191 = pathconf */ - { SYF_MPSAFE | AS(fpathconf_args), (sy_call_t *)fpathconf }, /* 192 = fpathconf */ - { 0, (sy_call_t *)nosys }, /* 193 = nosys */ - { SYF_MPSAFE | AS(__getrlimit_args), (sy_call_t *)getrlimit }, /* 194 = getrlimit */ - { SYF_MPSAFE | AS(__setrlimit_args), (sy_call_t *)setrlimit }, /* 195 = setrlimit */ - { AS(getdirentries_args), (sy_call_t *)getdirentries }, /* 196 = getdirentries */ - { SYF_MPSAFE | AS(mmap_args), (sy_call_t *)mmap }, /* 197 = mmap */ - { 0, (sy_call_t *)nosys }, /* 198 = __syscall */ - { AS(lseek_args), (sy_call_t *)lseek }, /* 199 = lseek */ - { AS(truncate_args), (sy_call_t *)truncate }, /* 200 = truncate */ - { AS(ftruncate_args), (sy_call_t *)ftruncate }, /* 201 = ftruncate */ - { SYF_MPSAFE | AS(sysctl_args), (sy_call_t *)__sysctl }, /* 202 = __sysctl */ - { SYF_MPSAFE | AS(mlock_args), (sy_call_t *)mlock }, /* 203 = mlock */ - { SYF_MPSAFE | AS(munlock_args), (sy_call_t *)munlock }, /* 204 = munlock */ - { AS(undelete_args), (sy_call_t *)undelete }, /* 205 = undelete */ - { AS(futimes_args), (sy_call_t *)futimes }, /* 206 = futimes */ - { SYF_MPSAFE | AS(getpgid_args), (sy_call_t *)getpgid }, /* 207 = getpgid */ - { 0, (sy_call_t *)nosys }, /* 208 = newreboot */ - { SYF_MPSAFE | AS(poll_args), (sy_call_t *)poll }, /* 209 = poll */ - { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 210 = lkmnosys */ - { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 211 = lkmnosys */ - { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 212 = lkmnosys */ - { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 213 = lkmnosys */ - { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 214 = lkmnosys */ - { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 215 = lkmnosys */ - { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 216 = lkmnosys */ - { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 217 = lkmnosys */ - { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 218 = lkmnosys */ - { AS(nosys_args), (sy_call_t *)lkmnosys }, /* 219 = lkmnosys */ - { SYF_MPSAFE | AS(__semctl_args), (sy_call_t *)lkmressys }, /* 220 = __semctl */ - { SYF_MPSAFE | AS(semget_args), (sy_call_t *)lkmressys }, /* 221 = semget */ - { SYF_MPSAFE | AS(semop_args), (sy_call_t *)lkmressys }, /* 222 = semop */ - { 0, (sy_call_t *)nosys }, /* 223 = semconfig */ - { SYF_MPSAFE | AS(msgctl_args), (sy_call_t *)lkmressys }, /* 224 = msgctl */ - { SYF_MPSAFE | AS(msgget_args), (sy_call_t *)lkmressys }, /* 225 = msgget */ - { SYF_MPSAFE | AS(msgsnd_args), (sy_call_t *)lkmressys }, /* 226 = msgsnd */ - { SYF_MPSAFE | AS(msgrcv_args), (sy_call_t *)lkmressys }, /* 227 = msgrcv */ - { SYF_MPSAFE | AS(shmat_args), (sy_call_t *)lkmressys }, /* 228 = shmat */ - { SYF_MPSAFE | AS(shmctl_args), (sy_call_t *)lkmressys }, /* 229 = shmctl */ - { SYF_MPSAFE | AS(shmdt_args), (sy_call_t *)lkmressys }, /* 230 = shmdt */ - { SYF_MPSAFE | AS(shmget_args), (sy_call_t *)lkmressys }, /* 231 = shmget */ - { SYF_MPSAFE | AS(clock_gettime_args), (sy_call_t *)clock_gettime }, /* 232 = clock_gettime */ - { SYF_MPSAFE | AS(clock_settime_args), (sy_call_t *)clock_settime }, /* 233 = clock_settime */ - { SYF_MPSAFE | AS(clock_getres_args), (sy_call_t *)clock_getres }, /* 234 = clock_getres */ - { 0, (sy_call_t *)nosys }, /* 235 = timer_create */ - { 0, (sy_call_t *)nosys }, /* 236 = timer_delete */ - { 0, (sy_call_t *)nosys }, /* 237 = timer_settime */ - { 0, (sy_call_t *)nosys }, /* 238 = timer_gettime */ - { 0, (sy_call_t *)nosys }, /* 239 = timer_getoverrun */ - { SYF_MPSAFE | AS(nanosleep_args), (sy_call_t *)nanosleep }, /* 240 = nanosleep */ - { 0, (sy_call_t *)nosys }, /* 241 = nosys */ - { 0, (sy_call_t *)nosys }, /* 242 = nosys */ - { 0, (sy_call_t *)nosys }, /* 243 = nosys */ - { 0, (sy_call_t *)nosys }, /* 244 = nosys */ - { 0, (sy_call_t *)nosys }, /* 245 = nosys */ - { 0, (sy_call_t *)nosys }, /* 246 = nosys */ - { 0, (sy_call_t *)nosys }, /* 247 = nosys */ - { 0, (sy_call_t *)nosys }, /* 248 = nosys */ - { 0, (sy_call_t *)nosys }, /* 249 = nosys */ - { SYF_MPSAFE | AS(minherit_args), (sy_call_t *)minherit }, /* 250 = minherit */ - { SYF_MPSAFE | AS(rfork_args), (sy_call_t *)rfork }, /* 251 = rfork */ - { SYF_MPSAFE | AS(openbsd_poll_args), (sy_call_t *)openbsd_poll }, /* 252 = openbsd_poll */ - { SYF_MPSAFE | 0, (sy_call_t *)issetugid }, /* 253 = issetugid */ - { AS(lchown_args), (sy_call_t *)lchown }, /* 254 = lchown */ - { 0, (sy_call_t *)nosys }, /* 255 = nosys */ - { 0, (sy_call_t *)nosys }, /* 256 = nosys */ - { 0, (sy_call_t *)nosys }, /* 257 = nosys */ - { 0, (sy_call_t *)nosys }, /* 258 = nosys */ - { 0, (sy_call_t *)nosys }, /* 259 = nosys */ - { 0, (sy_call_t *)nosys }, /* 260 = nosys */ - { 0, (sy_call_t *)nosys }, /* 261 = nosys */ - { 0, (sy_call_t *)nosys }, /* 262 = nosys */ - { 0, (sy_call_t *)nosys }, /* 263 = nosys */ - { 0, (sy_call_t *)nosys }, /* 264 = nosys */ - { 0, (sy_call_t *)nosys }, /* 265 = nosys */ - { 0, (sy_call_t *)nosys }, /* 266 = nosys */ - { 0, (sy_call_t *)nosys }, /* 267 = nosys */ - { 0, (sy_call_t *)nosys }, /* 268 = nosys */ - { 0, (sy_call_t *)nosys }, /* 269 = nosys */ - { 0, (sy_call_t *)nosys }, /* 270 = nosys */ - { 0, (sy_call_t *)nosys }, /* 271 = nosys */ - { AS(getdents_args), (sy_call_t *)getdents }, /* 272 = getdents */ - { 0, (sy_call_t *)nosys }, /* 273 = nosys */ - { AS(lchmod_args), (sy_call_t *)lchmod }, /* 274 = lchmod */ - { AS(lchown_args), (sy_call_t *)lchown }, /* 275 = netbsd_lchown */ - { AS(lutimes_args), (sy_call_t *)lutimes }, /* 276 = lutimes */ - { SYF_MPSAFE | AS(msync_args), (sy_call_t *)msync }, /* 277 = netbsd_msync */ - { AS(nstat_args), (sy_call_t *)nstat }, /* 278 = nstat */ - { SYF_MPSAFE | AS(nfstat_args), (sy_call_t *)nfstat }, /* 279 = nfstat */ - { AS(nlstat_args), (sy_call_t *)nlstat }, /* 280 = nlstat */ - { 0, (sy_call_t *)nosys }, /* 281 = nosys */ - { 0, (sy_call_t *)nosys }, /* 282 = nosys */ - { 0, (sy_call_t *)nosys }, /* 283 = nosys */ - { 0, (sy_call_t *)nosys }, /* 284 = nosys */ - { 0, (sy_call_t *)nosys }, /* 285 = nosys */ - { 0, (sy_call_t *)nosys }, /* 286 = nosys */ - { 0, (sy_call_t *)nosys }, /* 287 = nosys */ - { 0, (sy_call_t *)nosys }, /* 288 = nosys */ - { 0, (sy_call_t *)nosys }, /* 289 = nosys */ - { 0, (sy_call_t *)nosys }, /* 290 = nosys */ - { 0, (sy_call_t *)nosys }, /* 291 = nosys */ - { 0, (sy_call_t *)nosys }, /* 292 = nosys */ - { 0, (sy_call_t *)nosys }, /* 293 = nosys */ - { 0, (sy_call_t *)nosys }, /* 294 = nosys */ - { 0, (sy_call_t *)nosys }, /* 295 = nosys */ - { 0, (sy_call_t *)nosys }, /* 296 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 159 = nosys */ + { AS(lgetfh_args), (sy_call_t *)lgetfh, AUE_NULL }, /* 160 = lgetfh */ + { AS(getfh_args), (sy_call_t *)getfh, AUE_GETFH }, /* 161 = getfh */ + { SYF_MPSAFE | AS(getdomainname_args), (sy_call_t *)getdomainname, AUE_O_GETDOMAINNAME }, /* 162 = getdomainname */ + { SYF_MPSAFE | AS(setdomainname_args), (sy_call_t *)setdomainname, AUE_O_SETDOMAINNAME }, /* 163 = setdomainname */ + { SYF_MPSAFE | AS(uname_args), (sy_call_t *)uname, AUE_NULL }, /* 164 = uname */ + { SYF_MPSAFE | AS(sysarch_args), (sy_call_t *)sysarch, AUE_NULL }, /* 165 = sysarch */ + { SYF_MPSAFE | AS(rtprio_args), (sy_call_t *)rtprio, AUE_NULL }, /* 166 = rtprio */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 167 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 168 = nosys */ + { SYF_MPSAFE | AS(semsys_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 169 = semsys */ + { SYF_MPSAFE | AS(msgsys_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 170 = msgsys */ + { SYF_MPSAFE | AS(shmsys_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 171 = shmsys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 172 = nosys */ + { SYF_MPSAFE | AS(pread_args), (sy_call_t *)pread, AUE_PREAD }, /* 173 = pread */ + { SYF_MPSAFE | AS(pwrite_args), (sy_call_t *)pwrite, AUE_PWRITE }, /* 174 = pwrite */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 175 = nosys */ + { SYF_MPSAFE | AS(ntp_adjtime_args), (sy_call_t *)ntp_adjtime, AUE_ADJTIME }, /* 176 = ntp_adjtime */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 177 = sfork */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 178 = getdescriptor */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 179 = setdescriptor */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 180 = nosys */ + { SYF_MPSAFE | AS(setgid_args), (sy_call_t *)setgid, AUE_SETGID }, /* 181 = setgid */ + { SYF_MPSAFE | AS(setegid_args), (sy_call_t *)setegid, AUE_SETEGID }, /* 182 = setegid */ + { SYF_MPSAFE | AS(seteuid_args), (sy_call_t *)seteuid, AUE_SETEUID }, /* 183 = seteuid */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 184 = lfs_bmapv */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 185 = lfs_markv */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 186 = lfs_segclean */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 187 = lfs_segwait */ + { AS(stat_args), (sy_call_t *)stat, AUE_STAT }, /* 188 = stat */ + { SYF_MPSAFE | AS(fstat_args), (sy_call_t *)fstat, AUE_FSTAT }, /* 189 = fstat */ + { AS(lstat_args), (sy_call_t *)lstat, AUE_LSTAT }, /* 190 = lstat */ + { AS(pathconf_args), (sy_call_t *)pathconf, AUE_PATHCONF }, /* 191 = pathconf */ + { SYF_MPSAFE | AS(fpathconf_args), (sy_call_t *)fpathconf, AUE_FPATHCONF }, /* 192 = fpathconf */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 193 = nosys */ + { SYF_MPSAFE | AS(__getrlimit_args), (sy_call_t *)getrlimit, AUE_GETRLIMIT }, /* 194 = getrlimit */ + { SYF_MPSAFE | AS(__setrlimit_args), (sy_call_t *)setrlimit, AUE_SETRLIMIT }, /* 195 = setrlimit */ + { AS(getdirentries_args), (sy_call_t *)getdirentries, AUE_GETDIRENTRIES }, /* 196 = getdirentries */ + { SYF_MPSAFE | AS(mmap_args), (sy_call_t *)mmap, AUE_MMAP }, /* 197 = mmap */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 198 = __syscall */ + { AS(lseek_args), (sy_call_t *)lseek, AUE_LSEEK }, /* 199 = lseek */ + { AS(truncate_args), (sy_call_t *)truncate, AUE_TRUNCATE }, /* 200 = truncate */ + { AS(ftruncate_args), (sy_call_t *)ftruncate, AUE_FTRUNCATE }, /* 201 = ftruncate */ + { SYF_MPSAFE | AS(sysctl_args), (sy_call_t *)__sysctl, AUE_SYSCTL }, /* 202 = __sysctl */ + { SYF_MPSAFE | AS(mlock_args), (sy_call_t *)mlock, AUE_MLOCK }, /* 203 = mlock */ + { SYF_MPSAFE | AS(munlock_args), (sy_call_t *)munlock, AUE_MUNLOCK }, /* 204 = munlock */ + { AS(undelete_args), (sy_call_t *)undelete, AUE_UNDELETE }, /* 205 = undelete */ + { AS(futimes_args), (sy_call_t *)futimes, AUE_FUTIMES }, /* 206 = futimes */ + { SYF_MPSAFE | AS(getpgid_args), (sy_call_t *)getpgid, AUE_GETPGID }, /* 207 = getpgid */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 208 = newreboot */ + { SYF_MPSAFE | AS(poll_args), (sy_call_t *)poll, AUE_POLL }, /* 209 = poll */ + { AS(nosys_args), (sy_call_t *)lkmnosys, AUE_NULL }, /* 210 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys, AUE_NULL }, /* 211 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys, AUE_NULL }, /* 212 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys, AUE_NULL }, /* 213 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys, AUE_NULL }, /* 214 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys, AUE_NULL }, /* 215 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys, AUE_NULL }, /* 216 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys, AUE_NULL }, /* 217 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys, AUE_NULL }, /* 218 = lkmnosys */ + { AS(nosys_args), (sy_call_t *)lkmnosys, AUE_NULL }, /* 219 = lkmnosys */ + { SYF_MPSAFE | AS(__semctl_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 220 = __semctl */ + { SYF_MPSAFE | AS(semget_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 221 = semget */ + { SYF_MPSAFE | AS(semop_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 222 = semop */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 223 = semconfig */ + { SYF_MPSAFE | AS(msgctl_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 224 = msgctl */ + { SYF_MPSAFE | AS(msgget_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 225 = msgget */ + { SYF_MPSAFE | AS(msgsnd_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 226 = msgsnd */ + { SYF_MPSAFE | AS(msgrcv_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 227 = msgrcv */ + { SYF_MPSAFE | AS(shmat_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 228 = shmat */ + { SYF_MPSAFE | AS(shmctl_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 229 = shmctl */ + { SYF_MPSAFE | AS(shmdt_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 230 = shmdt */ + { SYF_MPSAFE | AS(shmget_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 231 = shmget */ + { SYF_MPSAFE | AS(clock_gettime_args), (sy_call_t *)clock_gettime, AUE_NULL }, /* 232 = clock_gettime */ + { SYF_MPSAFE | AS(clock_settime_args), (sy_call_t *)clock_settime, AUE_NULL }, /* 233 = clock_settime */ + { SYF_MPSAFE | AS(clock_getres_args), (sy_call_t *)clock_getres, AUE_NULL }, /* 234 = clock_getres */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 235 = timer_create */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 236 = timer_delete */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 237 = timer_settime */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 238 = timer_gettime */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 239 = timer_getoverrun */ + { SYF_MPSAFE | AS(nanosleep_args), (sy_call_t *)nanosleep, AUE_NULL }, /* 240 = nanosleep */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 241 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 242 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 243 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 244 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 245 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 246 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 247 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 248 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 249 = nosys */ + { SYF_MPSAFE | AS(minherit_args), (sy_call_t *)minherit, AUE_MINHERIT }, /* 250 = minherit */ + { SYF_MPSAFE | AS(rfork_args), (sy_call_t *)rfork, AUE_RFORK }, /* 251 = rfork */ + { SYF_MPSAFE | AS(openbsd_poll_args), (sy_call_t *)openbsd_poll, AUE_NULL }, /* 252 = openbsd_poll */ + { SYF_MPSAFE | 0, (sy_call_t *)issetugid, AUE_ISSETUGID }, /* 253 = issetugid */ + { AS(lchown_args), (sy_call_t *)lchown, AUE_LCHOWN }, /* 254 = lchown */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 255 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 256 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 257 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 258 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 259 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 260 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 261 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 262 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 263 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 264 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 265 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 266 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 267 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 268 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 269 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 270 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 271 = nosys */ + { AS(getdents_args), (sy_call_t *)getdents, AUE_O_GETDENTS }, /* 272 = getdents */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 273 = nosys */ + { AS(lchmod_args), (sy_call_t *)lchmod, AUE_LCHMOD }, /* 274 = lchmod */ + { AS(lchown_args), (sy_call_t *)lchown, AUE_LCHOWN }, /* 275 = netbsd_lchown */ + { AS(lutimes_args), (sy_call_t *)lutimes, AUE_LUTIMES }, /* 276 = lutimes */ + { SYF_MPSAFE | AS(msync_args), (sy_call_t *)msync, AUE_MSYNC }, /* 277 = netbsd_msync */ + { AS(nstat_args), (sy_call_t *)nstat, AUE_NULL }, /* 278 = nstat */ + { SYF_MPSAFE | AS(nfstat_args), (sy_call_t *)nfstat, AUE_NULL }, /* 279 = nfstat */ + { AS(nlstat_args), (sy_call_t *)nlstat, AUE_NULL }, /* 280 = nlstat */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 281 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 282 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 283 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 284 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 285 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 286 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 287 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 288 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 289 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 290 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 291 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 292 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 293 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 294 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 295 = nosys */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 296 = nosys */ { compat4(AS(freebsd4_fhstatfs_args),fhstatfs) }, /* 297 = old fhstatfs */ - { AS(fhopen_args), (sy_call_t *)fhopen }, /* 298 = fhopen */ - { AS(fhstat_args), (sy_call_t *)fhstat }, /* 299 = fhstat */ - { SYF_MPSAFE | AS(modnext_args), (sy_call_t *)modnext }, /* 300 = modnext */ - { SYF_MPSAFE | AS(modstat_args), (sy_call_t *)modstat }, /* 301 = modstat */ - { SYF_MPSAFE | AS(modfnext_args), (sy_call_t *)modfnext }, /* 302 = modfnext */ - { SYF_MPSAFE | AS(modfind_args), (sy_call_t *)modfind }, /* 303 = modfind */ - { SYF_MPSAFE | AS(kldload_args), (sy_call_t *)kldload }, /* 304 = kldload */ - { SYF_MPSAFE | AS(kldunload_args), (sy_call_t *)kldunload }, /* 305 = kldunload */ - { SYF_MPSAFE | AS(kldfind_args), (sy_call_t *)kldfind }, /* 306 = kldfind */ - { SYF_MPSAFE | AS(kldnext_args), (sy_call_t *)kldnext }, /* 307 = kldnext */ - { SYF_MPSAFE | AS(kldstat_args), (sy_call_t *)kldstat }, /* 308 = kldstat */ - { SYF_MPSAFE | AS(kldfirstmod_args), (sy_call_t *)kldfirstmod }, /* 309 = kldfirstmod */ - { SYF_MPSAFE | AS(getsid_args), (sy_call_t *)getsid }, /* 310 = getsid */ - { SYF_MPSAFE | AS(setresuid_args), (sy_call_t *)setresuid }, /* 311 = setresuid */ - { SYF_MPSAFE | AS(setresgid_args), (sy_call_t *)setresgid }, /* 312 = setresgid */ - { 0, (sy_call_t *)nosys }, /* 313 = obsolete signanosleep */ - { AS(aio_return_args), (sy_call_t *)lkmressys }, /* 314 = aio_return */ - { AS(aio_suspend_args), (sy_call_t *)lkmressys }, /* 315 = aio_suspend */ - { AS(aio_cancel_args), (sy_call_t *)lkmressys }, /* 316 = aio_cancel */ - { AS(aio_error_args), (sy_call_t *)lkmressys }, /* 317 = aio_error */ - { AS(aio_read_args), (sy_call_t *)lkmressys }, /* 318 = aio_read */ - { AS(aio_write_args), (sy_call_t *)lkmressys }, /* 319 = aio_write */ - { AS(lio_listio_args), (sy_call_t *)lkmressys }, /* 320 = lio_listio */ - { SYF_MPSAFE | 0, (sy_call_t *)yield }, /* 321 = yield */ - { 0, (sy_call_t *)nosys }, /* 322 = obsolete thr_sleep */ - { 0, (sy_call_t *)nosys }, /* 323 = obsolete thr_wakeup */ - { SYF_MPSAFE | AS(mlockall_args), (sy_call_t *)mlockall }, /* 324 = mlockall */ - { SYF_MPSAFE | 0, (sy_call_t *)munlockall }, /* 325 = munlockall */ - { AS(__getcwd_args), (sy_call_t *)__getcwd }, /* 326 = __getcwd */ - { SYF_MPSAFE | AS(sched_setparam_args), (sy_call_t *)sched_setparam }, /* 327 = sched_setparam */ - { SYF_MPSAFE | AS(sched_getparam_args), (sy_call_t *)sched_getparam }, /* 328 = sched_getparam */ - { SYF_MPSAFE | AS(sched_setscheduler_args), (sy_call_t *)sched_setscheduler }, /* 329 = sched_setscheduler */ - { SYF_MPSAFE | AS(sched_getscheduler_args), (sy_call_t *)sched_getscheduler }, /* 330 = sched_getscheduler */ - { SYF_MPSAFE | 0, (sy_call_t *)sched_yield }, /* 331 = sched_yield */ - { SYF_MPSAFE | AS(sched_get_priority_max_args), (sy_call_t *)sched_get_priority_max }, /* 332 = sched_get_priority_max */ - { SYF_MPSAFE | AS(sched_get_priority_min_args), (sy_call_t *)sched_get_priority_min }, /* 333 = sched_get_priority_min */ - { SYF_MPSAFE | AS(sched_rr_get_interval_args), (sy_call_t *)sched_rr_get_interval }, /* 334 = sched_rr_get_interval */ - { SYF_MPSAFE | AS(utrace_args), (sy_call_t *)utrace }, /* 335 = utrace */ + { AS(fhopen_args), (sy_call_t *)fhopen, AUE_NULL }, /* 298 = fhopen */ + { AS(fhstat_args), (sy_call_t *)fhstat, AUE_NULL }, /* 299 = fhstat */ + { SYF_MPSAFE | AS(modnext_args), (sy_call_t *)modnext, AUE_NULL }, /* 300 = modnext */ + { SYF_MPSAFE | AS(modstat_args), (sy_call_t *)modstat, AUE_NULL }, /* 301 = modstat */ + { SYF_MPSAFE | AS(modfnext_args), (sy_call_t *)modfnext, AUE_NULL }, /* 302 = modfnext */ + { SYF_MPSAFE | AS(modfind_args), (sy_call_t *)modfind, AUE_NULL }, /* 303 = modfind */ + { SYF_MPSAFE | AS(kldload_args), (sy_call_t *)kldload, AUE_MODLOAD }, /* 304 = kldload */ + { SYF_MPSAFE | AS(kldunload_args), (sy_call_t *)kldunload, AUE_MODUNLOAD }, /* 305 = kldunload */ + { SYF_MPSAFE | AS(kldfind_args), (sy_call_t *)kldfind, AUE_NULL }, /* 306 = kldfind */ + { SYF_MPSAFE | AS(kldnext_args), (sy_call_t *)kldnext, AUE_NULL }, /* 307 = kldnext */ + { SYF_MPSAFE | AS(kldstat_args), (sy_call_t *)kldstat, AUE_NULL }, /* 308 = kldstat */ + { SYF_MPSAFE | AS(kldfirstmod_args), (sy_call_t *)kldfirstmod, AUE_NULL }, /* 309 = kldfirstmod */ + { SYF_MPSAFE | AS(getsid_args), (sy_call_t *)getsid, AUE_GETSID }, /* 310 = getsid */ + { SYF_MPSAFE | AS(setresuid_args), (sy_call_t *)setresuid, AUE_NULL }, /* 311 = setresuid */ + { SYF_MPSAFE | AS(setresgid_args), (sy_call_t *)setresgid, AUE_NULL }, /* 312 = setresgid */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 313 = obsolete signanosleep */ + { AS(aio_return_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 314 = aio_return */ + { AS(aio_suspend_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 315 = aio_suspend */ + { AS(aio_cancel_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 316 = aio_cancel */ + { AS(aio_error_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 317 = aio_error */ + { AS(aio_read_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 318 = aio_read */ + { AS(aio_write_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 319 = aio_write */ + { AS(lio_listio_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 320 = lio_listio */ + { SYF_MPSAFE | 0, (sy_call_t *)yield, AUE_NULL }, /* 321 = yield */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 322 = obsolete thr_sleep */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 323 = obsolete thr_wakeup */ + { SYF_MPSAFE | AS(mlockall_args), (sy_call_t *)mlockall, AUE_MLOCKALL }, /* 324 = mlockall */ + { SYF_MPSAFE | 0, (sy_call_t *)munlockall, AUE_MUNLOCKALL }, /* 325 = munlockall */ + { AS(__getcwd_args), (sy_call_t *)__getcwd, AUE_NULL }, /* 326 = __getcwd */ + { SYF_MPSAFE | AS(sched_setparam_args), (sy_call_t *)sched_setparam, AUE_NULL }, /* 327 = sched_setparam */ + { SYF_MPSAFE | AS(sched_getparam_args), (sy_call_t *)sched_getparam, AUE_NULL }, /* 328 = sched_getparam */ + { SYF_MPSAFE | AS(sched_setscheduler_args), (sy_call_t *)sched_setscheduler, AUE_NULL }, /* 329 = sched_setscheduler */ + { SYF_MPSAFE | AS(sched_getscheduler_args), (sy_call_t *)sched_getscheduler, AUE_NULL }, /* 330 = sched_getscheduler */ + { SYF_MPSAFE | 0, (sy_call_t *)sched_yield, AUE_NULL }, /* 331 = sched_yield */ + { SYF_MPSAFE | AS(sched_get_priority_max_args), (sy_call_t *)sched_get_priority_max, AUE_NULL }, /* 332 = sched_get_priority_max */ + { SYF_MPSAFE | AS(sched_get_priority_min_args), (sy_call_t *)sched_get_priority_min, AUE_NULL }, /* 333 = sched_get_priority_min */ + { SYF_MPSAFE | AS(sched_rr_get_interval_args), (sy_call_t *)sched_rr_get_interval, AUE_NULL }, /* 334 = sched_rr_get_interval */ + { SYF_MPSAFE | AS(utrace_args), (sy_call_t *)utrace, AUE_NULL }, /* 335 = utrace */ { compat4(SYF_MPSAFE | AS(freebsd4_sendfile_args),sendfile) }, /* 336 = old sendfile */ - { AS(kldsym_args), (sy_call_t *)kldsym }, /* 337 = kldsym */ - { SYF_MPSAFE | AS(jail_args), (sy_call_t *)jail }, /* 338 = jail */ - { 0, (sy_call_t *)nosys }, /* 339 = pioctl */ - { SYF_MPSAFE | AS(sigprocmask_args), (sy_call_t *)sigprocmask }, /* 340 = sigprocmask */ - { SYF_MPSAFE | AS(sigsuspend_args), (sy_call_t *)sigsuspend }, /* 341 = sigsuspend */ + { AS(kldsym_args), (sy_call_t *)kldsym, AUE_NULL }, /* 337 = kldsym */ + { SYF_MPSAFE | AS(jail_args), (sy_call_t *)jail, AUE_NULL }, /* 338 = jail */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 339 = pioctl */ + { SYF_MPSAFE | AS(sigprocmask_args), (sy_call_t *)sigprocmask, AUE_SIGPROCMASK }, /* 340 = sigprocmask */ + { SYF_MPSAFE | AS(sigsuspend_args), (sy_call_t *)sigsuspend, AUE_SIGSUSPEND }, /* 341 = sigsuspend */ { compat4(SYF_MPSAFE | AS(freebsd4_sigaction_args),sigaction) }, /* 342 = old sigaction */ - { SYF_MPSAFE | AS(sigpending_args), (sy_call_t *)sigpending }, /* 343 = sigpending */ + { SYF_MPSAFE | AS(sigpending_args), (sy_call_t *)sigpending, AUE_SIGPENDING }, /* 343 = sigpending */ { compat4(SYF_MPSAFE | AS(freebsd4_sigreturn_args),sigreturn) }, /* 344 = old sigreturn */ - { SYF_MPSAFE | AS(sigtimedwait_args), (sy_call_t *)sigtimedwait }, /* 345 = sigtimedwait */ - { SYF_MPSAFE | AS(sigwaitinfo_args), (sy_call_t *)sigwaitinfo }, /* 346 = sigwaitinfo */ - { SYF_MPSAFE | AS(__acl_get_file_args), (sy_call_t *)__acl_get_file }, /* 347 = __acl_get_file */ - { SYF_MPSAFE | AS(__acl_set_file_args), (sy_call_t *)__acl_set_file }, /* 348 = __acl_set_file */ - { SYF_MPSAFE | AS(__acl_get_fd_args), (sy_call_t *)__acl_get_fd }, /* 349 = __acl_get_fd */ - { SYF_MPSAFE | AS(__acl_set_fd_args), (sy_call_t *)__acl_set_fd }, /* 350 = __acl_set_fd */ - { SYF_MPSAFE | AS(__acl_delete_file_args), (sy_call_t *)__acl_delete_file }, /* 351 = __acl_delete_file */ - { SYF_MPSAFE | AS(__acl_delete_fd_args), (sy_call_t *)__acl_delete_fd }, /* 352 = __acl_delete_fd */ - { SYF_MPSAFE | AS(__acl_aclcheck_file_args), (sy_call_t *)__acl_aclcheck_file }, /* 353 = __acl_aclcheck_file */ - { SYF_MPSAFE | AS(__acl_aclcheck_fd_args), (sy_call_t *)__acl_aclcheck_fd }, /* 354 = __acl_aclcheck_fd */ - { AS(extattrctl_args), (sy_call_t *)extattrctl }, /* 355 = extattrctl */ - { AS(extattr_set_file_args), (sy_call_t *)extattr_set_file }, /* 356 = extattr_set_file */ - { AS(extattr_get_file_args), (sy_call_t *)extattr_get_file }, /* 357 = extattr_get_file */ - { AS(extattr_delete_file_args), (sy_call_t *)extattr_delete_file }, /* 358 = extattr_delete_file */ - { AS(aio_waitcomplete_args), (sy_call_t *)lkmressys }, /* 359 = aio_waitcomplete */ - { SYF_MPSAFE | AS(getresuid_args), (sy_call_t *)getresuid }, /* 360 = getresuid */ - { SYF_MPSAFE | AS(getresgid_args), (sy_call_t *)getresgid }, /* 361 = getresgid */ - { SYF_MPSAFE | 0, (sy_call_t *)kqueue }, /* 362 = kqueue */ - { SYF_MPSAFE | AS(kevent_args), (sy_call_t *)kevent }, /* 363 = kevent */ - { 0, (sy_call_t *)nosys }, /* 364 = __cap_get_proc */ - { 0, (sy_call_t *)nosys }, /* 365 = __cap_set_proc */ - { 0, (sy_call_t *)nosys }, /* 366 = __cap_get_fd */ - { 0, (sy_call_t *)nosys }, /* 367 = __cap_get_file */ - { 0, (sy_call_t *)nosys }, /* 368 = __cap_set_fd */ - { 0, (sy_call_t *)nosys }, /* 369 = __cap_set_file */ - { AS(nosys_args), (sy_call_t *)lkmressys }, /* 370 = lkmressys */ - { AS(extattr_set_fd_args), (sy_call_t *)extattr_set_fd }, /* 371 = extattr_set_fd */ - { AS(extattr_get_fd_args), (sy_call_t *)extattr_get_fd }, /* 372 = extattr_get_fd */ - { AS(extattr_delete_fd_args), (sy_call_t *)extattr_delete_fd }, /* 373 = extattr_delete_fd */ - { SYF_MPSAFE | AS(__setugid_args), (sy_call_t *)__setugid }, /* 374 = __setugid */ - { AS(nfsclnt_args), (sy_call_t *)nosys }, /* 375 = nfsclnt */ - { AS(eaccess_args), (sy_call_t *)eaccess }, /* 376 = eaccess */ - { 0, (sy_call_t *)nosys }, /* 377 = afs_syscall */ - { AS(nmount_args), (sy_call_t *)nmount }, /* 378 = nmount */ - { SYF_MPSAFE | 0, (sy_call_t *)kse_exit }, /* 379 = kse_exit */ - { SYF_MPSAFE | AS(kse_wakeup_args), (sy_call_t *)kse_wakeup }, /* 380 = kse_wakeup */ - { SYF_MPSAFE | AS(kse_create_args), (sy_call_t *)kse_create }, /* 381 = kse_create */ - { SYF_MPSAFE | AS(kse_thr_interrupt_args), (sy_call_t *)kse_thr_interrupt }, /* 382 = kse_thr_interrupt */ - { SYF_MPSAFE | AS(kse_release_args), (sy_call_t *)kse_release }, /* 383 = kse_release */ - { SYF_MPSAFE | AS(__mac_get_proc_args), (sy_call_t *)__mac_get_proc }, /* 384 = __mac_get_proc */ - { SYF_MPSAFE | AS(__mac_set_proc_args), (sy_call_t *)__mac_set_proc }, /* 385 = __mac_set_proc */ - { SYF_MPSAFE | AS(__mac_get_fd_args), (sy_call_t *)__mac_get_fd }, /* 386 = __mac_get_fd */ - { SYF_MPSAFE | AS(__mac_get_file_args), (sy_call_t *)__mac_get_file }, /* 387 = __mac_get_file */ - { SYF_MPSAFE | AS(__mac_set_fd_args), (sy_call_t *)__mac_set_fd }, /* 388 = __mac_set_fd */ - { SYF_MPSAFE | AS(__mac_set_file_args), (sy_call_t *)__mac_set_file }, /* 389 = __mac_set_file */ - { AS(kenv_args), (sy_call_t *)kenv }, /* 390 = kenv */ - { AS(lchflags_args), (sy_call_t *)lchflags }, /* 391 = lchflags */ - { AS(uuidgen_args), (sy_call_t *)uuidgen }, /* 392 = uuidgen */ - { SYF_MPSAFE | AS(sendfile_args), (sy_call_t *)sendfile }, /* 393 = sendfile */ - { SYF_MPSAFE | AS(mac_syscall_args), (sy_call_t *)mac_syscall }, /* 394 = mac_syscall */ - { AS(getfsstat_args), (sy_call_t *)getfsstat }, /* 395 = getfsstat */ - { AS(statfs_args), (sy_call_t *)statfs }, /* 396 = statfs */ - { AS(fstatfs_args), (sy_call_t *)fstatfs }, /* 397 = fstatfs */ - { AS(fhstatfs_args), (sy_call_t *)fhstatfs }, /* 398 = fhstatfs */ - { 0, (sy_call_t *)nosys }, /* 399 = nosys */ - { SYF_MPSAFE | AS(ksem_close_args), (sy_call_t *)lkmressys }, /* 400 = ksem_close */ - { SYF_MPSAFE | AS(ksem_post_args), (sy_call_t *)lkmressys }, /* 401 = ksem_post */ - { SYF_MPSAFE | AS(ksem_wait_args), (sy_call_t *)lkmressys }, /* 402 = ksem_wait */ - { SYF_MPSAFE | AS(ksem_trywait_args), (sy_call_t *)lkmressys }, /* 403 = ksem_trywait */ - { SYF_MPSAFE | AS(ksem_init_args), (sy_call_t *)lkmressys }, /* 404 = ksem_init */ - { SYF_MPSAFE | AS(ksem_open_args), (sy_call_t *)lkmressys }, /* 405 = ksem_open */ - { SYF_MPSAFE | AS(ksem_unlink_args), (sy_call_t *)lkmressys }, /* 406 = ksem_unlink */ - { SYF_MPSAFE | AS(ksem_getvalue_args), (sy_call_t *)lkmressys }, /* 407 = ksem_getvalue */ - { SYF_MPSAFE | AS(ksem_destroy_args), (sy_call_t *)lkmressys }, /* 408 = ksem_destroy */ - { SYF_MPSAFE | AS(__mac_get_pid_args), (sy_call_t *)__mac_get_pid }, /* 409 = __mac_get_pid */ - { SYF_MPSAFE | AS(__mac_get_link_args), (sy_call_t *)__mac_get_link }, /* 410 = __mac_get_link */ - { SYF_MPSAFE | AS(__mac_set_link_args), (sy_call_t *)__mac_set_link }, /* 411 = __mac_set_link */ - { AS(extattr_set_link_args), (sy_call_t *)extattr_set_link }, /* 412 = extattr_set_link */ - { AS(extattr_get_link_args), (sy_call_t *)extattr_get_link }, /* 413 = extattr_get_link */ - { AS(extattr_delete_link_args), (sy_call_t *)extattr_delete_link }, /* 414 = extattr_delete_link */ - { SYF_MPSAFE | AS(__mac_execve_args), (sy_call_t *)__mac_execve }, /* 415 = __mac_execve */ - { SYF_MPSAFE | AS(sigaction_args), (sy_call_t *)sigaction }, /* 416 = sigaction */ - { SYF_MPSAFE | AS(sigreturn_args), (sy_call_t *)sigreturn }, /* 417 = sigreturn */ - { 0, (sy_call_t *)nosys }, /* 418 = __xstat */ - { 0, (sy_call_t *)nosys }, /* 419 = __xfstat */ - { 0, (sy_call_t *)nosys }, /* 420 = __xlstat */ - { SYF_MPSAFE | AS(getcontext_args), (sy_call_t *)getcontext }, /* 421 = getcontext */ - { SYF_MPSAFE | AS(setcontext_args), (sy_call_t *)setcontext }, /* 422 = setcontext */ - { SYF_MPSAFE | AS(swapcontext_args), (sy_call_t *)swapcontext }, /* 423 = swapcontext */ - { SYF_MPSAFE | AS(swapoff_args), (sy_call_t *)swapoff }, /* 424 = swapoff */ - { SYF_MPSAFE | AS(__acl_get_link_args), (sy_call_t *)__acl_get_link }, /* 425 = __acl_get_link */ - { SYF_MPSAFE | AS(__acl_set_link_args), (sy_call_t *)__acl_set_link }, /* 426 = __acl_set_link */ - { SYF_MPSAFE | AS(__acl_delete_link_args), (sy_call_t *)__acl_delete_link }, /* 427 = __acl_delete_link */ - { SYF_MPSAFE | AS(__acl_aclcheck_link_args), (sy_call_t *)__acl_aclcheck_link }, /* 428 = __acl_aclcheck_link */ - { SYF_MPSAFE | AS(sigwait_args), (sy_call_t *)sigwait }, /* 429 = sigwait */ - { SYF_MPSAFE | AS(thr_create_args), (sy_call_t *)thr_create }, /* 430 = thr_create */ - { SYF_MPSAFE | 0, (sy_call_t *)thr_exit }, /* 431 = thr_exit */ - { SYF_MPSAFE | AS(thr_self_args), (sy_call_t *)thr_self }, /* 432 = thr_self */ - { SYF_MPSAFE | AS(thr_kill_args), (sy_call_t *)thr_kill }, /* 433 = thr_kill */ - { SYF_MPSAFE | AS(_umtx_lock_args), (sy_call_t *)_umtx_lock }, /* 434 = _umtx_lock */ - { SYF_MPSAFE | AS(_umtx_unlock_args), (sy_call_t *)_umtx_unlock }, /* 435 = _umtx_unlock */ - { SYF_MPSAFE | AS(jail_attach_args), (sy_call_t *)jail_attach }, /* 436 = jail_attach */ - { AS(extattr_list_fd_args), (sy_call_t *)extattr_list_fd }, /* 437 = extattr_list_fd */ - { AS(extattr_list_file_args), (sy_call_t *)extattr_list_file }, /* 438 = extattr_list_file */ - { AS(extattr_list_link_args), (sy_call_t *)extattr_list_link }, /* 439 = extattr_list_link */ - { SYF_MPSAFE | AS(kse_switchin_args), (sy_call_t *)kse_switchin }, /* 440 = kse_switchin */ - { SYF_MPSAFE | AS(ksem_timedwait_args), (sy_call_t *)lkmressys }, /* 441 = ksem_timedwait */ - { SYF_MPSAFE | AS(thr_suspend_args), (sy_call_t *)thr_suspend }, /* 442 = thr_suspend */ - { SYF_MPSAFE | AS(thr_wake_args), (sy_call_t *)thr_wake }, /* 443 = thr_wake */ - { SYF_MPSAFE | AS(audit_args), (sy_call_t *)audit }, /* 444 = audit */ - { SYF_MPSAFE | AS(auditon_args), (sy_call_t *)auditon }, /* 445 = auditon */ - { SYF_MPSAFE | AS(getauid_args), (sy_call_t *)getauid }, /* 446 = getauid */ - { SYF_MPSAFE | AS(setauid_args), (sy_call_t *)setauid }, /* 447 = setauid */ - { SYF_MPSAFE | AS(getaudit_args), (sy_call_t *)getaudit }, /* 448 = getaudit */ - { SYF_MPSAFE | AS(setaudit_args), (sy_call_t *)setaudit }, /* 449 = setaudit */ - { SYF_MPSAFE | AS(getaudit_addr_args), (sy_call_t *)getaudit_addr }, /* 450 = getaudit_addr */ - { SYF_MPSAFE | AS(setaudit_addr_args), (sy_call_t *)setaudit_addr }, /* 451 = setaudit_addr */ - { SYF_MPSAFE | AS(auditctl_args), (sy_call_t *)auditctl }, /* 452 = auditctl */ + { SYF_MPSAFE | AS(sigtimedwait_args), (sy_call_t *)sigtimedwait, AUE_NULL }, /* 345 = sigtimedwait */ + { SYF_MPSAFE | AS(sigwaitinfo_args), (sy_call_t *)sigwaitinfo, AUE_NULL }, /* 346 = sigwaitinfo */ + { SYF_MPSAFE | AS(__acl_get_file_args), (sy_call_t *)__acl_get_file, AUE_NULL }, /* 347 = __acl_get_file */ + { SYF_MPSAFE | AS(__acl_set_file_args), (sy_call_t *)__acl_set_file, AUE_NULL }, /* 348 = __acl_set_file */ + { SYF_MPSAFE | AS(__acl_get_fd_args), (sy_call_t *)__acl_get_fd, AUE_NULL }, /* 349 = __acl_get_fd */ + { SYF_MPSAFE | AS(__acl_set_fd_args), (sy_call_t *)__acl_set_fd, AUE_NULL }, /* 350 = __acl_set_fd */ + { SYF_MPSAFE | AS(__acl_delete_file_args), (sy_call_t *)__acl_delete_file, AUE_NULL }, /* 351 = __acl_delete_file */ + { SYF_MPSAFE | AS(__acl_delete_fd_args), (sy_call_t *)__acl_delete_fd, AUE_NULL }, /* 352 = __acl_delete_fd */ + { SYF_MPSAFE | AS(__acl_aclcheck_file_args), (sy_call_t *)__acl_aclcheck_file, AUE_NULL }, /* 353 = __acl_aclcheck_file */ + { SYF_MPSAFE | AS(__acl_aclcheck_fd_args), (sy_call_t *)__acl_aclcheck_fd, AUE_NULL }, /* 354 = __acl_aclcheck_fd */ + { AS(extattrctl_args), (sy_call_t *)extattrctl, AUE_NULL }, /* 355 = extattrctl */ + { AS(extattr_set_file_args), (sy_call_t *)extattr_set_file, AUE_NULL }, /* 356 = extattr_set_file */ + { AS(extattr_get_file_args), (sy_call_t *)extattr_get_file, AUE_NULL }, /* 357 = extattr_get_file */ + { AS(extattr_delete_file_args), (sy_call_t *)extattr_delete_file, AUE_NULL }, /* 358 = extattr_delete_file */ + { AS(aio_waitcomplete_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 359 = aio_waitcomplete */ + { SYF_MPSAFE | AS(getresuid_args), (sy_call_t *)getresuid, AUE_NULL }, /* 360 = getresuid */ + { SYF_MPSAFE | AS(getresgid_args), (sy_call_t *)getresgid, AUE_NULL }, /* 361 = getresgid */ + { SYF_MPSAFE | 0, (sy_call_t *)kqueue, AUE_NULL }, /* 362 = kqueue */ + { SYF_MPSAFE | AS(kevent_args), (sy_call_t *)kevent, AUE_NULL }, /* 363 = kevent */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 364 = __cap_get_proc */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 365 = __cap_set_proc */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 366 = __cap_get_fd */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 367 = __cap_get_file */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 368 = __cap_set_fd */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 369 = __cap_set_file */ + { AS(nosys_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 370 = lkmressys */ + { AS(extattr_set_fd_args), (sy_call_t *)extattr_set_fd, AUE_NULL }, /* 371 = extattr_set_fd */ + { AS(extattr_get_fd_args), (sy_call_t *)extattr_get_fd, AUE_NULL }, /* 372 = extattr_get_fd */ + { AS(extattr_delete_fd_args), (sy_call_t *)extattr_delete_fd, AUE_NULL }, /* 373 = extattr_delete_fd */ + { SYF_MPSAFE | AS(__setugid_args), (sy_call_t *)__setugid, AUE_NULL }, /* 374 = __setugid */ + { AS(nfsclnt_args), (sy_call_t *)nosys, AUE_NULL }, /* 375 = nfsclnt */ + { AS(eaccess_args), (sy_call_t *)eaccess, AUE_NULL }, /* 376 = eaccess */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 377 = afs_syscall */ + { AS(nmount_args), (sy_call_t *)nmount, AUE_NULL }, /* 378 = nmount */ + { SYF_MPSAFE | 0, (sy_call_t *)kse_exit, AUE_NULL }, /* 379 = kse_exit */ + { SYF_MPSAFE | AS(kse_wakeup_args), (sy_call_t *)kse_wakeup, AUE_NULL }, /* 380 = kse_wakeup */ + { SYF_MPSAFE | AS(kse_create_args), (sy_call_t *)kse_create, AUE_NULL }, /* 381 = kse_create */ + { SYF_MPSAFE | AS(kse_thr_interrupt_args), (sy_call_t *)kse_thr_interrupt, AUE_NULL }, /* 382 = kse_thr_interrupt */ + { SYF_MPSAFE | AS(kse_release_args), (sy_call_t *)kse_release, AUE_NULL }, /* 383 = kse_release */ + { SYF_MPSAFE | AS(__mac_get_proc_args), (sy_call_t *)__mac_get_proc, AUE_NULL }, /* 384 = __mac_get_proc */ + { SYF_MPSAFE | AS(__mac_set_proc_args), (sy_call_t *)__mac_set_proc, AUE_NULL }, /* 385 = __mac_set_proc */ + { SYF_MPSAFE | AS(__mac_get_fd_args), (sy_call_t *)__mac_get_fd, AUE_NULL }, /* 386 = __mac_get_fd */ + { SYF_MPSAFE | AS(__mac_get_file_args), (sy_call_t *)__mac_get_file, AUE_NULL }, /* 387 = __mac_get_file */ + { SYF_MPSAFE | AS(__mac_set_fd_args), (sy_call_t *)__mac_set_fd, AUE_NULL }, /* 388 = __mac_set_fd */ + { SYF_MPSAFE | AS(__mac_set_file_args), (sy_call_t *)__mac_set_file, AUE_NULL }, /* 389 = __mac_set_file */ + { AS(kenv_args), (sy_call_t *)kenv, AUE_NULL }, /* 390 = kenv */ + { AS(lchflags_args), (sy_call_t *)lchflags, AUE_LCHFLAGS }, /* 391 = lchflags */ + { AS(uuidgen_args), (sy_call_t *)uuidgen, AUE_NULL }, /* 392 = uuidgen */ + { SYF_MPSAFE | AS(sendfile_args), (sy_call_t *)sendfile, AUE_NULL }, /* 393 = sendfile */ + { SYF_MPSAFE | AS(mac_syscall_args), (sy_call_t *)mac_syscall, AUE_NULL }, /* 394 = mac_syscall */ + { AS(getfsstat_args), (sy_call_t *)getfsstat, AUE_GETFSSTAT }, /* 395 = getfsstat */ + { AS(statfs_args), (sy_call_t *)statfs, AUE_STATFS }, /* 396 = statfs */ + { AS(fstatfs_args), (sy_call_t *)fstatfs, AUE_FSTATFS }, /* 397 = fstatfs */ + { AS(fhstatfs_args), (sy_call_t *)fhstatfs, AUE_NULL }, /* 398 = fhstatfs */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 399 = nosys */ + { SYF_MPSAFE | AS(ksem_close_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 400 = ksem_close */ + { SYF_MPSAFE | AS(ksem_post_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 401 = ksem_post */ + { SYF_MPSAFE | AS(ksem_wait_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 402 = ksem_wait */ + { SYF_MPSAFE | AS(ksem_trywait_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 403 = ksem_trywait */ + { SYF_MPSAFE | AS(ksem_init_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 404 = ksem_init */ + { SYF_MPSAFE | AS(ksem_open_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 405 = ksem_open */ + { SYF_MPSAFE | AS(ksem_unlink_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 406 = ksem_unlink */ + { SYF_MPSAFE | AS(ksem_getvalue_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 407 = ksem_getvalue */ + { SYF_MPSAFE | AS(ksem_destroy_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 408 = ksem_destroy */ + { SYF_MPSAFE | AS(__mac_get_pid_args), (sy_call_t *)__mac_get_pid, AUE_NULL }, /* 409 = __mac_get_pid */ + { SYF_MPSAFE | AS(__mac_get_link_args), (sy_call_t *)__mac_get_link, AUE_NULL }, /* 410 = __mac_get_link */ + { SYF_MPSAFE | AS(__mac_set_link_args), (sy_call_t *)__mac_set_link, AUE_NULL }, /* 411 = __mac_set_link */ + { AS(extattr_set_link_args), (sy_call_t *)extattr_set_link, AUE_NULL }, /* 412 = extattr_set_link */ + { AS(extattr_get_link_args), (sy_call_t *)extattr_get_link, AUE_NULL }, /* 413 = extattr_get_link */ + { AS(extattr_delete_link_args), (sy_call_t *)extattr_delete_link, AUE_NULL }, /* 414 = extattr_delete_link */ + { SYF_MPSAFE | AS(__mac_execve_args), (sy_call_t *)__mac_execve, AUE_NULL }, /* 415 = __mac_execve */ + { SYF_MPSAFE | AS(sigaction_args), (sy_call_t *)sigaction, AUE_SIGACTION }, /* 416 = sigaction */ + { SYF_MPSAFE | AS(sigreturn_args), (sy_call_t *)sigreturn, AUE_SIGRETURN }, /* 417 = sigreturn */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 418 = __xstat */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 419 = __xfstat */ + { 0, (sy_call_t *)nosys, AUE_NULL }, /* 420 = __xlstat */ + { SYF_MPSAFE | AS(getcontext_args), (sy_call_t *)getcontext, AUE_NULL }, /* 421 = getcontext */ + { SYF_MPSAFE | AS(setcontext_args), (sy_call_t *)setcontext, AUE_NULL }, /* 422 = setcontext */ + { SYF_MPSAFE | AS(swapcontext_args), (sy_call_t *)swapcontext, AUE_NULL }, /* 423 = swapcontext */ + { SYF_MPSAFE | AS(swapoff_args), (sy_call_t *)swapoff, AUE_SWAPOFF }, /* 424 = swapoff */ + { SYF_MPSAFE | AS(__acl_get_link_args), (sy_call_t *)__acl_get_link, AUE_NULL }, /* 425 = __acl_get_link */ + { SYF_MPSAFE | AS(__acl_set_link_args), (sy_call_t *)__acl_set_link, AUE_NULL }, /* 426 = __acl_set_link */ + { SYF_MPSAFE | AS(__acl_delete_link_args), (sy_call_t *)__acl_delete_link, AUE_NULL }, /* 427 = __acl_delete_link */ + { SYF_MPSAFE | AS(__acl_aclcheck_link_args), (sy_call_t *)__acl_aclcheck_link, AUE_NULL }, /* 428 = __acl_aclcheck_link */ + { SYF_MPSAFE | AS(sigwait_args), (sy_call_t *)sigwait, AUE_SIGWAIT }, /* 429 = sigwait */ + { SYF_MPSAFE | AS(thr_create_args), (sy_call_t *)thr_create, AUE_NULL }, /* 430 = thr_create */ + { SYF_MPSAFE | 0, (sy_call_t *)thr_exit, AUE_NULL }, /* 431 = thr_exit */ + { SYF_MPSAFE | AS(thr_self_args), (sy_call_t *)thr_self, AUE_NULL }, /* 432 = thr_self */ + { SYF_MPSAFE | AS(thr_kill_args), (sy_call_t *)thr_kill, AUE_NULL }, /* 433 = thr_kill */ + { SYF_MPSAFE | AS(_umtx_lock_args), (sy_call_t *)_umtx_lock, AUE_NULL }, /* 434 = _umtx_lock */ + { SYF_MPSAFE | AS(_umtx_unlock_args), (sy_call_t *)_umtx_unlock, AUE_NULL }, /* 435 = _umtx_unlock */ + { SYF_MPSAFE | AS(jail_attach_args), (sy_call_t *)jail_attach, AUE_NULL }, /* 436 = jail_attach */ + { AS(extattr_list_fd_args), (sy_call_t *)extattr_list_fd, AUE_NULL }, /* 437 = extattr_list_fd */ + { AS(extattr_list_file_args), (sy_call_t *)extattr_list_file, AUE_NULL }, /* 438 = extattr_list_file */ + { AS(extattr_list_link_args), (sy_call_t *)extattr_list_link, AUE_NULL }, /* 439 = extattr_list_link */ + { SYF_MPSAFE | AS(kse_switchin_args), (sy_call_t *)kse_switchin, AUE_NULL }, /* 440 = kse_switchin */ + { SYF_MPSAFE | AS(ksem_timedwait_args), (sy_call_t *)lkmressys, AUE_NULL }, /* 441 = ksem_timedwait */ + { SYF_MPSAFE | AS(thr_suspend_args), (sy_call_t *)thr_suspend, AUE_NULL }, /* 442 = thr_suspend */ + { SYF_MPSAFE | AS(thr_wake_args), (sy_call_t *)thr_wake, AUE_NULL }, /* 443 = thr_wake */ + { SYF_MPSAFE | AS(audit_args), (sy_call_t *)audit, AUE_AUDIT }, /* 444 = audit */ + { SYF_MPSAFE | AS(auditon_args), (sy_call_t *)auditon, AUE_AUDITON }, /* 445 = auditon */ + { SYF_MPSAFE | AS(getauid_args), (sy_call_t *)getauid, AUE_GETAUID }, /* 446 = getauid */ + { SYF_MPSAFE | AS(setauid_args), (sy_call_t *)setauid, AUE_SETAUID }, /* 447 = setauid */ + { SYF_MPSAFE | AS(getaudit_args), (sy_call_t *)getaudit, AUE_GETAUDIT }, /* 448 = getaudit */ + { SYF_MPSAFE | AS(setaudit_args), (sy_call_t *)setaudit, AUE_SETAUDIT }, /* 449 = setaudit */ + { SYF_MPSAFE | AS(getaudit_addr_args), (sy_call_t *)getaudit_addr, AUE_GETAUDIT_ADDR }, /* 450 = getaudit_addr */ + { SYF_MPSAFE | AS(setaudit_addr_args), (sy_call_t *)setaudit_addr, AUE_SETAUDIT_ADDR }, /* 451 = setaudit_addr */ + { SYF_MPSAFE | AS(auditctl_args), (sy_call_t *)auditctl, AUE_AUDITCTL }, /* 452 = auditctl */ }; ==== //depot/projects/trustedbsd/audit3/sys/kern/makesyscalls.sh#2 (text+ko) ==== @@ -202,18 +202,21 @@ f=3 # toss number and type argc= 0; argssize = "0" - if ($NF != "}") { + if ($(NF) ~ "AUE") { + auditev=$(NF) + funcalias="" + argalias="" + rettype="int" + end=NF-1 + } else { + auditev=$(NF-3) funcalias=$(NF-2) >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Aug 25 20:25:05 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 35FBA16A4D6; Wed, 25 Aug 2004 20:25:05 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0EC1516A4D4 for ; Wed, 25 Aug 2004 20:25:05 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DBB0543D45 for ; Wed, 25 Aug 2004 20:25:04 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7PKP4HY082948 for ; Wed, 25 Aug 2004 20:25:04 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7PKP4tq082945 for perforce@freebsd.org; Wed, 25 Aug 2004 20:25:04 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 25 Aug 2004 20:25:04 GMT Message-Id: <200408252025.i7PKP4tq082945@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 60423 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 Aug 2004 20:25:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=60423 Change 60423 by rwatson@rwatson_tislabs on 2004/08/25 20:24:33 Integrate netperf_socket: - dwhite's SMP stability fix of happiness. - ACPIage. - ATA tweaks, md tweaks, GEOM tweaks, storage tweaks, driver tweaks, etc. Netperf-related: - Loop back in6_prefix removal from gnn. - Loop back removal of conditional socket buffer locking for socket kqueue filters. - Style tweakage for if_sl. - curthread vs. thread0 use in nfs_timer.c cleaned up (some). - Giant lock -> unlock in nfsrv_link() to correct Giant leakage. - if_dc marked IFF_NEEDSGIANT. - jhb pushes Giant acquisition down into kern_fcntl(), making fcntl() variations in various ABIs MPSAFE. Affected files ... .. //depot/projects/netperf_socket/sys/alpha/linux/linux_proto.h#6 integrate .. //depot/projects/netperf_socket/sys/alpha/linux/linux_syscall.h#6 integrate .. //depot/projects/netperf_socket/sys/alpha/linux/linux_sysent.c#6 integrate .. //depot/projects/netperf_socket/sys/alpha/linux/syscalls.master#6 integrate .. //depot/projects/netperf_socket/sys/alpha/osf1/osf1_misc.c#5 integrate .. //depot/projects/netperf_socket/sys/alpha/osf1/osf1_proto.h#4 integrate .. //depot/projects/netperf_socket/sys/alpha/osf1/osf1_syscall.h#4 integrate .. //depot/projects/netperf_socket/sys/alpha/osf1/osf1_sysent.c#4 integrate .. //depot/projects/netperf_socket/sys/alpha/osf1/syscalls.master#4 integrate .. //depot/projects/netperf_socket/sys/amd64/amd64/machdep.c#16 integrate .. //depot/projects/netperf_socket/sys/amd64/amd64/mp_machdep.c#10 integrate .. //depot/projects/netperf_socket/sys/amd64/amd64/nexus.c#6 integrate .. //depot/projects/netperf_socket/sys/amd64/amd64/pmap.c#25 integrate .. //depot/projects/netperf_socket/sys/amd64/linux32/linux32_machdep.c#2 integrate .. //depot/projects/netperf_socket/sys/boot/alpha/Makefile.inc#4 integrate .. //depot/projects/netperf_socket/sys/boot/ficl/Makefile#4 integrate .. //depot/projects/netperf_socket/sys/compat/linux/linux_socket.c#6 integrate .. //depot/projects/netperf_socket/sys/compat/svr4/svr4_fcntl.c#2 integrate .. //depot/projects/netperf_socket/sys/compat/svr4/svr4_proto.h#3 integrate .. //depot/projects/netperf_socket/sys/compat/svr4/svr4_stream.c#5 integrate .. //depot/projects/netperf_socket/sys/compat/svr4/svr4_syscall.h#3 integrate .. //depot/projects/netperf_socket/sys/compat/svr4/svr4_syscallnames.c#3 integrate .. //depot/projects/netperf_socket/sys/compat/svr4/svr4_sysent.c#3 integrate .. //depot/projects/netperf_socket/sys/compat/svr4/syscalls.master#3 integrate .. //depot/projects/netperf_socket/sys/conf/files#49 integrate .. //depot/projects/netperf_socket/sys/conf/ldscript.ia64#3 integrate .. //depot/projects/netperf_socket/sys/dev/acpica/acpi.c#39 integrate .. //depot/projects/netperf_socket/sys/dev/acpica/acpi_lid.c#8 integrate .. //depot/projects/netperf_socket/sys/dev/acpica/acpi_resource.c#11 integrate .. //depot/projects/netperf_socket/sys/dev/acpica/acpivar.h#22 integrate .. //depot/projects/netperf_socket/sys/dev/ata/ata-all.c#16 integrate .. //depot/projects/netperf_socket/sys/dev/ata/ata-chipset.c#17 integrate .. //depot/projects/netperf_socket/sys/dev/ata/atapi-cd.c#10 integrate .. //depot/projects/netperf_socket/sys/dev/isp/isp_freebsd.c#5 integrate .. //depot/projects/netperf_socket/sys/dev/lnc/if_lnc_pci.c#5 integrate .. //depot/projects/netperf_socket/sys/dev/md/md.c#18 integrate .. //depot/projects/netperf_socket/sys/dev/mpt/mpt_freebsd.c#3 integrate .. //depot/projects/netperf_socket/sys/dev/sound/pci/maestro.c#4 integrate .. //depot/projects/netperf_socket/sys/geom/mirror/g_mirror.c#8 integrate .. //depot/projects/netperf_socket/sys/geom/raid3/g_raid3.c#4 integrate .. //depot/projects/netperf_socket/sys/geom/stripe/g_stripe.c#9 integrate .. //depot/projects/netperf_socket/sys/geom/vinum/geom_vinum_raid5.c#5 integrate .. //depot/projects/netperf_socket/sys/i386/acpica/acpi_panasonic.c#4 integrate .. //depot/projects/netperf_socket/sys/i386/conf/NOTES#27 integrate .. //depot/projects/netperf_socket/sys/i386/i386/mp_machdep.c#7 integrate .. //depot/projects/netperf_socket/sys/i386/i386/nexus.c#6 integrate .. //depot/projects/netperf_socket/sys/i386/i386/p4tcc.c#3 integrate .. //depot/projects/netperf_socket/sys/i386/i386/pmap.c#25 integrate .. //depot/projects/netperf_socket/sys/i386/ibcs2/ibcs2_fcntl.c#2 integrate .. //depot/projects/netperf_socket/sys/i386/ibcs2/ibcs2_proto.h#4 integrate .. //depot/projects/netperf_socket/sys/i386/ibcs2/ibcs2_syscall.h#4 integrate .. //depot/projects/netperf_socket/sys/i386/ibcs2/ibcs2_sysent.c#5 integrate .. //depot/projects/netperf_socket/sys/i386/ibcs2/syscalls.master#4 integrate .. //depot/projects/netperf_socket/sys/i386/include/in_cksum.h#4 integrate .. //depot/projects/netperf_socket/sys/i386/linux/linux_machdep.c#3 integrate .. //depot/projects/netperf_socket/sys/i386/linux/linux_proto.h#5 integrate .. //depot/projects/netperf_socket/sys/i386/linux/linux_syscall.h#5 integrate .. //depot/projects/netperf_socket/sys/i386/linux/linux_sysent.c#5 integrate .. //depot/projects/netperf_socket/sys/i386/linux/syscalls.master#5 integrate .. //depot/projects/netperf_socket/sys/ia64/conf/GENERIC#8 integrate .. //depot/projects/netperf_socket/sys/ia64/ia64/nexus.c#3 integrate .. //depot/projects/netperf_socket/sys/ia64/ia64/support.S#2 integrate .. //depot/projects/netperf_socket/sys/ia64/include/asm.h#2 integrate .. //depot/projects/netperf_socket/sys/ia64/include/cpu.h#6 integrate .. //depot/projects/netperf_socket/sys/ia64/include/profile.h#3 integrate .. //depot/projects/netperf_socket/sys/kern/kern_kse.c#10 integrate .. //depot/projects/netperf_socket/sys/kern/kern_lock.c#5 integrate .. //depot/projects/netperf_socket/sys/kern/subr_bus.c#13 integrate .. //depot/projects/netperf_socket/sys/kern/subr_smp.c#9 integrate .. //depot/projects/netperf_socket/sys/kern/uipc_socket.c#39 integrate .. //depot/projects/netperf_socket/sys/modules/ipfw/Makefile#3 integrate .. //depot/projects/netperf_socket/sys/net/if_fwsubr.c#7 integrate .. //depot/projects/netperf_socket/sys/net/if_sl.c#11 integrate .. //depot/projects/netperf_socket/sys/net/rtsock.c#13 integrate .. //depot/projects/netperf_socket/sys/netinet/ip_dummynet.c#8 integrate .. //depot/projects/netperf_socket/sys/netinet6/in6.c#6 integrate .. //depot/projects/netperf_socket/sys/netinet6/in6_ifattach.c#3 integrate .. //depot/projects/netperf_socket/sys/netinet6/in6_prefix.c#3 delete .. //depot/projects/netperf_socket/sys/netinet6/in6_prefix.h#2 delete .. //depot/projects/netperf_socket/sys/netinet6/in6_proto.c#5 integrate .. //depot/projects/netperf_socket/sys/netinet6/ip6_input.c#9 integrate .. //depot/projects/netperf_socket/sys/netinet6/nd6.c#6 integrate .. //depot/projects/netperf_socket/sys/nfsclient/nfs_socket.c#12 integrate .. //depot/projects/netperf_socket/sys/nfsserver/nfs_serv.c#9 integrate .. //depot/projects/netperf_socket/sys/pci/if_dc.c#11 integrate .. //depot/projects/netperf_socket/sys/sys/fdcio.h#3 integrate .. //depot/projects/netperf_socket/sys/sys/smp.h#3 integrate .. //depot/projects/netperf_socket/sys/vm/vm_page.h#8 integrate Differences ... ==== //depot/projects/netperf_socket/sys/alpha/linux/linux_proto.h#6 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/linux/linux_proto.h,v 1.18 2004/06/04 13:52:51 jhb Exp $ - * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.58 2004/06/04 13:52:23 jhb Exp + * $FreeBSD: src/sys/alpha/linux/linux_proto.h,v 1.19 2004/08/24 20:24:33 jhb Exp $ + * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.59 2004/08/24 20:21:21 jhb Exp */ #ifndef _LINUX_SYSPROTO_H_ ==== //depot/projects/netperf_socket/sys/alpha/linux/linux_syscall.h#6 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/linux/linux_syscall.h,v 1.16 2004/06/04 13:52:51 jhb Exp $ - * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.58 2004/06/04 13:52:23 jhb Exp + * $FreeBSD: src/sys/alpha/linux/linux_syscall.h,v 1.17 2004/08/24 20:24:33 jhb Exp $ + * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.59 2004/08/24 20:21:21 jhb Exp */ #define LINUX_SYS_exit 1 ==== //depot/projects/netperf_socket/sys/alpha/linux/linux_sysent.c#6 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/linux/linux_sysent.c,v 1.16 2004/06/04 13:52:51 jhb Exp $ - * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.58 2004/06/04 13:52:23 jhb Exp + * $FreeBSD: src/sys/alpha/linux/linux_sysent.c,v 1.17 2004/08/24 20:24:33 jhb Exp $ + * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.59 2004/08/24 20:21:21 jhb Exp */ #include "opt_compat.h" @@ -109,7 +109,7 @@ { 0, (sy_call_t *)linux_getdtablesize }, /* 89 = linux_getdtablesize */ { SYF_MPSAFE | AS(dup2_args), (sy_call_t *)dup2 }, /* 90 = dup2 */ { AS(linux_newfstat_args), (sy_call_t *)linux_newfstat }, /* 91 = linux_newfstat */ - { AS(linux_fcntl_args), (sy_call_t *)linux_fcntl }, /* 92 = linux_fcntl */ + { SYF_MPSAFE | AS(linux_fcntl_args), (sy_call_t *)linux_fcntl }, /* 92 = linux_fcntl */ { AS(osf1_select_args), (sy_call_t *)osf1_select }, /* 93 = osf1_select */ { AS(poll_args), (sy_call_t *)poll }, /* 94 = poll */ { AS(fsync_args), (sy_call_t *)fsync }, /* 95 = fsync */ ==== //depot/projects/netperf_socket/sys/alpha/linux/syscalls.master#6 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.58 2004/06/04 13:52:23 jhb Exp $ + $FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.59 2004/08/24 20:21:21 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -133,7 +133,7 @@ 89 STD { int linux_getdtablesize(void); } 90 MNOPROTO { int dup2(u_int from, u_int to); } 91 STD { int linux_newfstat(l_uint fd, struct l_newstat *buf); } -92 STD { int linux_fcntl(l_uint fd, l_uint cmd, l_ulong arg); } +92 MSTD { int linux_fcntl(l_uint fd, l_uint cmd, l_ulong arg); } 93 STD { int osf1_select(u_int nd, fd_set *in, fd_set *ou, \ fd_set *ex, struct timeval *tv); } 94 NOPROTO { int poll(struct pollfd*, unsigned int nfds, long timeout); } ==== //depot/projects/netperf_socket/sys/alpha/osf1/osf1_misc.c#5 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/osf1/osf1_misc.c,v 1.47 2004/07/26 07:24:01 cperciva Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/osf1/osf1_misc.c,v 1.48 2004/08/24 20:21:21 jhb Exp $"); #include #include @@ -60,6 +60,7 @@ #include #include #include +#include #include #include #include @@ -758,19 +759,14 @@ { int error; long tmp; - caddr_t oarg, sg; - struct fcntl_args a; struct osf1_flock osf_flock; struct flock bsd_flock; - struct flock *nflock; error = 0; switch (uap->cmd) { case F_SETFL: - a.fd = uap->fd; - a.cmd = F_SETFL; /* need to translate flags here */ tmp = 0; if ((long)uap->arg & OSF1_FNONBLOCK) @@ -791,8 +787,7 @@ tmp |= FNDELAY; if ((long)uap->arg & OSF1_FSYNC) tmp |= FFSYNC; - a.arg = tmp; - error = fcntl(td, &a); + error = kern_fcntl(td, uap->fd, F_SETFL, tmp); break; case F_SETLK: @@ -803,20 +798,15 @@ * the BSD one, but all else is the same. We must * reorder the one we've gotten so that flock() groks it. */ - if ((error = copyin(uap->arg, &osf_flock, sizeof(osf_flock)))) - return error; + error = copyin(uap->arg, &osf_flock, sizeof(osf_flock)); + if (error) + return (error); bsd_flock.l_type = osf_flock.l_type; bsd_flock.l_whence = osf_flock.l_whence; bsd_flock.l_start = osf_flock.l_start; bsd_flock.l_len = osf_flock.l_len; bsd_flock.l_pid = osf_flock.l_pid; - sg = stackgap_init(); - nflock = stackgap_alloc(&sg, sizeof(struct flock)); - if ((error = copyout(&bsd_flock, nflock, sizeof(bsd_flock))) != 0) - return error; - oarg = uap->arg; - uap->arg = nflock; - error = fcntl(td, (struct fcntl_args *) uap); + error = kern_fcntl(td, uap->fd, uap->cmd, (intptr_t)&bsd_flock); /* if (error) { printf("fcntl called with cmd=%d, args=0x%lx\n returns %d\n",uap->cmd,(long)uap->arg,error); printf("bsd_flock.l_type = 0x%x\n", bsd_flock.l_type); @@ -827,14 +817,17 @@ } */ if ((uap->cmd == F_GETLK) && !error) { + /* + * XXX: Why are we hardcoding F_UNLCK here instead of + * copying the structure members from bsd_flock? + */ osf_flock.l_type = F_UNLCK; - if ((error = copyout(&osf_flock, oarg, - sizeof(osf_flock)))) - return error; + error = copyout(&osf_flock, uap->arg, + sizeof(osf_flock)); } break; default: - error = fcntl(td, (struct fcntl_args *) uap); + error = kern_fcntl(td, uap->fd, uap->cmd, (intptr_t)uap->arg); if ((uap->cmd == OSF1_F_GETFL) && !error ) { tmp = td->td_retval[0] & O_ACCMODE; ==== //depot/projects/netperf_socket/sys/alpha/osf1/osf1_proto.h#4 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/osf1/osf1_proto.h,v 1.10 2004/03/15 22:44:35 jhb Exp $ - * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.9 2004/03/15 22:43:49 jhb Exp + * $FreeBSD: src/sys/alpha/osf1/osf1_proto.h,v 1.11 2004/08/24 20:24:33 jhb Exp $ + * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.10 2004/08/24 20:21:21 jhb Exp */ #ifndef _OSF1_SYSPROTO_H_ ==== //depot/projects/netperf_socket/sys/alpha/osf1/osf1_syscall.h#4 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/osf1/osf1_syscall.h,v 1.9 2004/03/15 22:44:35 jhb Exp $ - * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.9 2004/03/15 22:43:49 jhb Exp + * $FreeBSD: src/sys/alpha/osf1/osf1_syscall.h,v 1.10 2004/08/24 20:24:33 jhb Exp $ + * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.10 2004/08/24 20:21:21 jhb Exp */ #define OSF1_SYS_nosys 0 ==== //depot/projects/netperf_socket/sys/alpha/osf1/osf1_sysent.c#4 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/osf1/osf1_sysent.c,v 1.9 2004/03/15 22:44:35 jhb Exp $ - * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.9 2004/03/15 22:43:49 jhb Exp + * $FreeBSD: src/sys/alpha/osf1/osf1_sysent.c,v 1.10 2004/08/24 20:24:33 jhb Exp $ + * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.10 2004/08/24 20:21:21 jhb Exp */ #include "opt_compat.h" @@ -110,7 +110,7 @@ { SYF_MPSAFE | 0, (sy_call_t *)getdtablesize }, /* 89 = getdtablesize */ { SYF_MPSAFE | AS(dup2_args), (sy_call_t *)dup2 }, /* 90 = dup2 */ { AS(osf1_fstat_args), (sy_call_t *)osf1_fstat }, /* 91 = osf1_fstat */ - { AS(osf1_fcntl_args), (sy_call_t *)osf1_fcntl }, /* 92 = osf1_fcntl */ + { SYF_MPSAFE | AS(osf1_fcntl_args), (sy_call_t *)osf1_fcntl }, /* 92 = osf1_fcntl */ { AS(osf1_select_args), (sy_call_t *)osf1_select }, /* 93 = osf1_select */ { AS(poll_args), (sy_call_t *)poll }, /* 94 = poll */ { AS(fsync_args), (sy_call_t *)fsync }, /* 95 = fsync */ ==== //depot/projects/netperf_socket/sys/alpha/osf1/syscalls.master#4 (text+ko) ==== @@ -1,4 +1,4 @@ -; $FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.9 2004/03/15 22:43:49 jhb Exp $ +; $FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.10 2004/08/24 20:21:21 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from OSF1). @@ -135,7 +135,7 @@ 89 MNOPROTO { int getdtablesize(void); } 90 MNOPROTO { int dup2(u_int from, u_int to); } 91 STD { int osf1_fstat(int fd, void *sb); } -92 STD { int osf1_fcntl(int fd, int cmd, void *arg); } +92 MSTD { int osf1_fcntl(int fd, int cmd, void *arg); } 93 STD { int osf1_select(u_int nd, fd_set *in, fd_set *ou, \ fd_set *ex, struct timeval *tv); } 94 NOPROTO { int poll(struct pollfd *fds, u_int nfds, int timeout); } ==== //depot/projects/netperf_socket/sys/amd64/amd64/machdep.c#16 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.618 2004/08/16 22:57:47 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.619 2004/08/24 00:16:43 peter Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -498,6 +498,10 @@ cpu_idle(void) { +#ifdef SMP + if (mp_grab_cpu_hlt()) + return; +#endif if (cpu_idle_hlt) { disable_intr(); if (sched_runnable()) ==== //depot/projects/netperf_socket/sys/amd64/amd64/mp_machdep.c#10 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.242 2004/08/13 22:30:55 ambrisko Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.243 2004/08/23 21:39:28 peter Exp $"); #include "opt_cpu.h" #include "opt_kstack_pages.h" @@ -103,7 +103,6 @@ vm_offset_t smp_tlb_addr1; vm_offset_t smp_tlb_addr2; volatile int smp_tlb_wait; -struct mtx smp_tlb_mtx; extern inthand_t IDTVEC(fast_syscall), IDTVEC(fast_syscall32); @@ -319,8 +318,6 @@ /* Install an inter-CPU IPI for CPU stop/restart */ setidt(IPI_STOP, IDTVEC(cpustop), SDT_SYSIGT, SEL_KPL, 0); - mtx_init(&smp_tlb_mtx, "tlb", NULL, MTX_SPIN); - /* Set boot_cpu_id if needed. */ if (boot_cpu_id == -1) { boot_cpu_id = PCPU_GET(apic_id); @@ -711,7 +708,7 @@ ncpu = mp_ncpus - 1; /* does not shootdown self */ if (ncpu < 1) return; /* no other cpus */ - mtx_assert(&smp_tlb_mtx, MA_OWNED); + mtx_assert(&smp_rv_mtx, MA_OWNED); smp_tlb_addr1 = addr1; smp_tlb_addr2 = addr2; atomic_store_rel_int(&smp_tlb_wait, 0); @@ -797,7 +794,7 @@ if (ncpu < 1) return; } - mtx_assert(&smp_tlb_mtx, MA_OWNED); + mtx_assert(&smp_rv_mtx, MA_OWNED); smp_tlb_addr1 = addr1; smp_tlb_addr2 = addr2; atomic_store_rel_int(&smp_tlb_wait, 0); ==== //depot/projects/netperf_socket/sys/amd64/amd64/nexus.c#6 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/nexus.c,v 1.62 2004/07/08 01:34:24 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/nexus.c,v 1.63 2004/08/24 19:22:54 njl Exp $"); /* * This code implements a `root nexus' for Intel Architecture @@ -97,6 +97,7 @@ void (*)(void *), void *, void **); static int nexus_teardown_intr(device_t, device_t, struct resource *, void *); +static struct resource_list *nexus_get_reslist(device_t dev, device_t child); static int nexus_set_resource(device_t, device_t, int, int, u_long, u_long); static int nexus_get_resource(device_t, device_t, int, int, u_long *, u_long *); static void nexus_delete_resource(device_t, device_t, int, int); @@ -120,6 +121,7 @@ DEVMETHOD(bus_setup_intr, nexus_setup_intr), DEVMETHOD(bus_teardown_intr, nexus_teardown_intr), DEVMETHOD(bus_config_intr, nexus_config_intr), + DEVMETHOD(bus_get_resource_list, nexus_get_reslist), DEVMETHOD(bus_set_resource, nexus_set_resource), DEVMETHOD(bus_get_resource, nexus_get_resource), DEVMETHOD(bus_delete_resource, nexus_delete_resource), @@ -464,6 +466,14 @@ return (intr_config_intr(irq, trig, pol)); } +static struct resource_list * +nexus_get_reslist(device_t dev, device_t child) +{ + struct nexus_device *ndev = DEVTONX(child); + + return (&ndev->nx_resources); +} + static int nexus_set_resource(device_t dev, device_t child, int type, int rid, u_long start, u_long count) { ==== //depot/projects/netperf_socket/sys/amd64/amd64/pmap.c#25 (text+ko) ==== @@ -75,7 +75,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.491 2004/08/08 00:31:58 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.493 2004/08/24 00:17:52 peter Exp $"); /* * Manages physical address maps. @@ -631,7 +631,7 @@ if (smp_started) { if (!(read_rflags() & PSL_I)) panic("%s: interrupts disabled", __func__); - mtx_lock_spin(&smp_tlb_mtx); + mtx_lock_spin(&smp_rv_mtx); } else critical_enter(); /* @@ -652,7 +652,7 @@ smp_masked_invlpg(pmap->pm_active & other_cpus, va); } if (smp_started) - mtx_unlock_spin(&smp_tlb_mtx); + mtx_unlock_spin(&smp_rv_mtx); else critical_exit(); } @@ -667,7 +667,7 @@ if (smp_started) { if (!(read_rflags() & PSL_I)) panic("%s: interrupts disabled", __func__); - mtx_lock_spin(&smp_tlb_mtx); + mtx_lock_spin(&smp_rv_mtx); } else critical_enter(); /* @@ -691,7 +691,7 @@ sva, eva); } if (smp_started) - mtx_unlock_spin(&smp_tlb_mtx); + mtx_unlock_spin(&smp_rv_mtx); else critical_exit(); } @@ -705,7 +705,7 @@ if (smp_started) { if (!(read_rflags() & PSL_I)) panic("%s: interrupts disabled", __func__); - mtx_lock_spin(&smp_tlb_mtx); + mtx_lock_spin(&smp_rv_mtx); } else critical_enter(); /* @@ -726,7 +726,7 @@ smp_masked_invltlb(pmap->pm_active & other_cpus); } if (smp_started) - mtx_unlock_spin(&smp_tlb_mtx); + mtx_unlock_spin(&smp_rv_mtx); else critical_exit(); } @@ -1048,9 +1048,7 @@ if (va >= VM_MAXUSER_ADDRESS) return 0; -/* XXX this should be an error, all cases should be caught now */ - if (ptepde == 0) - ptepde = *pmap_pde(pmap, va); + KASSERT(ptepde != 0, ("pmap_unuse_pt: ptepde != 0")); mpte = PHYS_TO_VM_PAGE(ptepde & PG_FRAME); return pmap_unwire_pte_hold(pmap, va, mpte); } ==== //depot/projects/netperf_socket/sys/amd64/linux32/linux32_machdep.c#2 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.2 2004/08/16 10:54:25 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.3 2004/08/24 20:52:52 jhb Exp $"); #include #include @@ -849,8 +849,8 @@ ss.ss_size = lss.ss_size; ss.ss_flags = linux_to_bsd_sigaltstack(lss.ss_flags); } - error = kern_sigaltstack(td, (uap->uoss != NULL) ? &oss : NULL, - (uap->uss != NULL) ? &ss : NULL); + error = kern_sigaltstack(td, (uap->uss != NULL) ? &ss : NULL, + (uap->uoss != NULL) ? &oss : NULL); if (!error && uap->uoss != NULL) { lss.ss_sp = PTROUT(oss.ss_sp); lss.ss_size = oss.ss_size; ==== //depot/projects/netperf_socket/sys/boot/alpha/Makefile.inc#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/boot/alpha/Makefile.inc,v 1.10 2004/08/22 06:24:59 marcel Exp $ +# $FreeBSD: src/sys/boot/alpha/Makefile.inc,v 1.11 2004/08/23 16:25:07 obrien Exp $ # Options used when building app-specific libalpha components BINDIR?= /boot ==== //depot/projects/netperf_socket/sys/boot/ficl/Makefile#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.38 2004/08/22 06:24:59 marcel Exp $ +# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.39 2004/08/23 16:25:07 obrien Exp $ # .PATH: ${.CURDIR}/${MACHINE_ARCH:S/amd64/i386/} BASE_SRCS= dict.c ficl.c fileaccess.c float.c loader.c math64.c \ ==== //depot/projects/netperf_socket/sys/compat/linux/linux_socket.c#6 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_socket.c,v 1.51 2004/08/16 07:28:16 tjr Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_socket.c,v 1.53 2004/08/24 20:21:21 jhb Exp $"); /* XXX we use functions that might not exist. */ #include "opt_compat.h" @@ -674,12 +674,7 @@ struct close_args /* { int fd; } */ c_args; - struct fcntl_args /* { - int fd; - int cmd; - long arg; - } */ f_args; - int error; + int error, fd; if ((error = copyin(args, &linux_args, sizeof(linux_args)))) return (error); @@ -705,11 +700,9 @@ * accepted one, so we must clear the flags in the new descriptor. * Ignore any errors, because we already have an open fd. */ - f_args.fd = td->td_retval[0]; - f_args.cmd = F_SETFL; - f_args.arg = 0; - (void)fcntl(td, &f_args); - td->td_retval[0] = f_args.fd; + fd = td->td_retval[0]; + (void)kern_fcntl(td, fd, F_SETFL, 0); + td->td_retval[0] = fd; return (0); } @@ -1011,7 +1004,8 @@ if (error) return (error); - if (bsd_args.msg->msg_control != NULL) { + if (bsd_args.msg->msg_control != NULL && + bsd_args.msg->msg_controllen > 0) { cmsg = (struct cmsghdr*)bsd_args.msg->msg_control; cmsg->cmsg_level = bsd_to_linux_sockopt_level(cmsg->cmsg_level); } ==== //depot/projects/netperf_socket/sys/compat/svr4/svr4_fcntl.c#2 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_fcntl.c,v 1.32 2003/06/22 08:41:41 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_fcntl.c,v 1.33 2004/08/24 20:21:21 jhb Exp $"); #include "opt_mac.h" @@ -46,6 +46,7 @@ #include #include #include +#include #include #include @@ -580,29 +581,24 @@ register struct thread *td; struct svr4_sys_fcntl_args *uap; { - int error; - struct fcntl_args fa; - int *retval; + int cmd, error, *retval; retval = td->td_retval; - fa.fd = uap->fd; - fa.cmd = svr4_to_bsd_cmd(uap->cmd); + cmd = svr4_to_bsd_cmd(uap->cmd); - switch (fa.cmd) { + switch (cmd) { case F_DUPFD: case F_GETFD: case F_SETFD: - fa.arg = (long) uap->arg; - return fcntl(td, &fa); + return (kern_fcntl(td, uap->fd, cmd, (intptr_t)uap->arg)); case F_GETFL: - fa.arg = (long) uap->arg; - error = fcntl(td, &fa); + error = kern_fcntl(td, uap->fd, cmd, (intptr_t)uap->arg); if (error) - return error; + return (error); *retval = bsd_to_svr4_flags(*retval); - return error; + return (error); case F_SETFL: { @@ -610,55 +606,39 @@ * we must save the O_ASYNC flag, as that is * handled by ioctl(_, I_SETSIG, _) emulation. */ - long cmd; int flags; DPRINTF(("Setting flags %p\n", uap->arg)); - cmd = fa.cmd; /* save it for a while */ - fa.cmd = F_GETFL; - if ((error = fcntl(td, &fa)) != 0) - return error; + error = kern_fcntl(td, uap->fd, F_GETFL, 0); + if (error) + return (error); flags = *retval; flags &= O_ASYNC; flags |= svr4_to_bsd_flags((u_long) uap->arg); - fa.cmd = cmd; - fa.arg = (long) flags; - return fcntl(td, &fa); + return (kern_fcntl(td, uap->fd, F_SETFL, flags)); } case F_GETLK: case F_SETLK: case F_SETLKW: { - struct svr4_flock ifl; - struct flock *flp, fl; - caddr_t sg = stackgap_init(); + struct svr4_flock ifl; + struct flock fl; - flp = stackgap_alloc(&sg, sizeof(struct flock)); - fa.arg = (long) flp; - - error = copyin(uap->arg, &ifl, sizeof ifl); + error = copyin(uap->arg, &ifl, sizeof (ifl)); if (error) - return error; + return (error); svr4_to_bsd_flock(&ifl, &fl); - error = copyout(&fl, flp, sizeof fl); - if (error) - return error; + error = kern_fcntl(td, uap->fd, cmd, (intptr_t)&fl); + if (error || cmd != F_GETLK) + return (error); - error = fcntl(td, &fa); - if (error || fa.cmd != F_GETLK) - return error; - - error = copyin(flp, &fl, sizeof fl); - if (error) - return error; - bsd_to_svr4_flock(&fl, &ifl); - return copyout(&ifl, uap->arg, sizeof ifl); + return (copyout(&ifl, uap->arg, sizeof (ifl))); } case -1: switch (uap->cmd) { @@ -692,36 +672,36 @@ case SVR4_F_SETLK64: case SVR4_F_SETLKW64: { - struct svr4_flock64 ifl; - struct flock *flp, fl; - caddr_t sg = stackgap_init(); + struct svr4_flock64 ifl; + struct flock fl; - flp = stackgap_alloc(&sg, sizeof(struct flock)); - fa.arg = (long) flp; - + switch (uap->cmd) { + case SVR4_F_GETLK64: + cmd = F_GETLK; + break; + case SVR4_F_SETLK64: + cmd = F_SETLK; + break; + case SVR4_F_SETLKW64: + cmd = F_SETLKW; + break; + } error = copyin(uap->arg, &ifl, - sizeof ifl); + sizeof (ifl)); if (error) - return error; + return (error); svr4_to_bsd_flock64(&ifl, &fl); - error = copyout(&fl, flp, sizeof fl); - if (error) - return error; + error = kern_fcntl(td, uap->fd, cmd, + (intptr_t)&fl); + if (error || cmd != F_GETLK) + return (error); - error = fcntl(td, &fa); - if (error || fa.cmd != F_GETLK) - return error; - - error = copyin(flp, &fl, sizeof fl); - if (error) - return error; - bsd_to_svr4_flock64(&fl, &ifl); - return copyout(&ifl, uap->arg, - sizeof ifl); + return (copyout(&ifl, uap->arg, + sizeof (ifl))); } case SVR4_F_FREESP64: ==== //depot/projects/netperf_socket/sys/compat/svr4/svr4_proto.h#3 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/svr4/svr4_proto.h,v 1.15 2004/02/06 20:21:18 jhb Exp $ - * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.15 2004/02/06 20:07:33 jhb Exp + * $FreeBSD: src/sys/compat/svr4/svr4_proto.h,v 1.16 2004/08/24 20:24:33 jhb Exp $ + * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.16 2004/08/24 20:21:21 jhb Exp */ #ifndef _SVR4_SYSPROTO_H_ ==== //depot/projects/netperf_socket/sys/compat/svr4/svr4_stream.c#5 (text+ko) ==== @@ -36,7 +36,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_stream.c,v 1.49 2004/07/10 15:42:16 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_stream.c,v 1.50 2004/08/24 20:21:21 jhb Exp $"); #define COMPAT_43 1 @@ -60,6 +60,7 @@ #include #include #include +#include #include #include #include /* Must come after sys/uio.h */ @@ -1473,7 +1474,6 @@ * We alse have to fix the O_ASYNC fcntl bit, so the * process will get SIGPOLLs. */ - struct fcntl_args fa; int error; register_t oflags, flags; struct svr4_strm *st = svr4_stream_get(fp); @@ -1483,10 +1483,9 @@ return EINVAL; } /* get old status flags */ - fa.fd = fd; - fa.cmd = F_GETFL; - if ((error = fcntl(td, &fa)) != 0) - return error; + error = kern_fcntl(td, fd, F_GETFL, 0); + if (error) + return (error); oflags = td->td_retval[0]; @@ -1512,19 +1511,15 @@ /* set the new flags, if changed */ if (flags != oflags) { - fa.cmd = F_SETFL; - fa.arg = (long) flags; - if ((error = fcntl(td, &fa)) != 0) - return error; + error = kern_fcntl(td, fd, F_SETFL, flags); + if (error) + return (error); flags = td->td_retval[0]; } /* set up SIGIO receiver if needed */ - if (dat != NULL) { - fa.cmd = F_SETOWN; - fa.arg = (long) td->td_proc->p_pid; - return fcntl(td, &fa); - } + if (dat != NULL) + return (kern_fcntl(td, fd, F_SETOWN, td->td_proc->p_pid)); return 0; } ==== //depot/projects/netperf_socket/sys/compat/svr4/svr4_syscall.h#3 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/svr4/svr4_syscall.h,v 1.13 2004/02/06 20:21:18 jhb Exp $ - * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.15 2004/02/06 20:07:33 jhb Exp + * $FreeBSD: src/sys/compat/svr4/svr4_syscall.h,v 1.14 2004/08/24 20:24:33 jhb Exp $ + * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.16 2004/08/24 20:21:21 jhb Exp */ #define SVR4_SYS_exit 1 ==== //depot/projects/netperf_socket/sys/compat/svr4/svr4_syscallnames.c#3 (text+ko) ==== @@ -2,8 +2,8 @@ * System call names. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/svr4/svr4_syscallnames.c,v 1.13 2004/02/06 20:21:18 jhb Exp $ - * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.15 2004/02/06 20:07:33 jhb Exp + * $FreeBSD: src/sys/compat/svr4/svr4_syscallnames.c,v 1.14 2004/08/24 20:24:33 jhb Exp $ + * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.16 2004/08/24 20:21:21 jhb Exp */ const char *svr4_syscallnames[] = { ==== //depot/projects/netperf_socket/sys/compat/svr4/svr4_sysent.c#3 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/svr4/svr4_sysent.c,v 1.14 2004/02/06 20:21:18 jhb Exp $ - * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.15 2004/02/06 20:07:33 jhb Exp + * $FreeBSD: src/sys/compat/svr4/svr4_sysent.c,v 1.15 2004/08/24 20:24:33 jhb Exp $ + * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.16 2004/08/24 20:21:21 jhb Exp */ #include @@ -85,7 +85,7 @@ { AS(svr4_sys_execve_args), (sy_call_t *)svr4_sys_execve }, /* 59 = svr4_sys_execve */ { SYF_MPSAFE | AS(umask_args), (sy_call_t *)umask }, /* 60 = umask */ { AS(chroot_args), (sy_call_t *)chroot }, /* 61 = chroot */ - { AS(svr4_sys_fcntl_args), (sy_call_t *)svr4_sys_fcntl }, /* 62 = svr4_sys_fcntl */ + { SYF_MPSAFE | AS(svr4_sys_fcntl_args), (sy_call_t *)svr4_sys_fcntl }, /* 62 = svr4_sys_fcntl */ { SYF_MPSAFE | AS(svr4_sys_ulimit_args), (sy_call_t *)svr4_sys_ulimit }, /* 63 = svr4_sys_ulimit */ { 0, (sy_call_t *)nosys }, /* 64 = reserved */ { 0, (sy_call_t *)nosys }, /* 65 = reserved */ ==== //depot/projects/netperf_socket/sys/compat/svr4/syscalls.master#3 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.15 2004/02/06 20:07:33 jhb Exp $ + $FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.16 2004/08/24 20:21:21 jhb Exp $ ; from: @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; ; System call name/number master file (or rather, slave, from SVR4). @@ -100,7 +100,7 @@ 59 STD { int svr4_sys_execve(char *path, char **argp, char **envp); } 60 MNOPROTO { int umask(int newmask); } 61 NOPROTO { int chroot(char *path); } -62 STD { int svr4_sys_fcntl(int fd, int cmd, char *arg); } +62 MSTD { int svr4_sys_fcntl(int fd, int cmd, char *arg); } 63 MSTD { int svr4_sys_ulimit(int cmd, long newlimit); } 64 UNIMPL reserved 65 UNIMPL reserved ==== //depot/projects/netperf_socket/sys/conf/files#49 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.943 2004/08/17 22:05:53 andre Exp $ +# $FreeBSD: src/sys/conf/files,v 1.944 2004/08/23 03:00:25 rwatson Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -1517,7 +1517,6 @@ netinet6/in6_gif.c optional gif inet6 netinet6/in6_ifattach.c optional inet6 netinet6/in6_pcb.c optional inet6 -netinet6/in6_prefix.c optional inet6 netinet6/in6_proto.c optional inet6 netinet6/in6_rmx.c optional inet6 netinet6/in6_src.c optional inet6 ==== //depot/projects/netperf_socket/sys/conf/ldscript.ia64#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/conf/ldscript.ia64,v 1.11 2004/06/20 22:32:19 marcel Exp $ */ +/* $FreeBSD: src/sys/conf/ldscript.ia64,v 1.12 2004/08/25 07:43:28 marcel Exp $ */ OUTPUT_FORMAT("elf64-ia64-little", "elf64-ia64-little", "elf64-ia64-little") OUTPUT_ARCH(ia64) ENTRY(__start) @@ -30,6 +30,7 @@ .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.plt : { *(.rela.plt) } .rela.IA_64.pltoff : { *(.rela.IA_64.pltoff) } + PROVIDE (btext = .); .init : { *(.init) ==== //depot/projects/netperf_socket/sys/dev/acpica/acpi.c#39 (text+ko) ==== >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Aug 26 01:18:03 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 13C8216A4D2; Thu, 26 Aug 2004 01:18:03 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CADC416A4CF for ; Thu, 26 Aug 2004 01:18:02 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A678643D46 for ; Thu, 26 Aug 2004 01:18:02 +0000 (GMT) (envelope-from julian@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7Q1I2AT091345 for ; Thu, 26 Aug 2004 01:18:02 GMT (envelope-from julian@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7Q1I2YL091341 for perforce@freebsd.org; Thu, 26 Aug 2004 01:18:02 GMT (envelope-from julian@freebsd.org) Date: Thu, 26 Aug 2004 01:18:02 GMT Message-Id: <200408260118.i7Q1I2YL091341@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to julian@freebsd.org using -f From: Julian Elischer To: Perforce Change Reviews Subject: PERFORCE change 60437 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 26 Aug 2004 01:18:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=60437 Change 60437 by julian@julian_ref on 2004/08/26 01:17:35 IFC @60433 Affected files ... .. //depot/projects/nsched/sys/alpha/linux/linux_proto.h#3 integrate .. //depot/projects/nsched/sys/alpha/linux/linux_syscall.h#3 integrate .. //depot/projects/nsched/sys/alpha/linux/linux_sysent.c#3 integrate .. //depot/projects/nsched/sys/alpha/linux/syscalls.master#3 integrate .. //depot/projects/nsched/sys/alpha/osf1/osf1_misc.c#3 integrate .. //depot/projects/nsched/sys/alpha/osf1/osf1_proto.h#2 integrate .. //depot/projects/nsched/sys/alpha/osf1/osf1_syscall.h#2 integrate .. //depot/projects/nsched/sys/alpha/osf1/osf1_sysent.c#2 integrate .. //depot/projects/nsched/sys/alpha/osf1/syscalls.master#2 integrate .. //depot/projects/nsched/sys/amd64/amd64/machdep.c#8 integrate .. //depot/projects/nsched/sys/amd64/amd64/mp_machdep.c#5 integrate .. //depot/projects/nsched/sys/amd64/amd64/nexus.c#6 integrate .. //depot/projects/nsched/sys/amd64/amd64/pmap.c#15 integrate .. //depot/projects/nsched/sys/amd64/linux32/linux32_machdep.c#2 integrate .. //depot/projects/nsched/sys/compat/linux/linux_socket.c#5 integrate .. //depot/projects/nsched/sys/compat/svr4/svr4_fcntl.c#2 integrate .. //depot/projects/nsched/sys/compat/svr4/svr4_proto.h#2 integrate .. //depot/projects/nsched/sys/compat/svr4/svr4_stream.c#5 integrate .. //depot/projects/nsched/sys/compat/svr4/svr4_syscall.h#2 integrate .. //depot/projects/nsched/sys/compat/svr4/svr4_syscallnames.c#2 integrate .. //depot/projects/nsched/sys/compat/svr4/svr4_sysent.c#2 integrate .. //depot/projects/nsched/sys/compat/svr4/syscalls.master#2 integrate .. //depot/projects/nsched/sys/conf/ldscript.ia64#3 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_lid.c#7 integrate .. //depot/projects/nsched/sys/dev/ata/ata-all.c#8 integrate .. //depot/projects/nsched/sys/dev/ata/ata-chipset.c#8 integrate .. //depot/projects/nsched/sys/dev/ata/atapi-cd.c#5 integrate .. //depot/projects/nsched/sys/dev/mpt/mpt_freebsd.c#3 integrate .. //depot/projects/nsched/sys/dev/uart/uart_bus_isa.c#3 integrate .. //depot/projects/nsched/sys/geom/mirror/g_mirror.c#2 integrate .. //depot/projects/nsched/sys/geom/raid3/g_raid3.c#3 integrate .. //depot/projects/nsched/sys/geom/stripe/g_stripe.c#5 integrate .. //depot/projects/nsched/sys/i386/acpica/acpi_panasonic.c#2 integrate .. //depot/projects/nsched/sys/i386/i386/mp_machdep.c#5 integrate .. //depot/projects/nsched/sys/i386/i386/pmap.c#13 integrate .. //depot/projects/nsched/sys/i386/ibcs2/ibcs2_fcntl.c#2 integrate .. //depot/projects/nsched/sys/i386/ibcs2/ibcs2_proto.h#2 integrate .. //depot/projects/nsched/sys/i386/ibcs2/ibcs2_syscall.h#2 integrate .. //depot/projects/nsched/sys/i386/ibcs2/ibcs2_sysent.c#3 integrate .. //depot/projects/nsched/sys/i386/ibcs2/syscalls.master#2 integrate .. //depot/projects/nsched/sys/i386/include/in_cksum.h#3 integrate .. //depot/projects/nsched/sys/i386/linux/linux_machdep.c#2 integrate .. //depot/projects/nsched/sys/i386/linux/linux_proto.h#2 integrate .. //depot/projects/nsched/sys/i386/linux/linux_syscall.h#2 integrate .. //depot/projects/nsched/sys/i386/linux/linux_sysent.c#2 integrate .. //depot/projects/nsched/sys/i386/linux/syscalls.master#2 integrate .. //depot/projects/nsched/sys/ia64/conf/GENERIC#5 integrate .. //depot/projects/nsched/sys/ia64/ia64/nexus.c#3 integrate .. //depot/projects/nsched/sys/ia64/ia64/support.S#2 integrate .. //depot/projects/nsched/sys/ia64/include/asm.h#2 integrate .. //depot/projects/nsched/sys/ia64/include/cpu.h#6 integrate .. //depot/projects/nsched/sys/ia64/include/profile.h#3 integrate .. //depot/projects/nsched/sys/kern/kern_kse.c#24 integrate .. //depot/projects/nsched/sys/kern/subr_bus.c#7 integrate .. //depot/projects/nsched/sys/kern/subr_smp.c#4 integrate .. //depot/projects/nsched/sys/kern/uipc_socket.c#12 integrate .. //depot/projects/nsched/sys/kern/uipc_usrreq.c#11 integrate .. //depot/projects/nsched/sys/net/if_fwsubr.c#4 integrate .. //depot/projects/nsched/sys/net/rtsock.c#7 integrate .. //depot/projects/nsched/sys/netinet/ip_dummynet.c#5 integrate .. //depot/projects/nsched/sys/nfsclient/nfs_socket.c#6 integrate .. //depot/projects/nsched/sys/nfsserver/nfs_serv.c#6 integrate .. //depot/projects/nsched/sys/pci/if_dc.c#8 integrate .. //depot/projects/nsched/sys/sys/smp.h#2 integrate Differences ... ==== //depot/projects/nsched/sys/alpha/linux/linux_proto.h#3 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/linux/linux_proto.h,v 1.18 2004/06/04 13:52:51 jhb Exp $ - * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.58 2004/06/04 13:52:23 jhb Exp + * $FreeBSD: src/sys/alpha/linux/linux_proto.h,v 1.19 2004/08/24 20:24:33 jhb Exp $ + * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.59 2004/08/24 20:21:21 jhb Exp */ #ifndef _LINUX_SYSPROTO_H_ ==== //depot/projects/nsched/sys/alpha/linux/linux_syscall.h#3 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/linux/linux_syscall.h,v 1.16 2004/06/04 13:52:51 jhb Exp $ - * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.58 2004/06/04 13:52:23 jhb Exp + * $FreeBSD: src/sys/alpha/linux/linux_syscall.h,v 1.17 2004/08/24 20:24:33 jhb Exp $ + * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.59 2004/08/24 20:21:21 jhb Exp */ #define LINUX_SYS_exit 1 ==== //depot/projects/nsched/sys/alpha/linux/linux_sysent.c#3 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/linux/linux_sysent.c,v 1.16 2004/06/04 13:52:51 jhb Exp $ - * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.58 2004/06/04 13:52:23 jhb Exp + * $FreeBSD: src/sys/alpha/linux/linux_sysent.c,v 1.17 2004/08/24 20:24:33 jhb Exp $ + * created from FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.59 2004/08/24 20:21:21 jhb Exp */ #include "opt_compat.h" @@ -109,7 +109,7 @@ { 0, (sy_call_t *)linux_getdtablesize }, /* 89 = linux_getdtablesize */ { SYF_MPSAFE | AS(dup2_args), (sy_call_t *)dup2 }, /* 90 = dup2 */ { AS(linux_newfstat_args), (sy_call_t *)linux_newfstat }, /* 91 = linux_newfstat */ - { AS(linux_fcntl_args), (sy_call_t *)linux_fcntl }, /* 92 = linux_fcntl */ + { SYF_MPSAFE | AS(linux_fcntl_args), (sy_call_t *)linux_fcntl }, /* 92 = linux_fcntl */ { AS(osf1_select_args), (sy_call_t *)osf1_select }, /* 93 = osf1_select */ { AS(poll_args), (sy_call_t *)poll }, /* 94 = poll */ { AS(fsync_args), (sy_call_t *)fsync }, /* 95 = fsync */ ==== //depot/projects/nsched/sys/alpha/linux/syscalls.master#3 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.58 2004/06/04 13:52:23 jhb Exp $ + $FreeBSD: src/sys/alpha/linux/syscalls.master,v 1.59 2004/08/24 20:21:21 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -133,7 +133,7 @@ 89 STD { int linux_getdtablesize(void); } 90 MNOPROTO { int dup2(u_int from, u_int to); } 91 STD { int linux_newfstat(l_uint fd, struct l_newstat *buf); } -92 STD { int linux_fcntl(l_uint fd, l_uint cmd, l_ulong arg); } +92 MSTD { int linux_fcntl(l_uint fd, l_uint cmd, l_ulong arg); } 93 STD { int osf1_select(u_int nd, fd_set *in, fd_set *ou, \ fd_set *ex, struct timeval *tv); } 94 NOPROTO { int poll(struct pollfd*, unsigned int nfds, long timeout); } ==== //depot/projects/nsched/sys/alpha/osf1/osf1_misc.c#3 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/osf1/osf1_misc.c,v 1.47 2004/07/26 07:24:01 cperciva Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/osf1/osf1_misc.c,v 1.48 2004/08/24 20:21:21 jhb Exp $"); #include #include @@ -60,6 +60,7 @@ #include #include #include +#include #include #include #include @@ -758,19 +759,14 @@ { int error; long tmp; - caddr_t oarg, sg; - struct fcntl_args a; struct osf1_flock osf_flock; struct flock bsd_flock; - struct flock *nflock; error = 0; switch (uap->cmd) { case F_SETFL: - a.fd = uap->fd; - a.cmd = F_SETFL; /* need to translate flags here */ tmp = 0; if ((long)uap->arg & OSF1_FNONBLOCK) @@ -791,8 +787,7 @@ tmp |= FNDELAY; if ((long)uap->arg & OSF1_FSYNC) tmp |= FFSYNC; - a.arg = tmp; - error = fcntl(td, &a); + error = kern_fcntl(td, uap->fd, F_SETFL, tmp); break; case F_SETLK: @@ -803,20 +798,15 @@ * the BSD one, but all else is the same. We must * reorder the one we've gotten so that flock() groks it. */ - if ((error = copyin(uap->arg, &osf_flock, sizeof(osf_flock)))) - return error; + error = copyin(uap->arg, &osf_flock, sizeof(osf_flock)); + if (error) + return (error); bsd_flock.l_type = osf_flock.l_type; bsd_flock.l_whence = osf_flock.l_whence; bsd_flock.l_start = osf_flock.l_start; bsd_flock.l_len = osf_flock.l_len; bsd_flock.l_pid = osf_flock.l_pid; - sg = stackgap_init(); - nflock = stackgap_alloc(&sg, sizeof(struct flock)); - if ((error = copyout(&bsd_flock, nflock, sizeof(bsd_flock))) != 0) - return error; - oarg = uap->arg; - uap->arg = nflock; - error = fcntl(td, (struct fcntl_args *) uap); + error = kern_fcntl(td, uap->fd, uap->cmd, (intptr_t)&bsd_flock); /* if (error) { printf("fcntl called with cmd=%d, args=0x%lx\n returns %d\n",uap->cmd,(long)uap->arg,error); printf("bsd_flock.l_type = 0x%x\n", bsd_flock.l_type); @@ -827,14 +817,17 @@ } */ if ((uap->cmd == F_GETLK) && !error) { + /* + * XXX: Why are we hardcoding F_UNLCK here instead of + * copying the structure members from bsd_flock? + */ osf_flock.l_type = F_UNLCK; - if ((error = copyout(&osf_flock, oarg, - sizeof(osf_flock)))) - return error; + error = copyout(&osf_flock, uap->arg, + sizeof(osf_flock)); } break; default: - error = fcntl(td, (struct fcntl_args *) uap); + error = kern_fcntl(td, uap->fd, uap->cmd, (intptr_t)uap->arg); if ((uap->cmd == OSF1_F_GETFL) && !error ) { tmp = td->td_retval[0] & O_ACCMODE; ==== //depot/projects/nsched/sys/alpha/osf1/osf1_proto.h#2 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/osf1/osf1_proto.h,v 1.10 2004/03/15 22:44:35 jhb Exp $ - * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.9 2004/03/15 22:43:49 jhb Exp + * $FreeBSD: src/sys/alpha/osf1/osf1_proto.h,v 1.11 2004/08/24 20:24:33 jhb Exp $ + * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.10 2004/08/24 20:21:21 jhb Exp */ #ifndef _OSF1_SYSPROTO_H_ ==== //depot/projects/nsched/sys/alpha/osf1/osf1_syscall.h#2 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/osf1/osf1_syscall.h,v 1.9 2004/03/15 22:44:35 jhb Exp $ - * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.9 2004/03/15 22:43:49 jhb Exp + * $FreeBSD: src/sys/alpha/osf1/osf1_syscall.h,v 1.10 2004/08/24 20:24:33 jhb Exp $ + * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.10 2004/08/24 20:21:21 jhb Exp */ #define OSF1_SYS_nosys 0 ==== //depot/projects/nsched/sys/alpha/osf1/osf1_sysent.c#2 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/alpha/osf1/osf1_sysent.c,v 1.9 2004/03/15 22:44:35 jhb Exp $ - * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.9 2004/03/15 22:43:49 jhb Exp + * $FreeBSD: src/sys/alpha/osf1/osf1_sysent.c,v 1.10 2004/08/24 20:24:33 jhb Exp $ + * created from; FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.10 2004/08/24 20:21:21 jhb Exp */ #include "opt_compat.h" @@ -110,7 +110,7 @@ { SYF_MPSAFE | 0, (sy_call_t *)getdtablesize }, /* 89 = getdtablesize */ { SYF_MPSAFE | AS(dup2_args), (sy_call_t *)dup2 }, /* 90 = dup2 */ { AS(osf1_fstat_args), (sy_call_t *)osf1_fstat }, /* 91 = osf1_fstat */ - { AS(osf1_fcntl_args), (sy_call_t *)osf1_fcntl }, /* 92 = osf1_fcntl */ + { SYF_MPSAFE | AS(osf1_fcntl_args), (sy_call_t *)osf1_fcntl }, /* 92 = osf1_fcntl */ { AS(osf1_select_args), (sy_call_t *)osf1_select }, /* 93 = osf1_select */ { AS(poll_args), (sy_call_t *)poll }, /* 94 = poll */ { AS(fsync_args), (sy_call_t *)fsync }, /* 95 = fsync */ ==== //depot/projects/nsched/sys/alpha/osf1/syscalls.master#2 (text+ko) ==== @@ -1,4 +1,4 @@ -; $FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.9 2004/03/15 22:43:49 jhb Exp $ +; $FreeBSD: src/sys/alpha/osf1/syscalls.master,v 1.10 2004/08/24 20:21:21 jhb Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from OSF1). @@ -135,7 +135,7 @@ 89 MNOPROTO { int getdtablesize(void); } 90 MNOPROTO { int dup2(u_int from, u_int to); } 91 STD { int osf1_fstat(int fd, void *sb); } -92 STD { int osf1_fcntl(int fd, int cmd, void *arg); } +92 MSTD { int osf1_fcntl(int fd, int cmd, void *arg); } 93 STD { int osf1_select(u_int nd, fd_set *in, fd_set *ou, \ fd_set *ex, struct timeval *tv); } 94 NOPROTO { int poll(struct pollfd *fds, u_int nfds, int timeout); } ==== //depot/projects/nsched/sys/amd64/amd64/machdep.c#8 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.618 2004/08/16 22:57:47 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.619 2004/08/24 00:16:43 peter Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -498,6 +498,10 @@ cpu_idle(void) { +#ifdef SMP + if (mp_grab_cpu_hlt()) + return; +#endif if (cpu_idle_hlt) { disable_intr(); if (sched_runnable()) ==== //depot/projects/nsched/sys/amd64/amd64/mp_machdep.c#5 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.242 2004/08/13 22:30:55 ambrisko Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.243 2004/08/23 21:39:28 peter Exp $"); #include "opt_cpu.h" #include "opt_kstack_pages.h" @@ -103,7 +103,6 @@ vm_offset_t smp_tlb_addr1; vm_offset_t smp_tlb_addr2; volatile int smp_tlb_wait; -struct mtx smp_tlb_mtx; extern inthand_t IDTVEC(fast_syscall), IDTVEC(fast_syscall32); @@ -319,8 +318,6 @@ /* Install an inter-CPU IPI for CPU stop/restart */ setidt(IPI_STOP, IDTVEC(cpustop), SDT_SYSIGT, SEL_KPL, 0); - mtx_init(&smp_tlb_mtx, "tlb", NULL, MTX_SPIN); - /* Set boot_cpu_id if needed. */ if (boot_cpu_id == -1) { boot_cpu_id = PCPU_GET(apic_id); @@ -711,7 +708,7 @@ ncpu = mp_ncpus - 1; /* does not shootdown self */ if (ncpu < 1) return; /* no other cpus */ - mtx_assert(&smp_tlb_mtx, MA_OWNED); + mtx_assert(&smp_rv_mtx, MA_OWNED); smp_tlb_addr1 = addr1; smp_tlb_addr2 = addr2; atomic_store_rel_int(&smp_tlb_wait, 0); @@ -797,7 +794,7 @@ if (ncpu < 1) return; } - mtx_assert(&smp_tlb_mtx, MA_OWNED); + mtx_assert(&smp_rv_mtx, MA_OWNED); smp_tlb_addr1 = addr1; smp_tlb_addr2 = addr2; atomic_store_rel_int(&smp_tlb_wait, 0); ==== //depot/projects/nsched/sys/amd64/amd64/nexus.c#6 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/nexus.c,v 1.62 2004/07/08 01:34:24 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/nexus.c,v 1.63 2004/08/24 19:22:54 njl Exp $"); /* * This code implements a `root nexus' for Intel Architecture @@ -97,6 +97,7 @@ void (*)(void *), void *, void **); static int nexus_teardown_intr(device_t, device_t, struct resource *, void *); +static struct resource_list *nexus_get_reslist(device_t dev, device_t child); static int nexus_set_resource(device_t, device_t, int, int, u_long, u_long); static int nexus_get_resource(device_t, device_t, int, int, u_long *, u_long *); static void nexus_delete_resource(device_t, device_t, int, int); @@ -120,6 +121,7 @@ DEVMETHOD(bus_setup_intr, nexus_setup_intr), DEVMETHOD(bus_teardown_intr, nexus_teardown_intr), DEVMETHOD(bus_config_intr, nexus_config_intr), + DEVMETHOD(bus_get_resource_list, nexus_get_reslist), DEVMETHOD(bus_set_resource, nexus_set_resource), DEVMETHOD(bus_get_resource, nexus_get_resource), DEVMETHOD(bus_delete_resource, nexus_delete_resource), @@ -464,6 +466,14 @@ return (intr_config_intr(irq, trig, pol)); } +static struct resource_list * +nexus_get_reslist(device_t dev, device_t child) +{ + struct nexus_device *ndev = DEVTONX(child); + + return (&ndev->nx_resources); +} + static int nexus_set_resource(device_t dev, device_t child, int type, int rid, u_long start, u_long count) { ==== //depot/projects/nsched/sys/amd64/amd64/pmap.c#15 (text+ko) ==== @@ -75,7 +75,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.491 2004/08/08 00:31:58 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.493 2004/08/24 00:17:52 peter Exp $"); /* * Manages physical address maps. @@ -631,7 +631,7 @@ if (smp_started) { if (!(read_rflags() & PSL_I)) panic("%s: interrupts disabled", __func__); - mtx_lock_spin(&smp_tlb_mtx); + mtx_lock_spin(&smp_rv_mtx); } else critical_enter(); /* @@ -652,7 +652,7 @@ smp_masked_invlpg(pmap->pm_active & other_cpus, va); } if (smp_started) - mtx_unlock_spin(&smp_tlb_mtx); + mtx_unlock_spin(&smp_rv_mtx); else critical_exit(); } @@ -667,7 +667,7 @@ if (smp_started) { if (!(read_rflags() & PSL_I)) panic("%s: interrupts disabled", __func__); - mtx_lock_spin(&smp_tlb_mtx); + mtx_lock_spin(&smp_rv_mtx); } else critical_enter(); /* @@ -691,7 +691,7 @@ sva, eva); } if (smp_started) - mtx_unlock_spin(&smp_tlb_mtx); + mtx_unlock_spin(&smp_rv_mtx); else critical_exit(); } @@ -705,7 +705,7 @@ if (smp_started) { if (!(read_rflags() & PSL_I)) panic("%s: interrupts disabled", __func__); - mtx_lock_spin(&smp_tlb_mtx); + mtx_lock_spin(&smp_rv_mtx); } else critical_enter(); /* @@ -726,7 +726,7 @@ smp_masked_invltlb(pmap->pm_active & other_cpus); } if (smp_started) - mtx_unlock_spin(&smp_tlb_mtx); + mtx_unlock_spin(&smp_rv_mtx); else critical_exit(); } @@ -1048,9 +1048,7 @@ if (va >= VM_MAXUSER_ADDRESS) return 0; -/* XXX this should be an error, all cases should be caught now */ - if (ptepde == 0) - ptepde = *pmap_pde(pmap, va); + KASSERT(ptepde != 0, ("pmap_unuse_pt: ptepde != 0")); mpte = PHYS_TO_VM_PAGE(ptepde & PG_FRAME); return pmap_unwire_pte_hold(pmap, va, mpte); } ==== //depot/projects/nsched/sys/amd64/linux32/linux32_machdep.c#2 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.2 2004/08/16 10:54:25 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.3 2004/08/24 20:52:52 jhb Exp $"); #include #include @@ -849,8 +849,8 @@ ss.ss_size = lss.ss_size; ss.ss_flags = linux_to_bsd_sigaltstack(lss.ss_flags); } - error = kern_sigaltstack(td, (uap->uoss != NULL) ? &oss : NULL, - (uap->uss != NULL) ? &ss : NULL); + error = kern_sigaltstack(td, (uap->uss != NULL) ? &ss : NULL, + (uap->uoss != NULL) ? &oss : NULL); if (!error && uap->uoss != NULL) { lss.ss_sp = PTROUT(oss.ss_sp); lss.ss_size = oss.ss_size; ==== //depot/projects/nsched/sys/compat/linux/linux_socket.c#5 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_socket.c,v 1.52 2004/08/23 12:41:29 des Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_socket.c,v 1.53 2004/08/24 20:21:21 jhb Exp $"); /* XXX we use functions that might not exist. */ #include "opt_compat.h" @@ -674,12 +674,7 @@ struct close_args /* { int fd; } */ c_args; - struct fcntl_args /* { - int fd; - int cmd; - long arg; - } */ f_args; - int error; + int error, fd; if ((error = copyin(args, &linux_args, sizeof(linux_args)))) return (error); @@ -705,11 +700,9 @@ * accepted one, so we must clear the flags in the new descriptor. * Ignore any errors, because we already have an open fd. */ - f_args.fd = td->td_retval[0]; - f_args.cmd = F_SETFL; - f_args.arg = 0; - (void)fcntl(td, &f_args); - td->td_retval[0] = f_args.fd; + fd = td->td_retval[0]; + (void)kern_fcntl(td, fd, F_SETFL, 0); + td->td_retval[0] = fd; return (0); } ==== //depot/projects/nsched/sys/compat/svr4/svr4_fcntl.c#2 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_fcntl.c,v 1.32 2003/06/22 08:41:41 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_fcntl.c,v 1.33 2004/08/24 20:21:21 jhb Exp $"); #include "opt_mac.h" @@ -46,6 +46,7 @@ #include #include #include +#include #include #include @@ -580,29 +581,24 @@ register struct thread *td; struct svr4_sys_fcntl_args *uap; { - int error; - struct fcntl_args fa; - int *retval; + int cmd, error, *retval; retval = td->td_retval; - fa.fd = uap->fd; - fa.cmd = svr4_to_bsd_cmd(uap->cmd); + cmd = svr4_to_bsd_cmd(uap->cmd); - switch (fa.cmd) { + switch (cmd) { case F_DUPFD: case F_GETFD: case F_SETFD: - fa.arg = (long) uap->arg; - return fcntl(td, &fa); + return (kern_fcntl(td, uap->fd, cmd, (intptr_t)uap->arg)); case F_GETFL: - fa.arg = (long) uap->arg; - error = fcntl(td, &fa); + error = kern_fcntl(td, uap->fd, cmd, (intptr_t)uap->arg); if (error) - return error; + return (error); *retval = bsd_to_svr4_flags(*retval); - return error; + return (error); case F_SETFL: { @@ -610,55 +606,39 @@ * we must save the O_ASYNC flag, as that is * handled by ioctl(_, I_SETSIG, _) emulation. */ - long cmd; int flags; DPRINTF(("Setting flags %p\n", uap->arg)); - cmd = fa.cmd; /* save it for a while */ - fa.cmd = F_GETFL; - if ((error = fcntl(td, &fa)) != 0) - return error; + error = kern_fcntl(td, uap->fd, F_GETFL, 0); + if (error) + return (error); flags = *retval; flags &= O_ASYNC; flags |= svr4_to_bsd_flags((u_long) uap->arg); - fa.cmd = cmd; - fa.arg = (long) flags; - return fcntl(td, &fa); + return (kern_fcntl(td, uap->fd, F_SETFL, flags)); } case F_GETLK: case F_SETLK: case F_SETLKW: { - struct svr4_flock ifl; - struct flock *flp, fl; - caddr_t sg = stackgap_init(); + struct svr4_flock ifl; + struct flock fl; - flp = stackgap_alloc(&sg, sizeof(struct flock)); - fa.arg = (long) flp; - - error = copyin(uap->arg, &ifl, sizeof ifl); + error = copyin(uap->arg, &ifl, sizeof (ifl)); if (error) - return error; + return (error); svr4_to_bsd_flock(&ifl, &fl); - error = copyout(&fl, flp, sizeof fl); - if (error) - return error; + error = kern_fcntl(td, uap->fd, cmd, (intptr_t)&fl); + if (error || cmd != F_GETLK) + return (error); - error = fcntl(td, &fa); - if (error || fa.cmd != F_GETLK) - return error; - - error = copyin(flp, &fl, sizeof fl); - if (error) - return error; - bsd_to_svr4_flock(&fl, &ifl); - return copyout(&ifl, uap->arg, sizeof ifl); + return (copyout(&ifl, uap->arg, sizeof (ifl))); } case -1: switch (uap->cmd) { @@ -692,36 +672,36 @@ case SVR4_F_SETLK64: case SVR4_F_SETLKW64: { - struct svr4_flock64 ifl; - struct flock *flp, fl; - caddr_t sg = stackgap_init(); + struct svr4_flock64 ifl; + struct flock fl; - flp = stackgap_alloc(&sg, sizeof(struct flock)); - fa.arg = (long) flp; - + switch (uap->cmd) { + case SVR4_F_GETLK64: + cmd = F_GETLK; + break; + case SVR4_F_SETLK64: + cmd = F_SETLK; + break; + case SVR4_F_SETLKW64: + cmd = F_SETLKW; + break; + } error = copyin(uap->arg, &ifl, - sizeof ifl); + sizeof (ifl)); if (error) - return error; + return (error); svr4_to_bsd_flock64(&ifl, &fl); - error = copyout(&fl, flp, sizeof fl); - if (error) - return error; + error = kern_fcntl(td, uap->fd, cmd, + (intptr_t)&fl); + if (error || cmd != F_GETLK) + return (error); - error = fcntl(td, &fa); - if (error || fa.cmd != F_GETLK) - return error; - - error = copyin(flp, &fl, sizeof fl); - if (error) - return error; - bsd_to_svr4_flock64(&fl, &ifl); - return copyout(&ifl, uap->arg, - sizeof ifl); + return (copyout(&ifl, uap->arg, + sizeof (ifl))); } case SVR4_F_FREESP64: ==== //depot/projects/nsched/sys/compat/svr4/svr4_proto.h#2 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/svr4/svr4_proto.h,v 1.15 2004/02/06 20:21:18 jhb Exp $ - * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.15 2004/02/06 20:07:33 jhb Exp + * $FreeBSD: src/sys/compat/svr4/svr4_proto.h,v 1.16 2004/08/24 20:24:33 jhb Exp $ + * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.16 2004/08/24 20:21:21 jhb Exp */ #ifndef _SVR4_SYSPROTO_H_ ==== //depot/projects/nsched/sys/compat/svr4/svr4_stream.c#5 (text+ko) ==== @@ -36,7 +36,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_stream.c,v 1.49 2004/07/10 15:42:16 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_stream.c,v 1.50 2004/08/24 20:21:21 jhb Exp $"); #define COMPAT_43 1 @@ -60,6 +60,7 @@ #include #include #include +#include #include #include #include /* Must come after sys/uio.h */ @@ -1473,7 +1474,6 @@ * We alse have to fix the O_ASYNC fcntl bit, so the * process will get SIGPOLLs. */ - struct fcntl_args fa; int error; register_t oflags, flags; struct svr4_strm *st = svr4_stream_get(fp); @@ -1483,10 +1483,9 @@ return EINVAL; } /* get old status flags */ - fa.fd = fd; - fa.cmd = F_GETFL; - if ((error = fcntl(td, &fa)) != 0) - return error; + error = kern_fcntl(td, fd, F_GETFL, 0); + if (error) + return (error); oflags = td->td_retval[0]; @@ -1512,19 +1511,15 @@ /* set the new flags, if changed */ if (flags != oflags) { - fa.cmd = F_SETFL; - fa.arg = (long) flags; - if ((error = fcntl(td, &fa)) != 0) - return error; + error = kern_fcntl(td, fd, F_SETFL, flags); + if (error) + return (error); flags = td->td_retval[0]; } /* set up SIGIO receiver if needed */ - if (dat != NULL) { - fa.cmd = F_SETOWN; - fa.arg = (long) td->td_proc->p_pid; - return fcntl(td, &fa); - } + if (dat != NULL) + return (kern_fcntl(td, fd, F_SETOWN, td->td_proc->p_pid)); return 0; } ==== //depot/projects/nsched/sys/compat/svr4/svr4_syscall.h#2 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/svr4/svr4_syscall.h,v 1.13 2004/02/06 20:21:18 jhb Exp $ - * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.15 2004/02/06 20:07:33 jhb Exp + * $FreeBSD: src/sys/compat/svr4/svr4_syscall.h,v 1.14 2004/08/24 20:24:33 jhb Exp $ + * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.16 2004/08/24 20:21:21 jhb Exp */ #define SVR4_SYS_exit 1 ==== //depot/projects/nsched/sys/compat/svr4/svr4_syscallnames.c#2 (text+ko) ==== @@ -2,8 +2,8 @@ * System call names. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/svr4/svr4_syscallnames.c,v 1.13 2004/02/06 20:21:18 jhb Exp $ - * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.15 2004/02/06 20:07:33 jhb Exp + * $FreeBSD: src/sys/compat/svr4/svr4_syscallnames.c,v 1.14 2004/08/24 20:24:33 jhb Exp $ + * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.16 2004/08/24 20:21:21 jhb Exp */ const char *svr4_syscallnames[] = { ==== //depot/projects/nsched/sys/compat/svr4/svr4_sysent.c#2 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/compat/svr4/svr4_sysent.c,v 1.14 2004/02/06 20:21:18 jhb Exp $ - * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.15 2004/02/06 20:07:33 jhb Exp + * $FreeBSD: src/sys/compat/svr4/svr4_sysent.c,v 1.15 2004/08/24 20:24:33 jhb Exp $ + * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.16 2004/08/24 20:21:21 jhb Exp */ #include @@ -85,7 +85,7 @@ { AS(svr4_sys_execve_args), (sy_call_t *)svr4_sys_execve }, /* 59 = svr4_sys_execve */ { SYF_MPSAFE | AS(umask_args), (sy_call_t *)umask }, /* 60 = umask */ { AS(chroot_args), (sy_call_t *)chroot }, /* 61 = chroot */ - { AS(svr4_sys_fcntl_args), (sy_call_t *)svr4_sys_fcntl }, /* 62 = svr4_sys_fcntl */ + { SYF_MPSAFE | AS(svr4_sys_fcntl_args), (sy_call_t *)svr4_sys_fcntl }, /* 62 = svr4_sys_fcntl */ { SYF_MPSAFE | AS(svr4_sys_ulimit_args), (sy_call_t *)svr4_sys_ulimit }, /* 63 = svr4_sys_ulimit */ { 0, (sy_call_t *)nosys }, /* 64 = reserved */ { 0, (sy_call_t *)nosys }, /* 65 = reserved */ ==== //depot/projects/nsched/sys/compat/svr4/syscalls.master#2 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.15 2004/02/06 20:07:33 jhb Exp $ + $FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.16 2004/08/24 20:21:21 jhb Exp $ ; from: @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; ; System call name/number master file (or rather, slave, from SVR4). @@ -100,7 +100,7 @@ 59 STD { int svr4_sys_execve(char *path, char **argp, char **envp); } 60 MNOPROTO { int umask(int newmask); } 61 NOPROTO { int chroot(char *path); } -62 STD { int svr4_sys_fcntl(int fd, int cmd, char *arg); } +62 MSTD { int svr4_sys_fcntl(int fd, int cmd, char *arg); } 63 MSTD { int svr4_sys_ulimit(int cmd, long newlimit); } 64 UNIMPL reserved 65 UNIMPL reserved ==== //depot/projects/nsched/sys/conf/ldscript.ia64#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/conf/ldscript.ia64,v 1.11 2004/06/20 22:32:19 marcel Exp $ */ +/* $FreeBSD: src/sys/conf/ldscript.ia64,v 1.12 2004/08/25 07:43:28 marcel Exp $ */ OUTPUT_FORMAT("elf64-ia64-little", "elf64-ia64-little", "elf64-ia64-little") OUTPUT_ARCH(ia64) ENTRY(__start) @@ -30,6 +30,7 @@ .rela.bss : { *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) } .rela.plt : { *(.rela.plt) } .rela.IA_64.pltoff : { *(.rela.IA_64.pltoff) } + PROVIDE (btext = .); .init : { *(.init) ==== //depot/projects/nsched/sys/dev/acpica/acpi_lid.c#7 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_lid.c,v 1.26 2004/08/13 06:21:55 njl Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_lid.c,v 1.27 2004/08/25 20:09:15 njl Exp $"); #include "opt_acpi.h" #include @@ -103,7 +103,6 @@ sc = device_get_softc(dev); sc->lid_dev = dev; sc->lid_handle = acpi_get_handle(dev); - sc->lid_status = -1; /* * If a system does not get lid events, it may make sense to change @@ -117,10 +116,6 @@ acpi_wake_init(dev, ACPI_GPE_TYPE_WAKE_RUN); acpi_wake_set_enable(dev, 1); - /* Attempt to get the initial lid switch state. */ - AcpiOsQueueForExecution(OSD_PRIORITY_LO, acpi_lid_notify_status_changed, - sc); - return (0); } @@ -142,42 +137,34 @@ struct acpi_lid_softc *sc; struct acpi_softc *acpi_sc; ACPI_STATUS status; - int lid_status, old_status; ACPI_FUNCTION_TRACE((char *)(uintptr_t)__func__); sc = (struct acpi_lid_softc *)arg; + ACPI_SERIAL_BEGIN(lid); /* * Evaluate _LID and check the return value, update lid status. * Zero: The lid is closed * Non-zero: The lid is open */ - status = acpi_GetInteger(sc->lid_handle, "_LID", &lid_status); + status = acpi_GetInteger(sc->lid_handle, "_LID", &sc->lid_status); if (ACPI_FAILURE(status)) - return_VOID; + goto out; + + acpi_sc = acpi_device_get_parent_softc(sc->lid_dev); + if (acpi_sc == NULL) + goto out; - ACPI_SERIAL_BEGIN(lid); - if (lid_status != sc->lid_status) { - old_status = sc->lid_status; - sc->lid_status = lid_status; + ACPI_VPRINT(sc->lid_dev, acpi_sc, "Lid %s\n", + sc->lid_status ? "opened" : "closed"); - /* If this is the initialization pass, skip the notification. */ - if (old_status == -1) - goto out; + acpi_UserNotify("Lid", sc->lid_handle, sc->lid_status); - /* Since the status has changed, notify the system. */ - acpi_sc = acpi_device_get_parent_softc(sc->lid_dev); - if (acpi_sc == NULL) - goto out; - ACPI_VPRINT(sc->lid_dev, acpi_sc, "Lid %s\n", - lid_status ? "opened" : "closed"); - acpi_UserNotify("Lid", sc->lid_handle, lid_status); - if (lid_status == 0) - EVENTHANDLER_INVOKE(acpi_sleep_event, acpi_sc->acpi_lid_switch_sx); - else - EVENTHANDLER_INVOKE(acpi_wakeup_event, acpi_sc->acpi_lid_switch_sx); - } + if (sc->lid_status == 0) + EVENTHANDLER_INVOKE(acpi_sleep_event, acpi_sc->acpi_lid_switch_sx); + else + EVENTHANDLER_INVOKE(acpi_wakeup_event, acpi_sc->acpi_lid_switch_sx); out: ACPI_SERIAL_END(lid); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Aug 27 22:55:32 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5216A16A4D0; Fri, 27 Aug 2004 22:55:32 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2386716A4CE for ; Fri, 27 Aug 2004 22:55:32 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id ED4F643D53 for ; Fri, 27 Aug 2004 22:55:31 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7RMtVTx079042 for ; Fri, 27 Aug 2004 22:55:31 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7RMtV5i079039 for perforce@freebsd.org; Fri, 27 Aug 2004 22:55:31 GMT (envelope-from peter@freebsd.org) Date: Fri, 27 Aug 2004 22:55:31 GMT Message-Id: <200408272255.i7RMtV5i079039@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 60549 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 27 Aug 2004 22:55:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=60549 Change 60549 by peter@peter_daintree on 2004/08/27 22:55:04 IFC @60548 Affected files ... .. //depot/projects/hammer/Makefile.inc1#58 integrate .. //depot/projects/hammer/UPDATING#50 integrate .. //depot/projects/hammer/contrib/gnu-sort/lib/version-etc.c#5 integrate .. //depot/projects/hammer/etc/mtree/BSD.usr.dist#26 integrate .. //depot/projects/hammer/etc/network.subr#6 integrate .. //depot/projects/hammer/games/fortune/datfiles/freebsd-tips#9 integrate .. //depot/projects/hammer/include/ftw.h#2 integrate .. //depot/projects/hammer/lib/libarchive/archive_read_extract.c#17 integrate .. //depot/projects/hammer/lib/libarchive/archive_string_sprintf.c#5 integrate .. //depot/projects/hammer/lib/libc/db/man/mpool.3#3 integrate .. //depot/projects/hammer/lib/libc/gen/Makefile.inc#18 integrate .. //depot/projects/hammer/lib/libc/gen/ftw.c#3 integrate .. //depot/projects/hammer/lib/libc/gen/nftw.c#1 branch .. //depot/projects/hammer/lib/libc/ia64/gen/Makefile.inc#9 integrate .. //depot/projects/hammer/lib/libc/ia64/gen/_mcount.S#1 branch .. //depot/projects/hammer/lib/libc/stdio/setbuf.3#4 integrate .. //depot/projects/hammer/lib/libc/stdio/vfprintf.c#16 integrate .. //depot/projects/hammer/lib/libc/stdio/vfwprintf.c#15 integrate .. //depot/projects/hammer/lib/libc/stdtime/localtime.c#7 integrate .. //depot/projects/hammer/lib/libpthread/arch/amd64/include/pthread_md.h#8 integrate .. //depot/projects/hammer/lib/libpthread/arch/i386/include/pthread_md.h#9 integrate .. //depot/projects/hammer/lib/libz/infback.c#2 integrate .. //depot/projects/hammer/lib/libz/inflate.c#3 integrate .. //depot/projects/hammer/release/Makefile#54 integrate .. //depot/projects/hammer/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#56 integrate .. //depot/projects/hammer/release/doc/share/misc/dev.archlist.txt#5 integrate .. //depot/projects/hammer/release/doc/share/misc/man2hwnotes.pl#3 integrate .. //depot/projects/hammer/release/scripts/doFS.sh#16 integrate .. //depot/projects/hammer/release/scripts/split-file.sh#2 integrate .. //depot/projects/hammer/release/sparc64/mkisoimages.sh#8 integrate .. //depot/projects/hammer/share/man/man4/Makefile#46 integrate .. //depot/projects/hammer/share/man/man4/ath.4#15 integrate .. //depot/projects/hammer/share/man/man4/ath_hal.4#9 integrate .. //depot/projects/hammer/share/man/man4/axe.4#6 integrate .. //depot/projects/hammer/share/man/man4/cue.4#6 integrate .. //depot/projects/hammer/share/man/man4/dc.4#12 integrate .. //depot/projects/hammer/share/man/man4/ipfirewall.4#5 integrate .. //depot/projects/hammer/share/man/man4/kue.4#7 integrate .. //depot/projects/hammer/share/man/man4/lge.4#4 integrate .. //depot/projects/hammer/share/man/man4/man4.i386/vx.4#4 integrate .. //depot/projects/hammer/share/man/man4/ng_hci.4#9 integrate .. //depot/projects/hammer/share/man/man4/ng_vlan.4#2 integrate .. //depot/projects/hammer/share/man/man4/rue.4#8 integrate .. //depot/projects/hammer/share/man/man4/sf.4#3 integrate .. //depot/projects/hammer/share/man/man4/sk.4#6 integrate .. //depot/projects/hammer/share/man/man4/snd_ad1816.4#1 branch .. //depot/projects/hammer/share/man/man4/snd_als4000.4#1 branch .. //depot/projects/hammer/share/man/man4/snd_cmi.4#1 branch .. //depot/projects/hammer/share/man/man4/snd_cs4281.4#1 branch .. //depot/projects/hammer/share/man/man4/snd_ds1.4#1 branch .. //depot/projects/hammer/share/man/man4/snd_emu10k1.4#1 branch .. //depot/projects/hammer/share/man/man4/snd_es137x.4#1 branch .. //depot/projects/hammer/share/man/man4/snd_solo.4#1 branch .. //depot/projects/hammer/share/man/man4/tx.4#3 integrate .. //depot/projects/hammer/share/man/man4/vr.4#6 integrate .. //depot/projects/hammer/share/man/man9/altq.9#2 integrate .. //depot/projects/hammer/share/man/man9/bus_dma.9#11 integrate .. //depot/projects/hammer/share/man/man9/pfil.9#6 integrate .. //depot/projects/hammer/share/misc/bsd-family-tree#18 integrate .. //depot/projects/hammer/share/timedef/sl_SI.ISO8859-2.src#2 integrate .. //depot/projects/hammer/share/timedef/sl_SI.UTF-8.src#2 integrate .. //depot/projects/hammer/sys/alpha/alpha/pmap.c#36 integrate .. //depot/projects/hammer/sys/alpha/conf/GENERIC#20 integrate .. //depot/projects/hammer/sys/alpha/include/cpu.h#9 integrate .. //depot/projects/hammer/sys/alpha/include/profile.h#3 integrate .. //depot/projects/hammer/sys/alpha/linux/linux_proto.h#9 integrate .. //depot/projects/hammer/sys/alpha/linux/linux_syscall.h#9 integrate .. //depot/projects/hammer/sys/alpha/linux/linux_sysent.c#9 integrate .. //depot/projects/hammer/sys/alpha/linux/syscalls.master#9 integrate .. //depot/projects/hammer/sys/alpha/osf1/osf1_misc.c#10 integrate .. //depot/projects/hammer/sys/alpha/osf1/osf1_proto.h#6 integrate .. //depot/projects/hammer/sys/alpha/osf1/osf1_syscall.h#6 integrate .. //depot/projects/hammer/sys/alpha/osf1/osf1_sysent.c#6 integrate .. //depot/projects/hammer/sys/alpha/osf1/syscalls.master#6 integrate .. //depot/projects/hammer/sys/amd64/amd64/machdep.c#100 integrate .. //depot/projects/hammer/sys/amd64/amd64/nexus.c#29 integrate .. //depot/projects/hammer/sys/amd64/amd64/pmap.c#102 integrate .. //depot/projects/hammer/sys/amd64/conf/GENERIC#53 integrate .. //depot/projects/hammer/sys/amd64/conf/NOTES#44 integrate .. //depot/projects/hammer/sys/amd64/include/profile.h#21 integrate .. //depot/projects/hammer/sys/amd64/linux32/linux32_machdep.c#2 integrate .. //depot/projects/hammer/sys/arm/include/profile.h#4 integrate .. //depot/projects/hammer/sys/boot/i386/boot0/Makefile#7 integrate .. //depot/projects/hammer/sys/boot/i386/boot2/Makefile#8 integrate .. //depot/projects/hammer/sys/compat/linux/linux_socket.c#14 integrate .. //depot/projects/hammer/sys/compat/svr4/svr4_fcntl.c#5 integrate .. //depot/projects/hammer/sys/compat/svr4/svr4_proto.h#4 integrate .. //depot/projects/hammer/sys/compat/svr4/svr4_stream.c#12 integrate .. //depot/projects/hammer/sys/compat/svr4/svr4_syscall.h#4 integrate .. //depot/projects/hammer/sys/compat/svr4/svr4_syscallnames.c#4 integrate .. //depot/projects/hammer/sys/compat/svr4/svr4_sysent.c#4 integrate .. //depot/projects/hammer/sys/compat/svr4/syscalls.master#4 integrate .. //depot/projects/hammer/sys/conf/NOTES#61 integrate .. //depot/projects/hammer/sys/conf/files#78 integrate .. //depot/projects/hammer/sys/conf/ldscript.alpha#4 integrate .. //depot/projects/hammer/sys/conf/ldscript.ia64#8 integrate .. //depot/projects/hammer/sys/conf/options#54 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_fil.c#11 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_fil.h#5 integrate .. //depot/projects/hammer/sys/dev/acpica/acpi_lid.c#11 integrate .. //depot/projects/hammer/sys/dev/acpica/acpi_pci_link.c#18 integrate .. //depot/projects/hammer/sys/dev/ata/ata-all.c#33 integrate .. //depot/projects/hammer/sys/dev/ata/ata-all.h#19 integrate .. //depot/projects/hammer/sys/dev/ata/ata-chipset.c#41 integrate .. //depot/projects/hammer/sys/dev/ata/ata-disk.c#21 integrate .. //depot/projects/hammer/sys/dev/ata/ata-lowlevel.c#19 integrate .. //depot/projects/hammer/sys/dev/ata/ata-queue.c#16 integrate .. //depot/projects/hammer/sys/dev/ata/atapi-cd.c#22 integrate .. //depot/projects/hammer/sys/dev/ctau/if_ct.c#11 integrate .. //depot/projects/hammer/sys/dev/cx/if_cx.c#17 integrate .. //depot/projects/hammer/sys/dev/fdc/fdc.c#14 integrate .. //depot/projects/hammer/sys/dev/hfa/fore_receive.c#7 integrate .. //depot/projects/hammer/sys/dev/idt/idt_harp.c#5 integrate .. //depot/projects/hammer/sys/dev/mpt/mpt_freebsd.c#11 integrate .. //depot/projects/hammer/sys/dev/ppbus/if_plip.c#10 integrate .. //depot/projects/hammer/sys/dev/uart/uart_bus_isa.c#4 integrate .. //depot/projects/hammer/sys/dev/usb/usbdevs#46 integrate .. //depot/projects/hammer/sys/fs/msdosfs/msdosfs_vfsops.c#22 integrate .. //depot/projects/hammer/sys/geom/concat/g_concat.c#10 integrate .. //depot/projects/hammer/sys/geom/geom.h#28 integrate .. //depot/projects/hammer/sys/geom/geom_io.c#25 integrate .. //depot/projects/hammer/sys/geom/label/g_label.c#5 integrate .. //depot/projects/hammer/sys/geom/mirror/g_mirror.c#4 integrate .. //depot/projects/hammer/sys/geom/raid3/g_raid3.c#4 integrate .. //depot/projects/hammer/sys/geom/stripe/g_stripe.c#5 integrate .. //depot/projects/hammer/sys/geom/vinum/geom_vinum.c#7 integrate .. //depot/projects/hammer/sys/geom/vinum/geom_vinum.h#3 integrate .. //depot/projects/hammer/sys/geom/vinum/geom_vinum_drive.c#7 integrate .. //depot/projects/hammer/sys/geom/vinum/geom_vinum_volume.c#5 integrate .. //depot/projects/hammer/sys/i386/acpica/acpi_panasonic.c#3 integrate .. //depot/projects/hammer/sys/i386/conf/GENERIC#27 integrate .. //depot/projects/hammer/sys/i386/i386/pmap.c#50 integrate .. //depot/projects/hammer/sys/i386/ibcs2/ibcs2_fcntl.c#5 integrate .. //depot/projects/hammer/sys/i386/ibcs2/ibcs2_proto.h#5 integrate .. //depot/projects/hammer/sys/i386/ibcs2/ibcs2_syscall.h#5 integrate .. //depot/projects/hammer/sys/i386/ibcs2/ibcs2_sysent.c#7 integrate .. //depot/projects/hammer/sys/i386/ibcs2/syscalls.master#5 integrate .. //depot/projects/hammer/sys/i386/include/in_cksum.h#4 integrate .. //depot/projects/hammer/sys/i386/include/profile.h#10 integrate .. //depot/projects/hammer/sys/i386/linux/linux_machdep.c#12 integrate .. //depot/projects/hammer/sys/i386/linux/linux_proto.h#11 integrate .. //depot/projects/hammer/sys/i386/linux/linux_syscall.h#11 integrate .. //depot/projects/hammer/sys/i386/linux/linux_sysent.c#12 integrate .. //depot/projects/hammer/sys/i386/linux/syscalls.master#11 integrate .. //depot/projects/hammer/sys/i4b/driver/i4b_ipr.c#10 integrate .. //depot/projects/hammer/sys/ia64/conf/GENERIC#17 integrate .. //depot/projects/hammer/sys/ia64/conf/NOTES#3 integrate .. //depot/projects/hammer/sys/ia64/conf/SKI#12 integrate .. //depot/projects/hammer/sys/ia64/ia64/nexus.c#4 integrate .. //depot/projects/hammer/sys/ia64/ia64/pmap.c#34 integrate .. //depot/projects/hammer/sys/ia64/ia64/support.S#4 integrate .. //depot/projects/hammer/sys/ia64/include/asm.h#4 integrate .. //depot/projects/hammer/sys/ia64/include/cpu.h#15 integrate .. //depot/projects/hammer/sys/ia64/include/profile.h#3 integrate .. //depot/projects/hammer/sys/isa/psm.c#22 integrate .. //depot/projects/hammer/sys/kern/kern_kse.c#8 integrate .. //depot/projects/hammer/sys/kern/kern_linker.c#19 integrate .. //depot/projects/hammer/sys/kern/kern_lock.c#12 integrate .. //depot/projects/hammer/sys/kern/subr_bus.c#25 integrate .. //depot/projects/hammer/sys/kern/sys_generic.c#16 integrate .. //depot/projects/hammer/sys/kern/uipc_socket.c#37 integrate .. //depot/projects/hammer/sys/kern/uipc_usrreq.c#24 integrate .. //depot/projects/hammer/sys/libkern/mcount.c#4 integrate .. //depot/projects/hammer/sys/modules/bridge/Makefile#3 integrate .. //depot/projects/hammer/sys/modules/ipfw/Makefile#4 integrate .. //depot/projects/hammer/sys/net/bridge.c#17 integrate .. //depot/projects/hammer/sys/net/if.c#25 integrate .. //depot/projects/hammer/sys/net/if_fwsubr.c#5 integrate .. //depot/projects/hammer/sys/net/if_loop.c#22 integrate .. //depot/projects/hammer/sys/net/if_ppp.c#16 integrate .. //depot/projects/hammer/sys/net/if_sl.c#18 integrate .. //depot/projects/hammer/sys/net/if_spppsubr.c#16 integrate .. //depot/projects/hammer/sys/net/netisr.c#7 integrate .. //depot/projects/hammer/sys/net/rtsock.c#17 integrate .. //depot/projects/hammer/sys/netgraph/atm/atmpif/ng_atmpif_harp.c#2 integrate .. //depot/projects/hammer/sys/netinet/ip_dummynet.c#24 integrate .. //depot/projects/hammer/sys/netinet/ip_fastfwd.c#11 integrate .. //depot/projects/hammer/sys/netinet/ip_fw2.c#38 integrate .. //depot/projects/hammer/sys/netinet/ip_fw_pfil.c#3 integrate .. //depot/projects/hammer/sys/netinet/ip_input.c#38 integrate .. //depot/projects/hammer/sys/netinet/ip_mroute.c#23 integrate .. //depot/projects/hammer/sys/netinet/ip_output.c#37 integrate .. //depot/projects/hammer/sys/netinet/ip_var.h#20 integrate .. //depot/projects/hammer/sys/netinet6/ah_input.c#5 integrate .. //depot/projects/hammer/sys/netinet6/esp_input.c#8 integrate .. //depot/projects/hammer/sys/netinet6/ip6_forward.c#10 integrate .. //depot/projects/hammer/sys/netinet6/ip6_input.c#17 integrate .. //depot/projects/hammer/sys/netinet6/ip6_output.c#24 integrate .. //depot/projects/hammer/sys/netinet6/ip6_var.h#10 integrate .. //depot/projects/hammer/sys/netipsec/ipsec_input.c#7 integrate .. //depot/projects/hammer/sys/netipsec/xform_ipip.c#7 integrate .. //depot/projects/hammer/sys/netkey/key.c#16 integrate .. //depot/projects/hammer/sys/netkey/keysock.c#10 integrate .. //depot/projects/hammer/sys/nfsclient/nfs_socket.c#19 integrate .. //depot/projects/hammer/sys/nfsserver/nfs_serv.c#15 integrate .. //depot/projects/hammer/sys/pc98/conf/GENERIC#23 integrate .. //depot/projects/hammer/sys/pci/if_dc.c#38 integrate .. //depot/projects/hammer/sys/powerpc/conf/GENERIC#19 integrate .. //depot/projects/hammer/sys/powerpc/include/pmap.h#9 integrate .. //depot/projects/hammer/sys/powerpc/include/profile.h#3 integrate .. //depot/projects/hammer/sys/powerpc/powerpc/pmap.c#28 integrate .. //depot/projects/hammer/sys/sparc64/conf/GENERIC#27 integrate .. //depot/projects/hammer/sys/sparc64/include/profile.h#3 integrate .. //depot/projects/hammer/sys/sys/linker.h#14 integrate .. //depot/projects/hammer/sys/sys/param.h#44 integrate .. //depot/projects/hammer/tools/lib32/build32.sh#2 integrate .. //depot/projects/hammer/tools/regression/sockets/accept_fd_leak/accept_fd_leak.c#2 integrate .. //depot/projects/hammer/tools/regression/sockets/kqueue/Makefile#1 branch .. //depot/projects/hammer/tools/regression/sockets/kqueue/kqueue.c#1 branch .. //depot/projects/hammer/usr.bin/fetch/fetch.c#14 integrate .. //depot/projects/hammer/usr.bin/join/join.1#6 integrate .. //depot/projects/hammer/usr.bin/join/join.c#4 integrate .. //depot/projects/hammer/usr.bin/sockstat/sockstat.1#3 integrate .. //depot/projects/hammer/usr.bin/sockstat/sockstat.c#6 integrate .. //depot/projects/hammer/usr.bin/tar/bsdtar.1#13 integrate .. //depot/projects/hammer/usr.bin/tar/bsdtar.c#19 integrate .. //depot/projects/hammer/usr.bin/tar/read.c#11 integrate .. //depot/projects/hammer/usr.bin/whois/whois.c#9 integrate .. //depot/projects/hammer/usr.sbin/kldxref/Makefile#4 integrate .. //depot/projects/hammer/usr.sbin/kldxref/ef.c#3 integrate .. //depot/projects/hammer/usr.sbin/kldxref/ef.h#3 integrate .. //depot/projects/hammer/usr.sbin/kldxref/ef_amd64.c#1 branch .. //depot/projects/hammer/usr.sbin/kldxref/ef_i386.c#1 branch .. //depot/projects/hammer/usr.sbin/kldxref/ef_nop.c#2 integrate .. //depot/projects/hammer/usr.sbin/kldxref/ef_obj.c#1 branch .. //depot/projects/hammer/usr.sbin/kldxref/ef_sparc64.c#2 integrate .. //depot/projects/hammer/usr.sbin/kldxref/kldxref.c#6 integrate .. //depot/projects/hammer/usr.sbin/sysinstall/dist.c#17 integrate .. //depot/projects/hammer/usr.sbin/sysinstall/dist.h#7 integrate .. //depot/projects/hammer/usr.sbin/sysinstall/menus.c#26 integrate Differences ... ==== //depot/projects/hammer/Makefile.inc1#58 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.440 2004/08/18 13:21:40 ru Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.443 2004/08/26 10:24:25 paul Exp $ # # Make command line options: # -DNO_DYNAMICROOT do not link /bin and /sbin dynamically @@ -83,6 +83,7 @@ .endif CVS?= cvs +CVSFLAGS?= -A -P -d SUP?= /usr/local/bin/cvsup SUPFLAGS?= -g -L 2 -P - .if defined(SUPHOST) @@ -173,13 +174,13 @@ GROFF_TMAC_PATH=${WORLDTMP}/legacy/usr/share/tmac # bootstrap-tools stage -BMAKEENV= DESTDIR= \ - INSTALL="sh ${.CURDIR}/tools/install.sh" \ +BMAKEENV= INSTALL="sh ${.CURDIR}/tools/install.sh" \ PATH=${BPATH}:${PATH} \ WORLDTMP=${WORLDTMP} \ MAKEFLAGS="-m ${.CURDIR}/tools/build/mk ${.MAKEFLAGS}" BMAKE= MAKEOBJDIRPREFIX=${WORLDTMP} \ ${BMAKEENV} ${MAKE} -f Makefile.inc1 \ + DESTDIR= \ BOOTSTRAPPING=${OSRELDATE} \ -DNOHTML -DNOINFO -DNOLINT -DNOMAN -DNOPIC -DNOPROFILE \ -DNOSHARED -DNO_CPU_CFLAGS -DNO_WARNS @@ -187,6 +188,7 @@ # build-tools stage TMAKE= MAKEOBJDIRPREFIX=${OBJTREE} \ ${BMAKEENV} ${MAKE} -f Makefile.inc1 \ + DESTDIR= \ BOOTSTRAPPING=${OSRELDATE} -DNOLINT -DNO_CPU_CFLAGS -DNO_WARNS # cross-tools stage @@ -194,11 +196,10 @@ # world stage WMAKEENV= ${CROSSENV} \ - DESTDIR=${WORLDTMP} \ _SHLIBDIRPREFIX=${WORLDTMP} \ INSTALL="sh ${.CURDIR}/tools/install.sh" \ PATH=${TMPPATH} -WMAKE= ${WMAKEENV} ${MAKE} -f Makefile.inc1 +WMAKE= ${WMAKEENV} ${MAKE} -f Makefile.inc1 DESTDIR=${WORLDTMP} # install stage .if empty(.MAKEFLAGS:M-n) @@ -655,7 +656,7 @@ @echo "--------------------------------------------------------------" @echo ">>> Updating ${.CURDIR} from cvs repository" ${CVSROOT} @echo "--------------------------------------------------------------" - cd ${.CURDIR}; ${CVS} -R -q update -A -P -d + cd ${.CURDIR}; ${CVS} -R -q update ${CVSFLAGS} .endif # ==== //depot/projects/hammer/UPDATING#50 (text+ko) ==== @@ -23,6 +23,10 @@ developers choose to disable these features on build machines to maximize performance. +20040827: + PFIL_HOOKS are a fixed part of the network stack now and do not + need to be specified in the kernel configuration file anymore. + 20040819: Netgraph changed its message format slightly to align the data portion well on 64 bit machines. @@ -1625,11 +1629,10 @@ [7] make buildworld - make buildkernel KERNCONF=YOUR_KERNEL_HERE - make installkernel KERNCONF=YOUR_KERNEL_HERE + make kernel KERNCONF=YOUR_KERNEL_HERE [1] [3] - /etc/rc.d/preseedrandom [10] + src/etc/rc.d/preseedrandom [10] mergemaster -p [5] make installworld mergemaster [4] @@ -1650,15 +1653,15 @@ make installworld DESTDIR=${CURRENT_ROOT} make buildkernel KERNCONF=YOUR_KERNEL_HERE - cp /usr/src/sys/${ARCH}/conf/GENERIC.hints \ + cp src/sys/${ARCH}/conf/GENERIC.hints \ ${CURRENT_ROOT}/boot/device.hints # as needed make installkernel KERNCONF=YOUR_KERNEL_HERE DESTDIR=${CURRENT_ROOT} - cd /usr/src/etc; make distribution DESTDIR=${CURRENT_ROOT} # if newfs'd + cd src/etc; make distribution DESTDIR=${CURRENT_ROOT} # if newfs'd cp /etc/fstab ${CURRENT_ROOT}/etc/fstab # if newfs'd - + @@ -1679,10 +1682,10 @@ make buildkernel KERNCONF=YOUR_KERNEL_HERE [8] cp sys/${MACHINE}/conf/GENERIC.hints /boot/device.hints [2] make installkernel KERNCONF=YOUR_KERNEL_HERE - cd sys/boot ; make STRIP="" install [6] + cd sys/boot ; make STRIP="" install [6] [1] [3] - /usr/src/etc/rc.d/preseedrandom [10] + src/etc/rc.d/preseedrandom [10] mergemaster -p [5] rm -rf /usr/include/g++ make installworld @@ -1713,7 +1716,7 @@ fsck -p mount -u / mount -a - cd /usr/src + cd src adjkerntz -i # if CMOS is wall time Also, when doing a major release upgrade, it is required that you boot into single user mode to do the installworld. @@ -1765,7 +1768,7 @@ using your existing software for a while. [10] In order to create temporary files, /dev/random must be - initialized by feeding data into it. /usr/src/etc/rc.d/preseedrandom + initialized by feeding data into it. src/etc/rc.d/preseedrandom takes care of this. FORMAT: @@ -1800,4 +1803,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.348 2004/08/23 18:51:36 imp Exp $ +$FreeBSD: src/UPDATING,v 1.350 2004/08/27 15:16:24 andre Exp $ ==== //depot/projects/hammer/contrib/gnu-sort/lib/version-etc.c#5 (text+ko) ==== @@ -15,7 +15,7 @@ along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* $FreeBSD: src/contrib/gnu-sort/lib/version-etc.c,v 1.3 2004/08/12 05:46:04 tjr Exp $ */ +/* $FreeBSD: src/contrib/gnu-sort/lib/version-etc.c,v 1.4 2004/08/27 03:52:29 kientzle Exp $ */ /* Written by Jim Meyering. */ @@ -63,6 +63,9 @@ n_authors = 0; while (va_arg (tmp_authors, const char *) != NULL) ++n_authors; +#ifdef va_copy + va_end (tmp_authors); +#endif } if (command_name) ==== //depot/projects/hammer/etc/mtree/BSD.usr.dist#26 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/etc/mtree/BSD.usr.dist,v 1.304 2004/08/16 09:31:09 dwmalone Exp $ +# $FreeBSD: src/etc/mtree/BSD.usr.dist,v 1.305 2004/08/24 19:03:55 ru Exp $ # # Please see the file src/etc/mtree/README before making changes to this file. # @@ -289,8 +289,6 @@ .. tcsh .. - worm - .. .. games fortune ==== //depot/projects/hammer/etc/network.subr#6 (text+ko) ==== @@ -22,7 +22,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $FreeBSD: src/etc/network.subr,v 1.154 2004/06/06 11:46:27 schweikh Exp $ +# $FreeBSD: src/etc/network.subr,v 1.155 2004/08/27 12:11:47 yar Exp $ # # @@ -284,7 +284,7 @@ # Separate out dhcp and non-dhcp intefraces # _aprefix= - _brefix= + _bprefix= for _if in ${_tmplist} ; do eval _ifarg="\$ifconfig_${_if}" case "$_ifarg" in ==== //depot/projects/hammer/games/fortune/datfiles/freebsd-tips#9 (text+ko) ==== @@ -1,5 +1,5 @@ This fortune brought to you by: -$FreeBSD: src/games/fortune/datfiles/freebsd-tips,v 1.33 2004/02/18 05:18:27 cperciva Exp $ +$FreeBSD: src/games/fortune/datfiles/freebsd-tips,v 1.34 2004/08/24 11:30:28 blackend Exp $ % Having trouble using fetch through a firewall? Try setting the environment variable FTP_PASSIVE_MODE to yes, and see fetch(3) for more details. @@ -306,9 +306,9 @@ Want to find a specific port, just type the following under /usr/ports, or one its subdirectories: - "make search port=" + "make search name=" or - "make search key="" + "make search key=" % Want to see how much virtual memory you're using? Just type "swapinfo" to be shown information about the usage of your swap partitions. ==== //depot/projects/hammer/include/ftw.h#2 (text+ko) ==== @@ -1,107 +1,62 @@ +/* $OpenBSD: ftw.h,v 1.1 2003/07/21 21:13:18 millert Exp $ */ + /* - * Copyright (c) 2003 by Joel Baker. - * All rights reserved. + * Copyright (c) 2003 Todd C. Miller + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of the Author nor the names of any contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. + * Sponsored in part by the Defense Advanced Research Projects + * Agency (DARPA) and Air Force Research Laboratory, Air Force + * Materiel Command, USAF, under agreement number F39502-99-1-0512. * - * $FreeBSD: src/include/ftw.h,v 1.1 2004/07/05 23:13:16 das Exp $ + * $FreeBSD: src/include/ftw.h,v 1.2 2004/08/24 13:00:54 tjr Exp $ */ -#ifndef _FTW_H -#define _FTW_H +#ifndef _FTW_H +#define _FTW_H +#include #include -__BEGIN_DECLS +/* + * Valid flags for the 3rd argument to the function that is passed as the + * second argument to ftw(3) and nftw(3). Say it three times fast! + */ +#define FTW_F 0 /* File. */ +#define FTW_D 1 /* Directory. */ +#define FTW_DNR 2 /* Directory without read permission. */ +#define FTW_DP 3 /* Directory with subdirectories visited. */ +#define FTW_NS 4 /* Unknown type; stat() failed. */ +#define FTW_SL 5 /* Symbolic link. */ +#define FTW_SLN 6 /* Sym link that names a nonexistent file. */ -/* Enumerated values for 'flag' when calling [n]ftw */ +/* + * Flags for use as the 4th argument to nftw(3). These may be ORed together. + */ +#define FTW_PHYS 0x01 /* Physical walk, don't follow sym links. */ +#define FTW_MOUNT 0x02 /* The walk does not cross a mount point. */ +#define FTW_DEPTH 0x04 /* Subdirs visited before the dir itself. */ +#define FTW_CHDIR 0x08 /* Change to a directory before reading it. */ -enum { - FTW_D, /* Directories */ - FTW_DNR, /* Unreadable directory */ - FTW_F, /* Regular files */ - FTW_SL, /* Symbolic link */ - FTW_NS, /* stat(2) failed */ - -#if __XSI_VISIBLE /* X/Open */ - -/* Flags for nftw only */ - - FTW_DP, /* Directory, subdirs visited */ - FTW_SLN, /* Dangling symlink */ - -#endif /* __XSI_VISIBLE */ -}; - -#if __XSI_VISIBLE /* X/Open */ - -/* Enumerated values for 'flags' when calling nftw */ - -enum { - FTW_CHDIR = 1, /* Do a chdir(2) when entering a directory */ - FTW_DEPTH = 2, /* Report files first (before directory) */ - FTW_MOUNT = 4, /* Single filesystem */ - FTW_PHYS = 8 /* Physical walk; ignore symlinks */ -}; - -#define FTW_PHYS FTW_PHYS -#define FTW_MOUNT FTW_MOUNT -#define FTW_CHDIR FTW_CHDIR -#define FTW_DEPTH FTW_DEPTH - -/* FTW struct for callbacks from nftw */ - struct FTW { - int base; - int level; + int base; + int level; }; -#endif /* __XSI_VISIBLE */ - -/* Typecasts for callback functions */ - -typedef int (*__ftw_func_t) \ - (const char *file, const struct stat *status, int flag); - -/* ftw: walk a directory tree, calling a function for each element */ - -extern int ftw (const char *dir, __ftw_func_t func, int descr); - -#if __XSI_VISIBLE /* X/Open */ - -typedef int (*__nftw_func_t) \ - (const char *file, const struct stat *status, int flag, struct FTW *detail); - -/* nftw: walk a directory tree, calling a function for each element; much - * like ftw, but with behavior flags and minty freshness. - */ - -extern int nftw (const char *dir, __nftw_func_t func, int descr, int flags); - -#endif /* __XSI_VISIBLE */ - +__BEGIN_DECLS +int ftw(const char *, int (*)(const char *, const struct stat *, int), int); +int nftw(const char *, int (*)(const char *, const struct stat *, int, + struct FTW *), int, int); __END_DECLS -#endif /* _FTW_H */ +#endif /* !_FTW_H */ ==== //depot/projects/hammer/lib/libarchive/archive_read_extract.c#17 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include "archive_platform.h" -__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_extract.c,v 1.33 2004/08/07 03:09:28 kientzle Exp $"); +__FBSDID("$FreeBSD: src/lib/libarchive/archive_read_extract.c,v 1.35 2004/08/27 03:40:48 kientzle Exp $"); #include #ifdef HAVE_SYS_ACL_H @@ -74,6 +74,12 @@ #define FIXUP_TIMES 2 #define FIXUP_FFLAGS 4 +struct bucket { + char *name; + int hash; + id_t id; +}; + struct extract { mode_t umask; mode_t default_dir_mode; @@ -81,6 +87,9 @@ struct fixup_entry *fixup_list; struct fixup_entry *current_fixup; + struct bucket ucache[127]; + struct bucket gcache[127]; + /* * Cached stat data from disk for the current entry. * If this is valid, pst points to st. Otherwise, @@ -113,6 +122,7 @@ static int extract_file(struct archive *, struct archive_entry *, int); static int extract_hard_link(struct archive *, struct archive_entry *, int); static int extract_symlink(struct archive *, struct archive_entry *, int); +static unsigned int hash(const char *); static gid_t lookup_gid(struct archive *, const char *uname, gid_t); static uid_t lookup_uid(struct archive *, const char *uname, uid_t); static int create_parent_dir(struct archive *, const char *, int flags); @@ -479,7 +489,7 @@ if (extract->pst != NULL) { extract->pst = &extract->st; if (S_ISDIR(extract->pst->st_mode)) - goto success; + return (ARCHIVE_OK); /* It exists but isn't a dir. */ if ((flags & ARCHIVE_EXTRACT_UNLINK)) unlink(path); @@ -1193,23 +1203,44 @@ #endif /* - * XXX The following gid/uid lookups can be a performance bottleneck. - * Some form of caching would probably be very effective, though - * I have concerns about staleness. + * The following routines do some basic caching of uname/gname lookups. + * All such lookups go through these routines, including ACL conversions. + * + * TODO: Provide an API for clients to override these routines. */ static gid_t lookup_gid(struct archive *a, const char *gname, gid_t gid) { struct group *grent; + struct extract *extract; + int h; + struct bucket *b; + int cache_size; - (void)a; /* UNUSED */ + extract = a->extract; + cache_size = sizeof(extract->gcache) / sizeof(extract->gcache[0]); + + /* If no gname, just use the gid provided. */ + if (gname == NULL || *gname == '\0') + return (gid); + + /* Try to find gname in the cache. */ + h = hash(gname); + b = &extract->gcache[h % cache_size ]; + if (b->name != NULL && b->hash == h && strcmp(gname, b->name) == 0) + return ((gid_t)b->id); + + /* Free the cache slot for a new entry. */ + if (b->name != NULL) + free(b->name); + b->name = strdup(gname); + /* Note: If strdup fails, that's okay; we just won't cache. */ + b->hash = h; + grent = getgrnam(gname); + if (grent != NULL) + gid = grent->gr_gid; + b->id = gid; - /* Look up gid from gname. */ - if (gname != NULL && *gname != '\0') { - grent = getgrnam(gname); - if (grent != NULL) - gid = grent->gr_gid; - } return (gid); } @@ -1217,18 +1248,54 @@ lookup_uid(struct archive *a, const char *uname, uid_t uid) { struct passwd *pwent; + struct extract *extract; + int h; + struct bucket *b; + int cache_size; + + extract = a->extract; + cache_size = sizeof(extract->ucache) / sizeof(extract->ucache[0]); + + /* If no uname, just use the uid provided. */ + if (uname == NULL || *uname == '\0') + return (uid); - (void)a; /* UNUSED */ + /* Try to find uname in the cache. */ + h = hash(uname); + b = &extract->ucache[h % cache_size ]; + if (b->name != NULL && b->hash == h && strcmp(uname, b->name) == 0) + return ((uid_t)b->id); + + /* Free the cache slot for a new entry. */ + if (b->name != NULL) + free(b->name); + b->name = strdup(uname); + /* Note: If strdup fails, that's okay; we just won't cache. */ + b->hash = h; + pwent = getpwnam(uname); + if (pwent != NULL) + uid = pwent->pw_uid; + b->id = uid; - /* Look up uid from uname. */ - if (uname != NULL && *uname != '\0') { - pwent = getpwnam(uname); - if (pwent != NULL) - uid = pwent->pw_uid; - } return (uid); } +static unsigned int +hash(const char *p) +{ + /* A 32-bit version of Peter Weinberger's (PJW) hash algorithm, + as used by ELF for hashing function names. */ + unsigned g,h = 0; + while(*p != '\0') { + h = ( h << 4 ) + *p++; + if (( g = h & 0xF0000000 )) { + h ^= g >> 24; + h &= 0x0FFFFFFF; + } + } + return h; +} + void archive_read_extract_set_progress_callback(struct archive *a, void (*progress_func)(void *), void *user_data) ==== //depot/projects/hammer/lib/libarchive/archive_string_sprintf.c#5 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include "archive_platform.h" -__FBSDID("$FreeBSD: src/lib/libarchive/archive_string_sprintf.c,v 1.4 2004/08/14 03:45:45 kientzle Exp $"); +__FBSDID("$FreeBSD: src/lib/libarchive/archive_string_sprintf.c,v 1.5 2004/08/26 03:33:53 kientzle Exp $"); /* * This uses 'printf' family functions, which can cause issues @@ -47,19 +47,22 @@ va_list ap) { size_t l; + va_list ap1; if (fmt == NULL) { as->s[0] = 0; return; } + va_copy(ap1, ap); l = vsnprintf(as->s, as->buffer_length, fmt, ap); /* If output is bigger than the buffer, resize and try again. */ if (l+1 >= as->buffer_length) { __archive_string_ensure(as, l + 1); - l = vsnprintf(as->s, as->buffer_length, fmt, ap); + l = vsnprintf(as->s, as->buffer_length, fmt, ap1); } as->length = l; + va_end(ap1); } /* ==== //depot/projects/hammer/lib/libc/db/man/mpool.3#3 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)mpool.3 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/db/man/mpool.3,v 1.12 2003/02/06 11:04:46 charnier Exp $ +.\" $FreeBSD: src/lib/libc/db/man/mpool.3,v 1.13 2004/08/27 14:51:21 roam Exp $ .\" .Dd June 4, 1993 .Dt MPOOL 3 @@ -65,32 +65,16 @@ .Nm mpool library interface is intended to provide page oriented buffer management of files. -The buffers may be shared between processes. .Pp The .Fn mpool_open function initializes a memory pool. The .Fa key -argument is the byte string used to negotiate between multiple -processes wishing to share buffers. -If the file buffers are mapped in shared memory, all processes using -the same key will share the buffers. -If -.Fa key -is -.Dv NULL , -the buffers are mapped into private memory. +argument is currently ignored. The .Fa fd argument is a file descriptor for the underlying file, which must be seekable. -If -.Fa key -is -.No non\- Ns Dv NULL -and matches a file already being mapped, the -.Fa fd -argument is ignored. .Pp The .Fa pagesize ==== //depot/projects/hammer/lib/libc/gen/Makefile.inc#18 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile.inc 8.6 (Berkeley) 5/4/95 -# $FreeBSD: src/lib/libc/gen/Makefile.inc,v 1.116 2004/08/03 08:54:01 dfr Exp $ +# $FreeBSD: src/lib/libc/gen/Makefile.inc,v 1.117 2004/08/24 13:00:55 tjr Exp $ # machine-independent gen sources .PATH: ${.CURDIR}/${MACHINE_ARCH}/gen ${.CURDIR}/gen @@ -18,7 +18,7 @@ getpeereid.c getprogname.c getpwent.c getttyent.c \ getusershell.c getvfsbyname.c glob.c \ initgroups.c isatty.c isinf.c isnan.c jrand48.c lcong48.c \ - lockf.c lrand48.c mrand48.c nice.c \ + lockf.c lrand48.c mrand48.c nftw.c nice.c \ nlist.c nrand48.c ntp_gettime.c opendir.c \ pause.c pmadvise.c popen.c posixshm.c pselect.c \ psignal.c pw_scan.c pwcache.c \ ==== //depot/projects/hammer/lib/libc/gen/ftw.c#3 (text+ko) ==== @@ -1,200 +1,98 @@ +/* $OpenBSD: ftw.c,v 1.4 2004/07/07 16:05:23 millert Exp $ */ + /* - * Copyright (c) 2003 by Joel Baker. - * All rights reserved. + * Copyright (c) 2003, 2004 Todd C. Miller + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. Neither the name of the Author nor the names of any contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $FreeBSD: src/lib/libc/gen/ftw.c,v 1.3 2004/08/02 08:18:43 stefanf Exp $ + * Sponsored in part by the Defense Advanced Research Projects + * Agency (DARPA) and Air Force Research Laboratory, Air Force + * Materiel Command, USAF, under agreement number F39502-99-1-0512. */ -#include /* Because fts(3) says so */ +#if 0 +#if defined(LIBC_SCCS) && !defined(lint) +static const char rcsid[] = "$OpenBSD: ftw.c,v 1.4 2004/07/07 16:05:23 millert Exp $"; +#endif /* LIBC_SCCS and not lint */ +#endif + +#include +__FBSDID("$FreeBSD: src/lib/libc/gen/ftw.c,v 1.4 2004/08/24 13:00:55 tjr Exp $"); + +#include #include +#include #include +#include +#include -#include /* We want strcpy */ +int +ftw(const char *path, int (*fn)(const char *, const struct stat *, int), + int nfds) +{ + char * const paths[2] = { (char *)path, NULL }; + FTSENT *cur; + FTS *ftsp; + int error = 0, fnflag, sverrno; -#include /* Because errno is our friend */ + /* XXX - nfds is currently unused */ + if (nfds < 1 || nfds > OPEN_MAX) { + errno = EINVAL; + return (-1); + } -#include "ftw.h" - -/* I like symbolic values - this is only used in this file. */ - -enum __ftw_modes { - MODE_FTW, - MODE_NFTW -}; - -/* Prototype this so that we can have it later */ - -static int __ftw_core(const char *, void (*)(), int, int, enum __ftw_modes); - -/* - * The external function calls are really just wrappers around __ftw_core, - * since the work they do is 90% the same. - */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Aug 27 22:57:35 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 984A016A4D0; Fri, 27 Aug 2004 22:57:35 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5C63316A4CE for ; Fri, 27 Aug 2004 22:57:35 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 357D743D6A for ; Fri, 27 Aug 2004 22:57:35 +0000 (GMT) (envelope-from julian@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7RMvZ2p079115 for ; Fri, 27 Aug 2004 22:57:35 GMT (envelope-from julian@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7RMvYCg079112 for perforce@freebsd.org; Fri, 27 Aug 2004 22:57:34 GMT (envelope-from julian@freebsd.org) Date: Fri, 27 Aug 2004 22:57:34 GMT Message-Id: <200408272257.i7RMvYCg079112@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to julian@freebsd.org using -f From: Julian Elischer To: Perforce Change Reviews Subject: PERFORCE change 60550 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 27 Aug 2004 22:57:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=60550 Change 60550 by julian@julian_ref on 2004/08/27 22:57:27 IFC@60548 Affected files ... .. //depot/projects/nsched/sys/alpha/alpha/pmap.c#9 integrate .. //depot/projects/nsched/sys/alpha/conf/GENERIC#5 integrate .. //depot/projects/nsched/sys/alpha/include/cpu.h#6 integrate .. //depot/projects/nsched/sys/alpha/include/profile.h#3 integrate .. //depot/projects/nsched/sys/amd64/amd64/pmap.c#16 integrate .. //depot/projects/nsched/sys/amd64/conf/GENERIC#8 integrate .. //depot/projects/nsched/sys/amd64/conf/NOTES#4 integrate .. //depot/projects/nsched/sys/amd64/include/profile.h#6 integrate .. //depot/projects/nsched/sys/arm/include/profile.h#4 integrate .. //depot/projects/nsched/sys/boot/i386/boot0/Makefile#3 integrate .. //depot/projects/nsched/sys/boot/i386/boot2/Makefile#3 integrate .. //depot/projects/nsched/sys/conf/NOTES#12 integrate .. //depot/projects/nsched/sys/conf/files#19 integrate .. //depot/projects/nsched/sys/conf/ldscript.alpha#2 integrate .. //depot/projects/nsched/sys/conf/options#13 integrate .. //depot/projects/nsched/sys/contrib/ipfilter/netinet/ip_fil.c#5 integrate .. //depot/projects/nsched/sys/contrib/ipfilter/netinet/ip_fil.h#4 integrate .. //depot/projects/nsched/sys/dev/acpica/acpi_pci_link.c#6 integrate .. //depot/projects/nsched/sys/dev/ata/ata-all.c#9 integrate .. //depot/projects/nsched/sys/dev/ata/ata-all.h#4 integrate .. //depot/projects/nsched/sys/dev/ata/ata-chipset.c#9 integrate .. //depot/projects/nsched/sys/dev/ata/ata-disk.c#6 integrate .. //depot/projects/nsched/sys/dev/ata/ata-lowlevel.c#7 integrate .. //depot/projects/nsched/sys/dev/ata/ata-queue.c#6 integrate .. //depot/projects/nsched/sys/dev/ctau/if_ct.c#8 integrate .. //depot/projects/nsched/sys/dev/cx/if_cx.c#11 integrate .. //depot/projects/nsched/sys/dev/fdc/fdc.c#7 integrate .. //depot/projects/nsched/sys/dev/hfa/fore_receive.c#2 integrate .. //depot/projects/nsched/sys/dev/idt/idt_harp.c#2 integrate .. //depot/projects/nsched/sys/dev/ppbus/if_plip.c#4 integrate .. //depot/projects/nsched/sys/dev/usb/usbdevs#11 integrate .. //depot/projects/nsched/sys/fs/msdosfs/msdosfs_vfsops.c#6 integrate .. //depot/projects/nsched/sys/geom/concat/g_concat.c#7 integrate .. //depot/projects/nsched/sys/geom/geom.h#5 integrate .. //depot/projects/nsched/sys/geom/geom_io.c#6 integrate .. //depot/projects/nsched/sys/geom/label/g_label.c#5 integrate .. //depot/projects/nsched/sys/geom/mirror/g_mirror.c#3 integrate .. //depot/projects/nsched/sys/geom/raid3/g_raid3.c#4 integrate .. //depot/projects/nsched/sys/geom/stripe/g_stripe.c#6 integrate .. //depot/projects/nsched/sys/geom/vinum/geom_vinum.c#6 integrate .. //depot/projects/nsched/sys/geom/vinum/geom_vinum.h#3 integrate .. //depot/projects/nsched/sys/geom/vinum/geom_vinum_drive.c#5 integrate .. //depot/projects/nsched/sys/geom/vinum/geom_vinum_volume.c#4 integrate .. //depot/projects/nsched/sys/i386/conf/GENERIC#6 integrate .. //depot/projects/nsched/sys/i386/i386/pmap.c#14 integrate .. //depot/projects/nsched/sys/i386/include/profile.h#4 integrate .. //depot/projects/nsched/sys/i4b/driver/i4b_ipr.c#3 integrate .. //depot/projects/nsched/sys/ia64/conf/GENERIC#6 integrate .. //depot/projects/nsched/sys/ia64/conf/NOTES#3 integrate .. //depot/projects/nsched/sys/ia64/conf/SKI#5 integrate .. //depot/projects/nsched/sys/ia64/ia64/pmap.c#10 integrate .. //depot/projects/nsched/sys/ia64/include/profile.h#4 integrate .. //depot/projects/nsched/sys/isa/psm.c#7 integrate .. //depot/projects/nsched/sys/kern/kern_linker.c#6 integrate .. //depot/projects/nsched/sys/kern/kern_lock.c#5 integrate .. //depot/projects/nsched/sys/kern/sys_generic.c#4 integrate .. //depot/projects/nsched/sys/libkern/mcount.c#3 integrate .. //depot/projects/nsched/sys/modules/bridge/Makefile#2 integrate .. //depot/projects/nsched/sys/modules/ipfw/Makefile#4 integrate .. //depot/projects/nsched/sys/net/bridge.c#7 integrate .. //depot/projects/nsched/sys/net/if.c#8 integrate .. //depot/projects/nsched/sys/net/if_loop.c#8 integrate .. //depot/projects/nsched/sys/net/if_ppp.c#6 integrate .. //depot/projects/nsched/sys/net/if_sl.c#9 integrate .. //depot/projects/nsched/sys/net/if_spppsubr.c#7 integrate .. //depot/projects/nsched/sys/net/netisr.c#3 integrate .. //depot/projects/nsched/sys/net/rtsock.c#8 integrate .. //depot/projects/nsched/sys/netgraph/atm/atmpif/ng_atmpif_harp.c#2 integrate .. //depot/projects/nsched/sys/netinet/ip_fastfwd.c#5 integrate .. //depot/projects/nsched/sys/netinet/ip_fw2.c#9 integrate .. //depot/projects/nsched/sys/netinet/ip_fw_pfil.c#2 integrate .. //depot/projects/nsched/sys/netinet/ip_input.c#8 integrate .. //depot/projects/nsched/sys/netinet/ip_mroute.c#7 integrate .. //depot/projects/nsched/sys/netinet/ip_output.c#9 integrate .. //depot/projects/nsched/sys/netinet/ip_var.h#5 integrate .. //depot/projects/nsched/sys/netinet6/ah_input.c#2 integrate .. //depot/projects/nsched/sys/netinet6/esp_input.c#2 integrate .. //depot/projects/nsched/sys/netinet6/ip6_forward.c#2 integrate .. //depot/projects/nsched/sys/netinet6/ip6_input.c#7 integrate .. //depot/projects/nsched/sys/netinet6/ip6_output.c#5 integrate .. //depot/projects/nsched/sys/netinet6/ip6_var.h#4 integrate .. //depot/projects/nsched/sys/netipsec/ipsec_input.c#2 integrate .. //depot/projects/nsched/sys/netipsec/xform_ipip.c#4 integrate .. //depot/projects/nsched/sys/netkey/key.c#2 integrate .. //depot/projects/nsched/sys/netkey/keysock.c#3 integrate .. //depot/projects/nsched/sys/pc98/conf/GENERIC#6 integrate .. //depot/projects/nsched/sys/powerpc/conf/GENERIC#5 integrate .. //depot/projects/nsched/sys/powerpc/include/pmap.h#5 integrate .. //depot/projects/nsched/sys/powerpc/include/profile.h#3 integrate .. //depot/projects/nsched/sys/powerpc/powerpc/pmap.c#8 integrate .. //depot/projects/nsched/sys/sparc64/conf/GENERIC#6 integrate .. //depot/projects/nsched/sys/sparc64/include/profile.h#3 integrate .. //depot/projects/nsched/sys/sys/linker.h#4 integrate .. //depot/projects/nsched/sys/sys/param.h#11 integrate Differences ... ==== //depot/projects/nsched/sys/alpha/alpha/pmap.c#9 (text+ko) ==== @@ -148,7 +148,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.166 2004/08/15 20:54:25 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.168 2004/08/27 19:06:16 alc Exp $"); #include #include @@ -747,8 +747,6 @@ vm_paddr_t pa; pa = 0; - if (pmap == NULL) - return (pa); PMAP_LOCK(pmap); pte = pmap_lev3pte(pmap, va); if (pte != NULL && pmap_pte_v(pte)) @@ -771,8 +769,6 @@ vm_page_t m; m = NULL; - if (pmap == NULL) - return (m); vm_page_lock_queues(); PMAP_LOCK(pmap); pte = pmap_lev3pte(pmap, va); @@ -1468,9 +1464,6 @@ { vm_offset_t va, nva; - if (pmap == NULL) - return; - /* * Perform an unsynchronized read. This is, however, safe. */ @@ -1586,9 +1579,6 @@ pt_entry_t* pte; int newprot; - if (pmap == NULL) - return; - if ((prot & VM_PROT_READ) == VM_PROT_NONE) { pmap_remove(pmap, sva, eva); return; @@ -1681,9 +1671,6 @@ vm_page_t mpte; int managed; - if (pmap == NULL) - return; - va &= ~PAGE_MASK; #ifdef PMAP_DIAGNOSTIC if (va > VM_MAX_KERNEL_ADDRESS) @@ -1965,9 +1952,6 @@ { pt_entry_t *pte; - if (pmap == NULL) - return; - PMAP_LOCK(pmap); pte = pmap_lev3pte(pmap, va); @@ -2110,7 +2094,7 @@ pv_entry_t pv, npv; #ifdef PMAP_REMOVE_PAGES_CURPROC_ONLY - if (!curthread || (pmap != vmspace_pmap(curthread->td_proc->p_vmspace))) { + if (pmap != vmspace_pmap(curthread->td_proc->p_vmspace)) { printf("warning: pmap_remove_pages called with non-current pmap\n"); return; } ==== //depot/projects/nsched/sys/alpha/conf/GENERIC#5 (text+ko) ==== @@ -18,7 +18,7 @@ # # For hardware specific information check HARDWARE.TXT # -# $FreeBSD: src/sys/alpha/conf/GENERIC,v 1.174 2004/08/03 19:24:52 markm Exp $ +# $FreeBSD: src/sys/alpha/conf/GENERIC,v 1.175 2004/08/27 15:16:21 andre Exp $ machine alpha cpu EV4 @@ -69,7 +69,6 @@ options SYSVMSG #SYSV-style message queues options SYSVSEM #SYSV-style semaphores options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions -options PFIL_HOOKS # pfil(9) framework # Debugging for use in -current options KDB #Enable kernel debugger support ==== //depot/projects/nsched/sys/alpha/include/cpu.h#6 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/alpha/include/cpu.h,v 1.40 2004/08/03 18:44:26 mux Exp $ */ +/* $FreeBSD: src/sys/alpha/include/cpu.h,v 1.41 2004/08/27 19:20:42 marcel Exp $ */ /* From: NetBSD: cpu.h,v 1.18 1997/09/23 23:17:49 mjacob Exp */ /* @@ -92,6 +92,11 @@ #ifdef _KERNEL +#ifdef GPROF +extern char btext[]; +extern char etext[]; +#endif + #define cpu_getstack(td) (alpha_pal_rdusp()) #define cpu_spinwait() /* nothing */ #define get_cyclecount alpha_rpcc ==== //depot/projects/nsched/sys/alpha/include/profile.h#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/alpha/include/profile.h,v 1.6 2004/05/19 15:41:25 bde Exp $ */ +/* $FreeBSD: src/sys/alpha/include/profile.h,v 1.7 2004/08/27 19:42:34 marcel Exp $ */ /* From: NetBSD: profile.h,v 1.9 1997/04/06 08:47:37 cgd Exp */ /* @@ -215,11 +215,27 @@ * * XXX These macros should probably use inline assembly. */ -#define MCOUNT_ENTER(s) \ - s = _alpha_pal_swpipl(ALPHA_PSL_IPL_HIGH) -#define MCOUNT_EXIT(s) \ - (void)_alpha_pal_swpipl(s); -#define MCOUNT_DECL(s) u_long s; +u_long _alpha_pal_swpipl(u_long); + +#define MCOUNT_ENTER(s) s = _alpha_pal_swpipl(ALPHA_PSL_IPL_HIGH) +#define MCOUNT_EXIT(s) (void)_alpha_pal_swpipl(s) +#define MCOUNT_DECL(s) u_long s; + +void bintr(void); +void btrap(void); +void eintr(void); +void user(void); + +#define MCOUNT_FROMPC_USER(pc) \ + ((pc < (uintfptr_t)VM_MAXUSER_ADDRESS) ? (uintfptr_t)user : pc) + +#define MCOUNT_FROMPC_INTR(pc) \ + ((pc >= (uintfptr_t)btrap && pc < (uintfptr_t)eintr) ? \ + ((pc >= (uintfptr_t)bintr) ? (uintfptr_t)bintr : \ + (uintfptr_t)btrap) : ~0UL) + +_MCOUNT_DECL(uintfptr_t, uintfptr_t); + #else /* !_KERNEL */ typedef u_long uintfptr_t; #endif ==== //depot/projects/nsched/sys/amd64/amd64/pmap.c#16 (text+ko) ==== @@ -75,7 +75,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.493 2004/08/24 00:17:52 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.494 2004/08/27 19:06:16 alc Exp $"); /* * Manages physical address maps. @@ -786,8 +786,6 @@ pd_entry_t pde, *pdep; rtval = 0; - if (pmap == NULL) - return (rtval); PMAP_LOCK(pmap); pdep = pmap_pde(pmap, va); if (pdep != NULL) { @@ -821,8 +819,6 @@ vm_page_t m; m = NULL; - if (pmap == NULL) - return (m); vm_page_lock_queues(); PMAP_LOCK(pmap); pdep = pmap_pde(pmap, va); @@ -1563,9 +1559,6 @@ pt_entry_t *pte; int anyvalid; - if (pmap == NULL) - return; - /* * Perform an unsynchronized read. This is, however, safe. */ @@ -1737,9 +1730,6 @@ pd_entry_t ptpaddr, *pde; int anychanged; - if (pmap == NULL) - return; - if ((prot & VM_PROT_READ) == VM_PROT_NONE) { pmap_remove(pmap, sva, eva); return; @@ -1856,9 +1846,6 @@ pt_entry_t origpte, newpte; vm_page_t mpte; - if (pmap == NULL) - return; - va = trunc_page(va); #ifdef PMAP_DIAGNOSTIC if (va > VM_MAX_KERNEL_ADDRESS) @@ -2211,9 +2198,6 @@ { register pt_entry_t *pte; - if (pmap == NULL) - return; - /* * Wiring is not a hardware characteristic so there is no need to * invalidate TLB. ==== //depot/projects/nsched/sys/amd64/conf/GENERIC#8 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.421 2004/08/16 22:59:24 peter Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.422 2004/08/27 15:16:21 andre Exp $ machine amd64 cpu HAMMER @@ -57,7 +57,6 @@ # output. Adds ~128k to driver. options AHD_REG_PRETTY_PRINT # Print register bitfields in debug # output. Adds ~215k to driver. -options PFIL_HOOKS # pfil(9) framework options ADAPTIVE_GIANT # Giant mutex is adaptive. # Debugging for use in -current ==== //depot/projects/nsched/sys/amd64/conf/NOTES#4 (text+ko) ==== @@ -4,7 +4,7 @@ # This file contains machine dependent kernel configuration notes. For # machine independent notes, look in /sys/conf/NOTES. # -# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.18 2004/08/16 12:39:27 tjr Exp $ +# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.19 2004/08/27 21:29:20 arved Exp $ # # @@ -468,7 +468,7 @@ # Enable Linux ABI emulation #XXX#options COMPAT_LINUX -# Enable 32-bit Linux ABI emulation (requires COMPAT_43 and IA32) +# Enable 32-bit Linux ABI emulation (requires COMPAT_43 and COMPAT_IA32) options COMPAT_LINUX32 # Enable the linux-like proc filesystem support (requires COMPAT_LINUX32 ==== //depot/projects/nsched/sys/amd64/include/profile.h#6 (text+ko) ==== @@ -27,7 +27,7 @@ * SUCH DAMAGE. * * @(#)profile.h 8.1 (Berkeley) 6/11/93 - * $FreeBSD: src/sys/amd64/include/profile.h,v 1.41 2004/07/29 18:02:28 kan Exp $ + * $FreeBSD: src/sys/amd64/include/profile.h,v 1.42 2004/08/27 19:42:34 marcel Exp $ */ #ifndef _MACHINE_PROFILE_H_ @@ -87,6 +87,19 @@ #endif #endif /* GUPROF */ +void bintr(void); +void btrap(void); +void eintr(void); +void user(void); + +#define MCOUNT_FROMPC_USER(pc) \ + ((pc < (uintfptr_t)VM_MAXUSER_ADDRESS) ? (uintfptr_t)user : pc) + +#define MCOUNT_FROMPC_INTR(pc) \ + ((pc >= (uintfptr_t)btrap && pc < (uintfptr_t)eintr) ? \ + ((pc >= (uintfptr_t)bintr) ? (uintfptr_t)bintr : \ + (uintfptr_t)btrap) : ~0UL) + #else /* !_KERNEL */ #define FUNCTION_ALIGNMENT 4 ==== //depot/projects/nsched/sys/arm/include/profile.h#4 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)profile.h 8.1 (Berkeley) 6/11/93 - * $FreeBSD: src/sys/arm/include/profile.h,v 1.3 2004/07/20 22:38:46 cognet Exp $ + * $FreeBSD: src/sys/arm/include/profile.h,v 1.4 2004/08/27 19:42:34 marcel Exp $ */ #ifndef _MACHINE_PROFILE_H_ @@ -72,6 +72,19 @@ #endif #endif /* GUPROF */ +void bintr(void); +void btrap(void); +void eintr(void); +void user(void); + +#define MCOUNT_FROMPC_USER(pc) \ + ((pc < (uintfptr_t)VM_MAXUSER_ADDRESS) ? (uintfptr_t)user : pc) + +#define MCOUNT_FROMPC_INTR(pc) \ + ((pc >= (uintfptr_t)btrap && pc < (uintfptr_t)eintr) ? \ + ((pc >= (uintfptr_t)bintr) ? (uintfptr_t)bintr : \ + (uintfptr_t)btrap) : ~0U) + #else /* !_KERNEL */ #define FUNCTION_ALIGNMENT 4 ==== //depot/projects/nsched/sys/boot/i386/boot0/Makefile#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/boot/i386/boot0/Makefile,v 1.29 2004/04/28 21:31:19 ru Exp $ +# $FreeBSD: src/sys/boot/i386/boot0/Makefile,v 1.30 2004/08/27 00:18:03 obrien Exp $ PROG?= boot0 STRIP= @@ -10,7 +10,7 @@ # the modified boot0 back to disk after running so that the selection made is # saved), packet mode (detect and use the BIOS EDD extensions if we try to # boot past the 1024 cylinder liimt), and booting from all valid slices. -BOOT_BOOT0_FLAGS?= 0xf +BOOT_BOOT0_FLAGS?= 0x8f # The number of timer ticks to wait for a keypress before assuming the default # selection. Since there are 18.2 ticks per second, the default value of ==== //depot/projects/nsched/sys/boot/i386/boot2/Makefile#3 (text+ko) ==== @@ -1,11 +1,11 @@ -# $FreeBSD: src/sys/boot/i386/boot2/Makefile,v 1.56 2004/07/30 04:27:20 kan Exp $ +# $FreeBSD: src/sys/boot/i386/boot2/Makefile,v 1.57 2004/08/27 15:01:56 yar Exp $ FILES= boot boot1 boot2 NM?= nm # A value of 0x80 enables LBA support. -B1FLAGS= 0x80 +BOOT_BOOT1_FLAGS?= 0x80 BOOT_COMCONSOLE_PORT?= 0x3f8 BOOT_COMCONSOLE_SPEED?= 9600 @@ -27,7 +27,7 @@ -mno-align-long-strings \ -mrtd \ -D${BOOT2_UFS} \ - -DFLAGS=${B1FLAGS} \ + -DFLAGS=${BOOT_BOOT1_FLAGS} \ -DSIOPRT=${BOOT_COMCONSOLE_PORT} \ -DSIOFMT=${B2SIOFMT} \ -DSIOSPD=${BOOT_COMCONSOLE_SPEED} \ ==== //depot/projects/nsched/sys/conf/NOTES#12 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/NOTES,v 1.1263 2004/08/19 18:29:55 andre Exp $ +# $FreeBSD: src/sys/conf/NOTES,v 1.1265 2004/08/27 15:46:16 andre Exp $ # # NOTES -- Lines that can be cut/pasted into kernel and hints configs. # @@ -544,7 +544,6 @@ # The `pflog' device provides the pflog0 interface which logs packets. # The `pfsync' device provides the pfsync0 interface used for # synchronization of firewall state tables (over the net). -# Requires option PFIL_HOOKS # # The PPP_BSDCOMP option enables support for compress(1) style entire # packet compression, the PPP_DEFLATE is for zlib/gzip style compression. @@ -599,7 +598,6 @@ # conjunction with the `ipfw' program. IPFIREWALL_VERBOSE sends # logged packets to the system logger. IPFIREWALL_VERBOSE_LIMIT # limits the number of times a matching entry can be logged. -# IPFIREWALL requires the option PFIL_HOOKS. # # WARNING: IPFIREWALL defaults to a policy of "deny ip from any to any" # and if you do not add other rules during startup to allow access, @@ -618,14 +616,14 @@ # # IPDIVERT enables the divert IP sockets, used by ``ipfw divert'' # +# IPFIREWALL_FORWARD enables changing of the packet destination either +# to do some sort of policy routing or transparent proxying. Used by +# ``ipfw forward''. +# # IPSTEALTH enables code to support stealth forwarding (i.e., forwarding # packets without touching the ttl). This can be useful to hide firewalls # from traceroute and similar tools. # -# PFIL_HOOKS enables an abstraction layer which is meant to be used in -# network code where filtering is required. See pfil(9). This option is -# required by the IPFILTER option and the PF device. -# # TCPDEBUG enables code which keeps traces of the TCP state machine # for sockets with the SO_DEBUG option set, which can then be examined # using the trpt(8) utility. @@ -636,6 +634,7 @@ options IPFIREWALL_VERBOSE #enable logging to syslogd(8) options IPFIREWALL_VERBOSE_LIMIT=100 #limit verbosity options IPFIREWALL_DEFAULT_TO_ACCEPT #allow everything by default +options IPFIREWALL_FORWARD #packet destination changes options IPV6FIREWALL #firewall for IPv6 options IPV6FIREWALL_VERBOSE options IPV6FIREWALL_VERBOSE_LIMIT=100 @@ -645,7 +644,6 @@ options IPFILTER_LOG #ipfilter logging options IPFILTER_DEFAULT_BLOCK #block all packets by default options IPSTEALTH #support for stealth forwarding -options PFIL_HOOKS #required by IPFILTER options TCPDEBUG # The MBUF_STRESS_TEST option enables options which create ==== //depot/projects/nsched/sys/conf/files#19 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.944 2004/08/23 03:00:25 rwatson Exp $ +# $FreeBSD: src/sys/conf/files,v 1.945 2004/08/27 15:16:21 andre Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -1263,8 +1263,8 @@ net/netisr.c standard net/ppp_deflate.c optional ppp_deflate net/ppp_tty.c optional ppp -net/pfil.c optional pfil_hooks -net/pfil.c optional ipfilter +net/pfil.c optional ether +net/pfil.c optional inet net/radix.c standard net/raw_cb.c standard net/raw_usrreq.c standard ==== //depot/projects/nsched/sys/conf/ldscript.alpha#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/conf/ldscript.alpha,v 1.7 2004/02/13 12:28:53 ru Exp $ */ +/* $FreeBSD: src/sys/conf/ldscript.alpha,v 1.8 2004/08/27 19:13:35 marcel Exp $ */ OUTPUT_FORMAT("elf64-alpha-freebsd", "elf64-alpha-freebsd", "elf64-alpha-freebsd") OUTPUT_ARCH(alpha) ENTRY(locorestart) @@ -41,6 +41,7 @@ .rela.bss : { *(.rela.bss) } .rel.plt : { *(.rel.plt) } .rela.plt : { *(.rela.plt) } + PROVIDE (btext = .); .init : { *(.init) } =0x47ff041f .text : { ==== //depot/projects/nsched/sys/conf/options#13 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options,v 1.476 2004/08/19 06:38:26 jmg Exp $ +# $FreeBSD: src/sys/conf/options,v 1.477 2004/08/27 15:16:21 andre Exp $ # # On the handling of kernel options # @@ -344,7 +344,6 @@ IPFILTER opt_ipfilter.h IPFILTER_LOG opt_ipfilter.h IPFILTER_DEFAULT_BLOCK opt_ipfilter.h -PFIL_HOOKS opt_pfil_hooks.h IPFIREWALL opt_ipfw.h IPFIREWALL_VERBOSE opt_ipfw.h IPFIREWALL_VERBOSE_LIMIT opt_ipfw.h ==== //depot/projects/nsched/sys/contrib/ipfilter/netinet/ip_fil.c#5 (text+ko) ==== @@ -71,7 +71,8 @@ # if defined(_KERNEL) && !defined(IPFILTER_LKM) # include "opt_ipfilter.h" # endif -# if defined(_KERNEL) && (__FreeBSD_version >= 501108) && !defined(KLD_MODULE) +# if defined(_KERNEL) && (__FreeBSD_version >= 501108) && \ + (__FreeBSD_version < 600001) && !defined(KLD_MODULE) # include "opt_pfil_hooks.h" # endif #endif @@ -131,7 +132,7 @@ #if !defined(lint) static const char sccsid[] = "@(#)ip_fil.c 2.41 6/5/96 (C) 1993-2000 Darren Reed"; /* static const char rcsid[] = "@(#)$Id: ip_fil.c,v 2.42.2.34 2001/07/23 13:49:57 darrenr Exp $"; */ -static const char rcsid[] = "@(#)$FreeBSD: src/sys/contrib/ipfilter/netinet/ip_fil.c,v 1.47 2004/07/11 10:13:05 darrenr Exp $"; +static const char rcsid[] = "@(#)$FreeBSD: src/sys/contrib/ipfilter/netinet/ip_fil.c,v 1.48 2004/08/27 20:01:08 andre Exp $"; #endif extern struct protosw inetsw[]; ==== //depot/projects/nsched/sys/contrib/ipfilter/netinet/ip_fil.h#4 (text+ko) ==== @@ -5,7 +5,7 @@ * * @(#)ip_fil.h 1.35 6/5/96 * $Id: ip_fil.h,v 2.29.2.4 2000/11/12 11:54:53 darrenr Exp $ - * $FreeBSD: src/sys/contrib/ipfilter/netinet/ip_fil.h,v 1.26 2004/06/21 22:46:35 darrenr Exp $ + * $FreeBSD: src/sys/contrib/ipfilter/netinet/ip_fil.h,v 1.27 2004/08/27 20:01:08 andre Exp $ */ #ifndef __IP_FIL_H__ @@ -497,7 +497,7 @@ #if (defined(NetBSD) && (NetBSD > 199609) && (NetBSD <= 1991011)) || \ (defined(NetBSD1_2) && NetBSD1_2 > 1) || (defined(__FreeBSD_version) && \ (__FreeBSD_version >= 500011)) -# if (NetBSD >= 199905) +# if (NetBSD >= 199905) || (__FreeBSD_version >= 600001) # define PFIL_HOOKS # endif # ifdef PFIL_HOOKS ==== //depot/projects/nsched/sys/dev/acpica/acpi_pci_link.c#6 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.26 2004/08/21 18:18:32 njl Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.28 2004/08/27 00:53:11 njl Exp $"); #include "opt_acpi.h" #include @@ -648,13 +648,17 @@ * assume we were successful. */ error = acpi_pci_link_get_current_irq(link, &link->current_irq); - if (ACPI_FAILURE(error) && bootverbose) { - printf("acpi link set: _CRS failed for link %s - %s\n", - acpi_name(link->handle), AcpiFormatException(error)); + if (ACPI_FAILURE(error)) { + if (bootverbose) + printf("acpi link set: _CRS failed for link %s - %s\n", + acpi_name(link->handle), + AcpiFormatException(error)); + error = AE_OK; } if (link->current_irq != irq) { - printf("acpi link set: curr irq %d != %d for %s (ignoring)\n", - link->current_irq, irq, acpi_name(link->handle)); + if (bootverbose) + printf("acpi link set: curr irq %d != %d for %s\n", + link->current_irq, irq, acpi_name(link->handle)); link->current_irq = irq; } ==== //depot/projects/nsched/sys/dev/ata/ata-all.c#9 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-all.c,v 1.223 2004/08/24 15:09:05 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-all.c,v 1.224 2004/08/27 14:48:32 sos Exp $"); #include "opt_ata.h" #include @@ -115,7 +115,6 @@ return 0; } - int ata_attach(device_t dev) { @@ -190,7 +189,6 @@ ata_fail_requests(ch, NULL); /* unlock the channel */ - ch->running = NULL; ATA_UNLOCK_CH(ch); ch->locking(ch, ATA_LF_UNLOCK); @@ -237,12 +235,14 @@ if (!ch->r_irq) return ENXIO; - /* reset the HW */ if (bootverbose) ata_printf(ch, -1, "reiniting channel ..\n"); + ATA_FORCELOCK_CH(ch); + ata_catch_inflight(ch); ch->flags |= ATA_IMMEDIATE_MODE; devices = ch->devices; + ch->hw.reset(ch); if (bootverbose) @@ -267,7 +267,6 @@ } /* unlock the channel */ - ch->running = NULL; ATA_UNLOCK_CH(ch); ch->locking(ch, ATA_LF_UNLOCK); ==== //depot/projects/nsched/sys/dev/ata/ata-all.h#4 (text+ko) ==== @@ -25,7 +25,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/ata/ata-all.h,v 1.81 2004/08/13 08:14:27 sos Exp $ + * $FreeBSD: src/sys/dev/ata/ata-all.h,v 1.82 2004/08/27 14:48:32 sos Exp $ */ /* ATA register defines */ @@ -410,6 +410,7 @@ int ata_atapicmd(struct ata_device *atadev, u_int8_t *ccb, caddr_t data, int count, int flags, int timeout); void ata_queue_request(struct ata_request *request); void ata_finish(struct ata_request *request); +void ata_catch_inflight(struct ata_channel *ch); void ata_fail_requests(struct ata_channel *ch, struct ata_device *device); char *ata_cmd2str(struct ata_request *request); ==== //depot/projects/nsched/sys/dev/ata/ata-chipset.c#9 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.82 2004/08/24 20:11:26 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.83 2004/08/27 12:54:58 sos Exp $"); #include "opt_ata.h" #include @@ -979,9 +979,9 @@ pci_write_config(parent, 0x54, reg54 & ~(0x1 << devno), 2); if (mode >= ATA_UDMA5) - pci_write_config(parent, 0x54, reg54 | (0x10000 << devno), 2); + pci_write_config(parent, 0x54, reg54 | (0x1000 << devno), 2); else - pci_write_config(parent, 0x54, reg54 & ~(0x10000 << devno), 2); + pci_write_config(parent, 0x54, reg54 & ~(0x1000 << devno), 2); reg40 &= ~0x00ff00ff; reg40 |= 0x40774077; ==== //depot/projects/nsched/sys/dev/ata/ata-disk.c#6 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-disk.c,v 1.175 2004/08/05 21:11:32 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-disk.c,v 1.176 2004/08/27 12:03:18 sos Exp $"); #include "opt_ata.h" #include @@ -164,12 +164,12 @@ if (adp->flags & AD_F_RAID_SUBDISK) ata_raiddisk_detach(adp); #endif + disk_destroy(adp->disk); + ata_prtdev(atadev, "WARNING - removed from configuration\n"); mtx_lock(&adp->queue_mtx); bioq_flush(&adp->queue, NULL, ENXIO); mtx_unlock(&adp->queue_mtx); mtx_destroy(&adp->queue_mtx); - disk_destroy(adp->disk); - ata_prtdev(atadev, "WARNING - removed from configuration\n"); ata_free_name(atadev); ata_free_lun(&adp_lun_map, adp->lun); atadev->attach = NULL; @@ -219,10 +219,6 @@ { struct ad_softc *adp = bp->bio_disk->d_drv1; - if (adp->device->flags & ATA_D_DETACHING) { - biofinish(bp, NULL, ENXIO); - return; - } mtx_lock(&adp->queue_mtx); bioq_disksort(&adp->queue, bp); mtx_unlock(&adp->queue_mtx); @@ -245,6 +241,10 @@ } bioq_remove(&adp->queue, bp); mtx_unlock(&adp->queue_mtx); + if (adp->device->flags & ATA_D_DETACHING) { + biofinish(bp, NULL, ENXIO); + return; + } if (!(request = ata_alloc_request())) { ata_prtdev(atadev, "FAILURE - out of memory in start\n"); ==== //depot/projects/nsched/sys/dev/ata/ata-lowlevel.c#7 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.44 2004/08/16 09:32:35 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.46 2004/08/27 22:14:45 sos Exp $"); #include "opt_ata.h" #include @@ -48,7 +48,6 @@ static void ata_generic_interrupt(void *); static void ata_generic_reset(struct ata_channel *); static int ata_wait(struct ata_device *, u_int8_t); -/*static int ata_command(struct ata_device *, u_int8_t, u_int64_t, u_int16_t, u_int16_t);*/ static void ata_pio_read(struct ata_request *, int); static void ata_pio_write(struct ata_request *, int); @@ -526,7 +525,8 @@ break; } - /* schedule completition for this request */ + /* finished running this request schedule completition */ + ch->running = NULL; ata_finish(request); } @@ -538,6 +538,14 @@ u_int8_t stat0 = 0, stat1 = 0; int mask = 0, timeout; + /* if DMA functionality present stop it */ + if (ch->dma) { + if (ch->dma->stop) + ch->dma->stop(ch); + if (ch->dma->flags & ATA_DMA_LOADED) + ch->dma->unload(ch); + } + /* reset host end of channel (if supported) */ if (ch->reset) ch->reset(ch); ==== //depot/projects/nsched/sys/dev/ata/ata-queue.c#6 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-queue.c,v 1.33 2004/08/22 15:54:08 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-queue.c,v 1.34 2004/08/27 14:48:32 sos Exp $"); #include "opt_ata.h" #include @@ -70,6 +70,7 @@ /* kick HW into action */ if (request->device->channel->hw.transaction(request)==ATA_OP_FINISHED){ + untimeout((timeout_t *)ata_timeout,request,request->timeout_handle); if (!request->callback) sema_destroy(&request->done); return; @@ -209,7 +210,6 @@ /* if we timed out the unlocking of the ATA channel is done later */ if (!(request->flags & ATA_R_TIMEOUT)) { - ch->running = NULL; ATA_UNLOCK_CH(ch); ch->locking(ch, ATA_LF_UNLOCK); } @@ -466,7 +466,25 @@ /* now simulate the missing interrupt */ request->flags |= ATA_R_TIMEOUT; request->device->channel->hw.interrupt(request->device->channel); - return; +} + +void +ata_catch_inflight(struct ata_channel *ch) +{ + struct ata_request *request = ch->running; + + ch->running = NULL; + if (request) { + untimeout((timeout_t *)ata_timeout, request, request->timeout_handle); + ata_prtdev(request->device, + "WARNING - %s requeued due to channel reset", + ata_cmd2str(request)); + if (!(request->flags & (ATA_R_ATAPI | ATA_R_CONTROL))) + printf(" LBA=%llu", (unsigned long long)request->u.ata.lba); + printf("\n"); + request->flags |= ATA_R_REQUEUE; + ata_queue_request(request); + } } void @@ -491,6 +509,7 @@ /* if we have a request "in flight" fail it as well */ if ((request = ch->running) && (!device || request->device == device)) { untimeout((timeout_t *)ata_timeout, request, request->timeout_handle); + ch->running = NULL; request->result = ENXIO; if (request->callback) (request->callback)(request); ==== //depot/projects/nsched/sys/dev/ctau/if_ct.c#8 (text+ko) ==== @@ -22,7 +22,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ctau/if_ct.c,v 1.14 2004/08/13 12:35:52 rik Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ctau/if_ct.c,v 1.15 2004/08/27 22:14:26 rik Exp $"); #include @@ -735,7 +735,8 @@ d->pp.pp_if.if_name = "ct"; #endif d->pp.pp_if.if_mtu = PP_MTU; - d->pp.pp_if.if_flags = IFF_POINTOPOINT | IFF_MULTICAST; + d->pp.pp_if.if_flags = IFF_POINTOPOINT | IFF_MULTICAST | + IFF_NEEDSGIANT; d->pp.pp_if.if_ioctl = ct_sioctl; d->pp.pp_if.if_start = ct_ifstart; d->pp.pp_if.if_watchdog = ct_ifwatchdog; ==== //depot/projects/nsched/sys/dev/cx/if_cx.c#11 (text+ko) ==== @@ -23,7 +23,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/cx/if_cx.c,v 1.30 2004/08/13 12:35:52 rik Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/cx/if_cx.c,v 1.31 2004/08/27 22:14:26 rik Exp $"); #include @@ -867,7 +867,8 @@ d->pp.pp_if.if_name = "cx"; #endif d->pp.pp_if.if_mtu = PP_MTU; - d->pp.pp_if.if_flags = IFF_POINTOPOINT | IFF_MULTICAST; + d->pp.pp_if.if_flags = IFF_POINTOPOINT | IFF_MULTICAST | + IFF_NEEDSGIANT; d->pp.pp_if.if_ioctl = cx_sioctl; d->pp.pp_if.if_start = cx_ifstart; d->pp.pp_if.if_watchdog = cx_ifwatchdog; ==== //depot/projects/nsched/sys/dev/fdc/fdc.c#7 (text+ko) ==== @@ -51,7 +51,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/fdc/fdc.c,v 1.285 2004/08/21 08:40:00 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/fdc/fdc.c,v 1.286 2004/08/27 17:08:24 phk Exp $"); #include "opt_fdc.h" @@ -1601,7 +1601,9 @@ return (ENXIO); if (fdc_cmd(fdc, 1, 0x18, 1, &part_id)) return (ENXIO); - device_printf(dev, "ic_type %02x part_id %02x\n", ic_type, part_id); + if (bootverbose) + device_printf(dev, + "ic_type %02x part_id %02x\n", ic_type, part_id); switch (ic_type & 0xff) { case 0x80: device_set_desc(dev, "NEC 765 or clone"); ==== //depot/projects/nsched/sys/dev/hfa/fore_receive.c#2 (text+ko) ==== @@ -23,7 +23,7 @@ */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Aug 28 00:25:27 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 55D0E16A4D0; Sat, 28 Aug 2004 00:25:27 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 18C0F16A4CE for ; Sat, 28 Aug 2004 00:25:27 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id ECA0143D31 for ; Sat, 28 Aug 2004 00:25:26 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7S0PQDT081575 for ; Sat, 28 Aug 2004 00:25:26 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7S0PQ7D081572 for perforce@freebsd.org; Sat, 28 Aug 2004 00:25:26 GMT (envelope-from peter@freebsd.org) Date: Sat, 28 Aug 2004 00:25:26 GMT Message-Id: <200408280025.i7S0PQ7D081572@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 60562 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Aug 2004 00:25:28 -0000 http://perforce.freebsd.org/chv.cgi?CH=60562 Change 60562 by peter@peter_daintree on 2004/08/28 00:25:23 darn it, we need this Affected files ... .. //depot/projects/hammer/sys/kern/kern_switch.c#22 edit Differences ... ==== //depot/projects/hammer/sys/kern/kern_switch.c#22 (text+ko) ==== @@ -522,6 +522,10 @@ * to the new thread. */ ctd = curthread; + + if ((ctd->td_kse == NULL) || (ctd->td_kse->ke_thread != ctd)) + return (0); + pri = td->td_priority; cpri = ctd->td_priority; if (pri >= cpri || cold /* || dumping */ || TD_IS_INHIBITED(ctd) || From owner-p4-projects@FreeBSD.ORG Sat Aug 28 00:27:30 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 84B2416A4CE; Sat, 28 Aug 2004 00:27:30 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3C63816A4CF for ; Sat, 28 Aug 2004 00:27:30 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E954343D53 for ; Sat, 28 Aug 2004 00:27:29 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7S0RTEJ081636 for ; Sat, 28 Aug 2004 00:27:29 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7S0RTcl081633 for perforce@freebsd.org; Sat, 28 Aug 2004 00:27:29 GMT (envelope-from peter@freebsd.org) Date: Sat, 28 Aug 2004 00:27:29 GMT Message-Id: <200408280027.i7S0RTcl081633@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 60563 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Aug 2004 00:27:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=60563 Change 60563 by peter@peter_daintree on 2004/08/28 00:26:44 see jeffr's comments Affected files ... .. //depot/projects/hammer/sys/kern/sched_ule.c#42 edit Differences ... ==== //depot/projects/hammer/sys/kern/sched_ule.c#42 (text+ko) ==== @@ -1200,7 +1200,16 @@ if (newtd != NULL) { kseq_load_add(KSEQ_SELF(), newtd->td_kse); ke->ke_cpu = PCPU_GET(cpuid); +#if 0 +/* +05:25 The runq should be NULL and should stay NULL at that point. +05:25 If you look a few lines above you see the !TD_IS_RUNNING() case in the else clause. +05:26 Where it removes the load of a thread if it has a non null runq. +05:26 In the preemption case I was assigning it to a runq but never adding the load. +05:26 So this probably caused the counter to hit -1. +*/ ke->ke_runq = KSEQ_SELF()->ksq_curr; +#endif } else newtd = choosethread(); if (td != newtd) From owner-p4-projects@FreeBSD.ORG Sat Aug 28 00:27:31 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0B84F16A506; Sat, 28 Aug 2004 00:27:31 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6754416A4D1 for ; Sat, 28 Aug 2004 00:27:30 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3ACCD43D2F for ; Sat, 28 Aug 2004 00:27:30 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7S0RUGY081642 for ; Sat, 28 Aug 2004 00:27:30 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7S0RT4c081639 for perforce@freebsd.org; Sat, 28 Aug 2004 00:27:29 GMT (envelope-from peter@freebsd.org) Date: Sat, 28 Aug 2004 00:27:29 GMT Message-Id: <200408280027.i7S0RT4c081639@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 60564 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Aug 2004 00:27:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=60564 Change 60564 by peter@peter_melody on 2004/08/28 00:27:19 turn preemption back on, damn it! Affected files ... .. //depot/projects/hammer/sys/amd64/include/param.h#23 edit Differences ... ==== //depot/projects/hammer/sys/amd64/include/param.h#23 (text+ko) ==== @@ -119,10 +119,7 @@ #define NBPML4 (1ul< Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 91C6516A4D0; Sat, 28 Aug 2004 00:30:34 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6C15F16A4CE for ; Sat, 28 Aug 2004 00:30:34 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 638CF43D55 for ; Sat, 28 Aug 2004 00:30:34 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7S0UYhB081733 for ; Sat, 28 Aug 2004 00:30:34 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7S0UYPZ081730 for perforce@freebsd.org; Sat, 28 Aug 2004 00:30:34 GMT (envelope-from peter@freebsd.org) Date: Sat, 28 Aug 2004 00:30:34 GMT Message-Id: <200408280030.i7S0UYPZ081730@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 60565 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Aug 2004 00:30:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=60565 Change 60565 by peter@peter_melody on 2004/08/28 00:30:02 jeff says the oncpu line is redundant too Affected files ... .. //depot/projects/hammer/sys/kern/sched_ule.c#43 edit Differences ... ==== //depot/projects/hammer/sys/kern/sched_ule.c#43 (text+ko) ==== @@ -1199,7 +1199,6 @@ } if (newtd != NULL) { kseq_load_add(KSEQ_SELF(), newtd->td_kse); - ke->ke_cpu = PCPU_GET(cpuid); #if 0 /* 05:25 The runq should be NULL and should stay NULL at that point. @@ -1208,6 +1207,7 @@ 05:26 In the preemption case I was assigning it to a runq but never adding the load. 05:26 So this probably caused the counter to hit -1. */ + ke->ke_cpu = PCPU_GET(cpuid); ke->ke_runq = KSEQ_SELF()->ksq_curr; #endif } else From owner-p4-projects@FreeBSD.ORG Sat Aug 28 00:42:01 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4307816A4D0; Sat, 28 Aug 2004 00:42:01 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1504B16A4CE for ; Sat, 28 Aug 2004 00:42:01 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0A6B243D54 for ; Sat, 28 Aug 2004 00:42:01 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7S0g0TV082335 for ; Sat, 28 Aug 2004 00:42:00 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7S0g06x082330 for perforce@freebsd.org; Sat, 28 Aug 2004 00:42:00 GMT (envelope-from peter@freebsd.org) Date: Sat, 28 Aug 2004 00:42:00 GMT Message-Id: <200408280042.i7S0g06x082330@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 60566 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Aug 2004 00:42:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=60566 Change 60566 by peter@peter_melody on 2004/08/28 00:40:59 ok, this seems to fix ule+smp+preemption, clean it up. Affected files ... .. //depot/projects/hammer/sys/kern/sched_ule.c#44 edit Differences ... ==== //depot/projects/hammer/sys/kern/sched_ule.c#44 (text+ko) ==== @@ -1197,20 +1197,9 @@ kse_reassign(ke); } } - if (newtd != NULL) { + if (newtd != NULL) kseq_load_add(KSEQ_SELF(), newtd->td_kse); -#if 0 -/* -05:25 The runq should be NULL and should stay NULL at that point. -05:25 If you look a few lines above you see the !TD_IS_RUNNING() case in the else clause. -05:26 Where it removes the load of a thread if it has a non null runq. -05:26 In the preemption case I was assigning it to a runq but never adding the load. -05:26 So this probably caused the counter to hit -1. -*/ - ke->ke_cpu = PCPU_GET(cpuid); - ke->ke_runq = KSEQ_SELF()->ksq_curr; -#endif - } else + else newtd = choosethread(); if (td != newtd) cpu_switch(td, newtd); From owner-p4-projects@FreeBSD.ORG Sat Aug 28 04:29:43 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9FE1516A4D0; Sat, 28 Aug 2004 04:29:42 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5D57716A4CE for ; Sat, 28 Aug 2004 04:29:42 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 32BD943D53 for ; Sat, 28 Aug 2004 04:29:42 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7S4TgBa089162 for ; Sat, 28 Aug 2004 04:29:42 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7S4TfGQ089159 for perforce@freebsd.org; Sat, 28 Aug 2004 04:29:41 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 28 Aug 2004 04:29:41 GMT Message-Id: <200408280429.i7S4TfGQ089159@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 60581 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Aug 2004 04:29:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=60581 Change 60581 by rwatson@rwatson_tislabs on 2004/08/28 04:29:01 - options PFIL_HOOKS is now not an option. - netisr queue logic fix - various scheduling related fixes loop back from netperf: - unp_gc() running without UNIX domain socket lock. Affected files ... .. //depot/projects/netperf_socket/sys/alpha/alpha/pmap.c#18 integrate .. //depot/projects/netperf_socket/sys/alpha/conf/GENERIC#8 integrate .. //depot/projects/netperf_socket/sys/alpha/include/cpu.h#6 integrate .. //depot/projects/netperf_socket/sys/alpha/include/profile.h#3 integrate .. //depot/projects/netperf_socket/sys/amd64/amd64/mp_machdep.c#11 integrate .. //depot/projects/netperf_socket/sys/amd64/amd64/pmap.c#26 integrate .. //depot/projects/netperf_socket/sys/amd64/conf/GENERIC#16 integrate .. //depot/projects/netperf_socket/sys/amd64/conf/NOTES#9 integrate .. //depot/projects/netperf_socket/sys/amd64/include/profile.h#6 integrate .. //depot/projects/netperf_socket/sys/arm/include/profile.h#3 integrate .. //depot/projects/netperf_socket/sys/boot/i386/boot0/Makefile#4 integrate .. //depot/projects/netperf_socket/sys/boot/i386/boot2/Makefile#4 integrate .. //depot/projects/netperf_socket/sys/conf/NOTES#39 integrate .. //depot/projects/netperf_socket/sys/conf/files#50 integrate .. //depot/projects/netperf_socket/sys/conf/ldscript.alpha#3 integrate .. //depot/projects/netperf_socket/sys/conf/options#28 integrate .. //depot/projects/netperf_socket/sys/contrib/ipfilter/netinet/ip_fil.c#6 integrate .. //depot/projects/netperf_socket/sys/contrib/ipfilter/netinet/ip_fil.h#4 integrate .. //depot/projects/netperf_socket/sys/dev/acpica/acpi_pci_link.c#12 integrate .. //depot/projects/netperf_socket/sys/dev/ata/ata-all.c#17 integrate .. //depot/projects/netperf_socket/sys/dev/ata/ata-all.h#11 integrate .. //depot/projects/netperf_socket/sys/dev/ata/ata-chipset.c#18 integrate .. //depot/projects/netperf_socket/sys/dev/ata/ata-disk.c#8 integrate .. //depot/projects/netperf_socket/sys/dev/ata/ata-lowlevel.c#16 integrate .. //depot/projects/netperf_socket/sys/dev/ata/ata-queue.c#13 integrate .. //depot/projects/netperf_socket/sys/dev/ctau/if_ct.c#10 integrate .. //depot/projects/netperf_socket/sys/dev/cx/if_cx.c#16 integrate .. //depot/projects/netperf_socket/sys/dev/fdc/fdc.c#10 integrate .. //depot/projects/netperf_socket/sys/dev/hfa/fore_receive.c#3 integrate .. //depot/projects/netperf_socket/sys/dev/idt/idt_harp.c#2 integrate .. //depot/projects/netperf_socket/sys/dev/ppbus/if_plip.c#5 integrate .. //depot/projects/netperf_socket/sys/dev/uart/uart_bus_isa.c#3 integrate .. //depot/projects/netperf_socket/sys/dev/usb/usbdevs#23 integrate .. //depot/projects/netperf_socket/sys/fs/msdosfs/msdosfs_vfsops.c#9 integrate .. //depot/projects/netperf_socket/sys/geom/concat/g_concat.c#13 integrate .. //depot/projects/netperf_socket/sys/geom/geom.h#7 integrate .. //depot/projects/netperf_socket/sys/geom/geom_io.c#7 integrate .. //depot/projects/netperf_socket/sys/geom/label/g_label.c#5 integrate .. //depot/projects/netperf_socket/sys/geom/mirror/g_mirror.c#9 integrate .. //depot/projects/netperf_socket/sys/geom/raid3/g_raid3.c#5 integrate .. //depot/projects/netperf_socket/sys/geom/raid3/g_raid3_ctl.c#3 integrate .. //depot/projects/netperf_socket/sys/geom/stripe/g_stripe.c#10 integrate .. //depot/projects/netperf_socket/sys/geom/vinum/geom_vinum.c#9 integrate .. //depot/projects/netperf_socket/sys/geom/vinum/geom_vinum.h#3 integrate .. //depot/projects/netperf_socket/sys/geom/vinum/geom_vinum_drive.c#10 integrate .. //depot/projects/netperf_socket/sys/geom/vinum/geom_vinum_volume.c#5 integrate .. //depot/projects/netperf_socket/sys/i386/conf/GENERIC#13 integrate .. //depot/projects/netperf_socket/sys/i386/i386/mp_machdep.c#8 integrate .. //depot/projects/netperf_socket/sys/i386/i386/pmap.c#26 integrate .. //depot/projects/netperf_socket/sys/i386/include/profile.h#5 integrate .. //depot/projects/netperf_socket/sys/i4b/driver/i4b_ipr.c#3 integrate .. //depot/projects/netperf_socket/sys/ia64/conf/GENERIC#9 integrate .. //depot/projects/netperf_socket/sys/ia64/conf/NOTES#3 integrate .. //depot/projects/netperf_socket/sys/ia64/conf/SKI#6 integrate .. //depot/projects/netperf_socket/sys/ia64/ia64/pmap.c#17 integrate .. //depot/projects/netperf_socket/sys/ia64/include/profile.h#4 integrate .. //depot/projects/netperf_socket/sys/isa/psm.c#11 integrate .. //depot/projects/netperf_socket/sys/kern/kern_kse.c#11 integrate .. //depot/projects/netperf_socket/sys/kern/kern_linker.c#7 integrate .. //depot/projects/netperf_socket/sys/kern/kern_lock.c#6 integrate .. //depot/projects/netperf_socket/sys/kern/kern_switch.c#11 integrate .. //depot/projects/netperf_socket/sys/kern/sched_ule.c#19 integrate .. //depot/projects/netperf_socket/sys/kern/subr_smp.c#10 integrate .. //depot/projects/netperf_socket/sys/kern/sys_generic.c#6 integrate .. //depot/projects/netperf_socket/sys/kern/uipc_usrreq.c#26 integrate .. //depot/projects/netperf_socket/sys/libkern/mcount.c#3 integrate .. //depot/projects/netperf_socket/sys/modules/bridge/Makefile#2 integrate .. //depot/projects/netperf_socket/sys/modules/ipfw/Makefile#4 integrate .. //depot/projects/netperf_socket/sys/net/bridge.c#10 integrate .. //depot/projects/netperf_socket/sys/net/if.c#17 integrate .. //depot/projects/netperf_socket/sys/net/if_loop.c#9 integrate .. //depot/projects/netperf_socket/sys/net/if_ppp.c#8 integrate .. //depot/projects/netperf_socket/sys/net/if_sl.c#12 integrate .. //depot/projects/netperf_socket/sys/net/if_spppsubr.c#10 integrate .. //depot/projects/netperf_socket/sys/net/netisr.c#3 integrate .. //depot/projects/netperf_socket/sys/net/rtsock.c#14 integrate .. //depot/projects/netperf_socket/sys/netgraph/atm/atmpif/ng_atmpif_harp.c#2 integrate .. //depot/projects/netperf_socket/sys/netinet/ip_fastfwd.c#10 integrate .. //depot/projects/netperf_socket/sys/netinet/ip_fw2.c#17 integrate .. //depot/projects/netperf_socket/sys/netinet/ip_fw_pfil.c#3 integrate .. //depot/projects/netperf_socket/sys/netinet/ip_input.c#24 integrate .. //depot/projects/netperf_socket/sys/netinet/ip_mroute.c#14 integrate .. //depot/projects/netperf_socket/sys/netinet/ip_output.c#19 integrate .. //depot/projects/netperf_socket/sys/netinet/ip_var.h#9 integrate .. //depot/projects/netperf_socket/sys/netinet6/ah_input.c#2 integrate .. //depot/projects/netperf_socket/sys/netinet6/esp_input.c#2 integrate .. //depot/projects/netperf_socket/sys/netinet6/ip6_forward.c#3 integrate .. //depot/projects/netperf_socket/sys/netinet6/ip6_input.c#10 integrate .. //depot/projects/netperf_socket/sys/netinet6/ip6_output.c#7 integrate .. //depot/projects/netperf_socket/sys/netinet6/ip6_var.h#4 integrate .. //depot/projects/netperf_socket/sys/netipsec/ipsec_input.c#2 integrate .. //depot/projects/netperf_socket/sys/netipsec/xform_ipip.c#5 integrate .. //depot/projects/netperf_socket/sys/netkey/key.c#3 integrate .. //depot/projects/netperf_socket/sys/netkey/keysock.c#3 integrate .. //depot/projects/netperf_socket/sys/pc98/conf/GENERIC#13 integrate .. //depot/projects/netperf_socket/sys/powerpc/conf/GENERIC#11 integrate .. //depot/projects/netperf_socket/sys/powerpc/include/pmap.h#7 integrate .. //depot/projects/netperf_socket/sys/powerpc/include/profile.h#3 integrate .. //depot/projects/netperf_socket/sys/powerpc/powerpc/pmap.c#16 integrate .. //depot/projects/netperf_socket/sys/sparc64/conf/GENERIC#11 integrate .. //depot/projects/netperf_socket/sys/sparc64/include/profile.h#3 integrate .. //depot/projects/netperf_socket/sys/sys/linker.h#4 integrate .. //depot/projects/netperf_socket/sys/sys/param.h#27 integrate .. //depot/projects/netperf_socket/sys/sys/proc.h#24 integrate .. //depot/projects/netperf_socket/sys/sys/smp.h#4 integrate .. //depot/user/bmilekic/mbuma2/src/sys/i386/conf/GENERIC#6 edit .. //depot/user/bmilekic/mbuma2/src/usr.bin/netstat/Makefile#3 edit .. //depot/user/rwatson/vcc/sys/sys/mac_policy.h#4 edit Differences ... ==== //depot/projects/netperf_socket/sys/alpha/alpha/pmap.c#18 (text+ko) ==== @@ -148,7 +148,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.166 2004/08/15 20:54:25 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.168 2004/08/27 19:06:16 alc Exp $"); #include #include @@ -747,8 +747,6 @@ vm_paddr_t pa; pa = 0; - if (pmap == NULL) - return (pa); PMAP_LOCK(pmap); pte = pmap_lev3pte(pmap, va); if (pte != NULL && pmap_pte_v(pte)) @@ -771,8 +769,6 @@ vm_page_t m; m = NULL; - if (pmap == NULL) - return (m); vm_page_lock_queues(); PMAP_LOCK(pmap); pte = pmap_lev3pte(pmap, va); @@ -1468,9 +1464,6 @@ { vm_offset_t va, nva; - if (pmap == NULL) - return; - /* * Perform an unsynchronized read. This is, however, safe. */ @@ -1586,9 +1579,6 @@ pt_entry_t* pte; int newprot; - if (pmap == NULL) - return; - if ((prot & VM_PROT_READ) == VM_PROT_NONE) { pmap_remove(pmap, sva, eva); return; @@ -1681,9 +1671,6 @@ vm_page_t mpte; int managed; - if (pmap == NULL) - return; - va &= ~PAGE_MASK; #ifdef PMAP_DIAGNOSTIC if (va > VM_MAX_KERNEL_ADDRESS) @@ -1965,9 +1952,6 @@ { pt_entry_t *pte; - if (pmap == NULL) - return; - PMAP_LOCK(pmap); pte = pmap_lev3pte(pmap, va); @@ -2110,7 +2094,7 @@ pv_entry_t pv, npv; #ifdef PMAP_REMOVE_PAGES_CURPROC_ONLY - if (!curthread || (pmap != vmspace_pmap(curthread->td_proc->p_vmspace))) { + if (pmap != vmspace_pmap(curthread->td_proc->p_vmspace)) { printf("warning: pmap_remove_pages called with non-current pmap\n"); return; } ==== //depot/projects/netperf_socket/sys/alpha/conf/GENERIC#8 (text+ko) ==== @@ -18,7 +18,7 @@ # # For hardware specific information check HARDWARE.TXT # -# $FreeBSD: src/sys/alpha/conf/GENERIC,v 1.174 2004/08/03 19:24:52 markm Exp $ +# $FreeBSD: src/sys/alpha/conf/GENERIC,v 1.175 2004/08/27 15:16:21 andre Exp $ machine alpha cpu EV4 @@ -69,7 +69,6 @@ options SYSVMSG #SYSV-style message queues options SYSVSEM #SYSV-style semaphores options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions -options PFIL_HOOKS # pfil(9) framework # Debugging for use in -current options KDB #Enable kernel debugger support ==== //depot/projects/netperf_socket/sys/alpha/include/cpu.h#6 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/alpha/include/cpu.h,v 1.40 2004/08/03 18:44:26 mux Exp $ */ +/* $FreeBSD: src/sys/alpha/include/cpu.h,v 1.41 2004/08/27 19:20:42 marcel Exp $ */ /* From: NetBSD: cpu.h,v 1.18 1997/09/23 23:17:49 mjacob Exp */ /* @@ -92,6 +92,11 @@ #ifdef _KERNEL +#ifdef GPROF +extern char btext[]; +extern char etext[]; +#endif + #define cpu_getstack(td) (alpha_pal_rdusp()) #define cpu_spinwait() /* nothing */ #define get_cyclecount alpha_rpcc ==== //depot/projects/netperf_socket/sys/alpha/include/profile.h#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/alpha/include/profile.h,v 1.6 2004/05/19 15:41:25 bde Exp $ */ +/* $FreeBSD: src/sys/alpha/include/profile.h,v 1.7 2004/08/27 19:42:34 marcel Exp $ */ /* From: NetBSD: profile.h,v 1.9 1997/04/06 08:47:37 cgd Exp */ /* @@ -215,11 +215,27 @@ * * XXX These macros should probably use inline assembly. */ -#define MCOUNT_ENTER(s) \ - s = _alpha_pal_swpipl(ALPHA_PSL_IPL_HIGH) -#define MCOUNT_EXIT(s) \ - (void)_alpha_pal_swpipl(s); -#define MCOUNT_DECL(s) u_long s; +u_long _alpha_pal_swpipl(u_long); + +#define MCOUNT_ENTER(s) s = _alpha_pal_swpipl(ALPHA_PSL_IPL_HIGH) +#define MCOUNT_EXIT(s) (void)_alpha_pal_swpipl(s) +#define MCOUNT_DECL(s) u_long s; + +void bintr(void); +void btrap(void); +void eintr(void); +void user(void); + +#define MCOUNT_FROMPC_USER(pc) \ + ((pc < (uintfptr_t)VM_MAXUSER_ADDRESS) ? (uintfptr_t)user : pc) + +#define MCOUNT_FROMPC_INTR(pc) \ + ((pc >= (uintfptr_t)btrap && pc < (uintfptr_t)eintr) ? \ + ((pc >= (uintfptr_t)bintr) ? (uintfptr_t)bintr : \ + (uintfptr_t)btrap) : ~0UL) + +_MCOUNT_DECL(uintfptr_t, uintfptr_t); + #else /* !_KERNEL */ typedef u_long uintfptr_t; #endif ==== //depot/projects/netperf_socket/sys/amd64/amd64/mp_machdep.c#11 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.243 2004/08/23 21:39:28 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.244 2004/08/28 00:49:54 obrien Exp $"); #include "opt_cpu.h" #include "opt_kstack_pages.h" @@ -708,7 +708,7 @@ ncpu = mp_ncpus - 1; /* does not shootdown self */ if (ncpu < 1) return; /* no other cpus */ - mtx_assert(&smp_rv_mtx, MA_OWNED); + mtx_assert(&smp_ipi_mtx, MA_OWNED); smp_tlb_addr1 = addr1; smp_tlb_addr2 = addr2; atomic_store_rel_int(&smp_tlb_wait, 0); @@ -794,7 +794,7 @@ if (ncpu < 1) return; } - mtx_assert(&smp_rv_mtx, MA_OWNED); + mtx_assert(&smp_ipi_mtx, MA_OWNED); smp_tlb_addr1 = addr1; smp_tlb_addr2 = addr2; atomic_store_rel_int(&smp_tlb_wait, 0); ==== //depot/projects/netperf_socket/sys/amd64/amd64/pmap.c#26 (text+ko) ==== @@ -75,7 +75,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.493 2004/08/24 00:17:52 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.495 2004/08/28 00:49:54 obrien Exp $"); /* * Manages physical address maps. @@ -631,7 +631,7 @@ if (smp_started) { if (!(read_rflags() & PSL_I)) panic("%s: interrupts disabled", __func__); - mtx_lock_spin(&smp_rv_mtx); + mtx_lock_spin(&smp_ipi_mtx); } else critical_enter(); /* @@ -652,7 +652,7 @@ smp_masked_invlpg(pmap->pm_active & other_cpus, va); } if (smp_started) - mtx_unlock_spin(&smp_rv_mtx); + mtx_unlock_spin(&smp_ipi_mtx); else critical_exit(); } @@ -667,7 +667,7 @@ if (smp_started) { if (!(read_rflags() & PSL_I)) panic("%s: interrupts disabled", __func__); - mtx_lock_spin(&smp_rv_mtx); + mtx_lock_spin(&smp_ipi_mtx); } else critical_enter(); /* @@ -691,7 +691,7 @@ sva, eva); } if (smp_started) - mtx_unlock_spin(&smp_rv_mtx); + mtx_unlock_spin(&smp_ipi_mtx); else critical_exit(); } @@ -705,7 +705,7 @@ if (smp_started) { if (!(read_rflags() & PSL_I)) panic("%s: interrupts disabled", __func__); - mtx_lock_spin(&smp_rv_mtx); + mtx_lock_spin(&smp_ipi_mtx); } else critical_enter(); /* @@ -726,7 +726,7 @@ smp_masked_invltlb(pmap->pm_active & other_cpus); } if (smp_started) - mtx_unlock_spin(&smp_rv_mtx); + mtx_unlock_spin(&smp_ipi_mtx); else critical_exit(); } @@ -786,8 +786,6 @@ pd_entry_t pde, *pdep; rtval = 0; - if (pmap == NULL) - return (rtval); PMAP_LOCK(pmap); pdep = pmap_pde(pmap, va); if (pdep != NULL) { @@ -821,8 +819,6 @@ vm_page_t m; m = NULL; - if (pmap == NULL) - return (m); vm_page_lock_queues(); PMAP_LOCK(pmap); pdep = pmap_pde(pmap, va); @@ -1563,9 +1559,6 @@ pt_entry_t *pte; int anyvalid; - if (pmap == NULL) - return; - /* * Perform an unsynchronized read. This is, however, safe. */ @@ -1737,9 +1730,6 @@ pd_entry_t ptpaddr, *pde; int anychanged; - if (pmap == NULL) - return; - if ((prot & VM_PROT_READ) == VM_PROT_NONE) { pmap_remove(pmap, sva, eva); return; @@ -1856,9 +1846,6 @@ pt_entry_t origpte, newpte; vm_page_t mpte; - if (pmap == NULL) - return; - va = trunc_page(va); #ifdef PMAP_DIAGNOSTIC if (va > VM_MAX_KERNEL_ADDRESS) @@ -2211,9 +2198,6 @@ { register pt_entry_t *pte; - if (pmap == NULL) - return; - /* * Wiring is not a hardware characteristic so there is no need to * invalidate TLB. ==== //depot/projects/netperf_socket/sys/amd64/conf/GENERIC#16 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.421 2004/08/16 22:59:24 peter Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.422 2004/08/27 15:16:21 andre Exp $ machine amd64 cpu HAMMER @@ -57,7 +57,6 @@ # output. Adds ~128k to driver. options AHD_REG_PRETTY_PRINT # Print register bitfields in debug # output. Adds ~215k to driver. -options PFIL_HOOKS # pfil(9) framework options ADAPTIVE_GIANT # Giant mutex is adaptive. # Debugging for use in -current ==== //depot/projects/netperf_socket/sys/amd64/conf/NOTES#9 (text+ko) ==== @@ -4,7 +4,7 @@ # This file contains machine dependent kernel configuration notes. For # machine independent notes, look in /sys/conf/NOTES. # -# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.18 2004/08/16 12:39:27 tjr Exp $ +# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.19 2004/08/27 21:29:20 arved Exp $ # # @@ -468,7 +468,7 @@ # Enable Linux ABI emulation #XXX#options COMPAT_LINUX -# Enable 32-bit Linux ABI emulation (requires COMPAT_43 and IA32) +# Enable 32-bit Linux ABI emulation (requires COMPAT_43 and COMPAT_IA32) options COMPAT_LINUX32 # Enable the linux-like proc filesystem support (requires COMPAT_LINUX32 ==== //depot/projects/netperf_socket/sys/amd64/include/profile.h#6 (text+ko) ==== @@ -27,7 +27,7 @@ * SUCH DAMAGE. * * @(#)profile.h 8.1 (Berkeley) 6/11/93 - * $FreeBSD: src/sys/amd64/include/profile.h,v 1.41 2004/07/29 18:02:28 kan Exp $ + * $FreeBSD: src/sys/amd64/include/profile.h,v 1.42 2004/08/27 19:42:34 marcel Exp $ */ #ifndef _MACHINE_PROFILE_H_ @@ -87,6 +87,19 @@ #endif #endif /* GUPROF */ +void bintr(void); +void btrap(void); +void eintr(void); +void user(void); + +#define MCOUNT_FROMPC_USER(pc) \ + ((pc < (uintfptr_t)VM_MAXUSER_ADDRESS) ? (uintfptr_t)user : pc) + +#define MCOUNT_FROMPC_INTR(pc) \ + ((pc >= (uintfptr_t)btrap && pc < (uintfptr_t)eintr) ? \ + ((pc >= (uintfptr_t)bintr) ? (uintfptr_t)bintr : \ + (uintfptr_t)btrap) : ~0UL) + #else /* !_KERNEL */ #define FUNCTION_ALIGNMENT 4 ==== //depot/projects/netperf_socket/sys/arm/include/profile.h#3 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)profile.h 8.1 (Berkeley) 6/11/93 - * $FreeBSD: src/sys/arm/include/profile.h,v 1.3 2004/07/20 22:38:46 cognet Exp $ + * $FreeBSD: src/sys/arm/include/profile.h,v 1.4 2004/08/27 19:42:34 marcel Exp $ */ #ifndef _MACHINE_PROFILE_H_ @@ -72,6 +72,19 @@ #endif #endif /* GUPROF */ +void bintr(void); +void btrap(void); +void eintr(void); +void user(void); + +#define MCOUNT_FROMPC_USER(pc) \ + ((pc < (uintfptr_t)VM_MAXUSER_ADDRESS) ? (uintfptr_t)user : pc) + +#define MCOUNT_FROMPC_INTR(pc) \ + ((pc >= (uintfptr_t)btrap && pc < (uintfptr_t)eintr) ? \ + ((pc >= (uintfptr_t)bintr) ? (uintfptr_t)bintr : \ + (uintfptr_t)btrap) : ~0U) + #else /* !_KERNEL */ #define FUNCTION_ALIGNMENT 4 ==== //depot/projects/netperf_socket/sys/boot/i386/boot0/Makefile#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/boot/i386/boot0/Makefile,v 1.29 2004/04/28 21:31:19 ru Exp $ +# $FreeBSD: src/sys/boot/i386/boot0/Makefile,v 1.30 2004/08/27 00:18:03 obrien Exp $ PROG?= boot0 STRIP= @@ -10,7 +10,7 @@ # the modified boot0 back to disk after running so that the selection made is # saved), packet mode (detect and use the BIOS EDD extensions if we try to # boot past the 1024 cylinder liimt), and booting from all valid slices. -BOOT_BOOT0_FLAGS?= 0xf +BOOT_BOOT0_FLAGS?= 0x8f # The number of timer ticks to wait for a keypress before assuming the default # selection. Since there are 18.2 ticks per second, the default value of ==== //depot/projects/netperf_socket/sys/boot/i386/boot2/Makefile#4 (text+ko) ==== @@ -1,11 +1,11 @@ -# $FreeBSD: src/sys/boot/i386/boot2/Makefile,v 1.56 2004/07/30 04:27:20 kan Exp $ +# $FreeBSD: src/sys/boot/i386/boot2/Makefile,v 1.57 2004/08/27 15:01:56 yar Exp $ FILES= boot boot1 boot2 NM?= nm # A value of 0x80 enables LBA support. -B1FLAGS= 0x80 +BOOT_BOOT1_FLAGS?= 0x80 BOOT_COMCONSOLE_PORT?= 0x3f8 BOOT_COMCONSOLE_SPEED?= 9600 @@ -27,7 +27,7 @@ -mno-align-long-strings \ -mrtd \ -D${BOOT2_UFS} \ - -DFLAGS=${B1FLAGS} \ + -DFLAGS=${BOOT_BOOT1_FLAGS} \ -DSIOPRT=${BOOT_COMCONSOLE_PORT} \ -DSIOFMT=${B2SIOFMT} \ -DSIOSPD=${BOOT_COMCONSOLE_SPEED} \ ==== //depot/projects/netperf_socket/sys/conf/NOTES#39 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/NOTES,v 1.1263 2004/08/19 18:29:55 andre Exp $ +# $FreeBSD: src/sys/conf/NOTES,v 1.1265 2004/08/27 15:46:16 andre Exp $ # # NOTES -- Lines that can be cut/pasted into kernel and hints configs. # @@ -544,7 +544,6 @@ # The `pflog' device provides the pflog0 interface which logs packets. # The `pfsync' device provides the pfsync0 interface used for # synchronization of firewall state tables (over the net). -# Requires option PFIL_HOOKS # # The PPP_BSDCOMP option enables support for compress(1) style entire # packet compression, the PPP_DEFLATE is for zlib/gzip style compression. @@ -599,7 +598,6 @@ # conjunction with the `ipfw' program. IPFIREWALL_VERBOSE sends # logged packets to the system logger. IPFIREWALL_VERBOSE_LIMIT # limits the number of times a matching entry can be logged. -# IPFIREWALL requires the option PFIL_HOOKS. # # WARNING: IPFIREWALL defaults to a policy of "deny ip from any to any" # and if you do not add other rules during startup to allow access, @@ -618,14 +616,14 @@ # # IPDIVERT enables the divert IP sockets, used by ``ipfw divert'' # +# IPFIREWALL_FORWARD enables changing of the packet destination either +# to do some sort of policy routing or transparent proxying. Used by +# ``ipfw forward''. +# # IPSTEALTH enables code to support stealth forwarding (i.e., forwarding # packets without touching the ttl). This can be useful to hide firewalls # from traceroute and similar tools. # -# PFIL_HOOKS enables an abstraction layer which is meant to be used in -# network code where filtering is required. See pfil(9). This option is -# required by the IPFILTER option and the PF device. -# # TCPDEBUG enables code which keeps traces of the TCP state machine # for sockets with the SO_DEBUG option set, which can then be examined # using the trpt(8) utility. @@ -636,6 +634,7 @@ options IPFIREWALL_VERBOSE #enable logging to syslogd(8) options IPFIREWALL_VERBOSE_LIMIT=100 #limit verbosity options IPFIREWALL_DEFAULT_TO_ACCEPT #allow everything by default +options IPFIREWALL_FORWARD #packet destination changes options IPV6FIREWALL #firewall for IPv6 options IPV6FIREWALL_VERBOSE options IPV6FIREWALL_VERBOSE_LIMIT=100 @@ -645,7 +644,6 @@ options IPFILTER_LOG #ipfilter logging options IPFILTER_DEFAULT_BLOCK #block all packets by default options IPSTEALTH #support for stealth forwarding -options PFIL_HOOKS #required by IPFILTER options TCPDEBUG # The MBUF_STRESS_TEST option enables options which create ==== //depot/projects/netperf_socket/sys/conf/files#50 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.944 2004/08/23 03:00:25 rwatson Exp $ +# $FreeBSD: src/sys/conf/files,v 1.945 2004/08/27 15:16:21 andre Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -1264,8 +1264,8 @@ net/netisr.c standard net/ppp_deflate.c optional ppp_deflate net/ppp_tty.c optional ppp -net/pfil.c optional pfil_hooks -net/pfil.c optional ipfilter +net/pfil.c optional ether +net/pfil.c optional inet net/radix.c standard net/raw_cb.c standard net/raw_usrreq.c standard ==== //depot/projects/netperf_socket/sys/conf/ldscript.alpha#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/conf/ldscript.alpha,v 1.7 2004/02/13 12:28:53 ru Exp $ */ +/* $FreeBSD: src/sys/conf/ldscript.alpha,v 1.8 2004/08/27 19:13:35 marcel Exp $ */ OUTPUT_FORMAT("elf64-alpha-freebsd", "elf64-alpha-freebsd", "elf64-alpha-freebsd") OUTPUT_ARCH(alpha) ENTRY(locorestart) @@ -41,6 +41,7 @@ .rela.bss : { *(.rela.bss) } .rel.plt : { *(.rel.plt) } .rela.plt : { *(.rela.plt) } + PROVIDE (btext = .); .init : { *(.init) } =0x47ff041f .text : { ==== //depot/projects/netperf_socket/sys/conf/options#28 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options,v 1.476 2004/08/19 06:38:26 jmg Exp $ +# $FreeBSD: src/sys/conf/options,v 1.477 2004/08/27 15:16:21 andre Exp $ # # On the handling of kernel options # @@ -344,7 +344,6 @@ IPFILTER opt_ipfilter.h IPFILTER_LOG opt_ipfilter.h IPFILTER_DEFAULT_BLOCK opt_ipfilter.h -PFIL_HOOKS opt_pfil_hooks.h IPFIREWALL opt_ipfw.h IPFIREWALL_VERBOSE opt_ipfw.h IPFIREWALL_VERBOSE_LIMIT opt_ipfw.h ==== //depot/projects/netperf_socket/sys/contrib/ipfilter/netinet/ip_fil.c#6 (text+ko) ==== @@ -71,7 +71,8 @@ # if defined(_KERNEL) && !defined(IPFILTER_LKM) # include "opt_ipfilter.h" # endif -# if defined(_KERNEL) && (__FreeBSD_version >= 501108) && !defined(KLD_MODULE) +# if defined(_KERNEL) && (__FreeBSD_version >= 501108) && \ + (__FreeBSD_version < 600001) && !defined(KLD_MODULE) # include "opt_pfil_hooks.h" # endif #endif @@ -131,7 +132,7 @@ #if !defined(lint) static const char sccsid[] = "@(#)ip_fil.c 2.41 6/5/96 (C) 1993-2000 Darren Reed"; /* static const char rcsid[] = "@(#)$Id: ip_fil.c,v 2.42.2.34 2001/07/23 13:49:57 darrenr Exp $"; */ -static const char rcsid[] = "@(#)$FreeBSD: src/sys/contrib/ipfilter/netinet/ip_fil.c,v 1.47 2004/07/11 10:13:05 darrenr Exp $"; +static const char rcsid[] = "@(#)$FreeBSD: src/sys/contrib/ipfilter/netinet/ip_fil.c,v 1.48 2004/08/27 20:01:08 andre Exp $"; #endif extern struct protosw inetsw[]; ==== //depot/projects/netperf_socket/sys/contrib/ipfilter/netinet/ip_fil.h#4 (text+ko) ==== @@ -5,7 +5,7 @@ * * @(#)ip_fil.h 1.35 6/5/96 * $Id: ip_fil.h,v 2.29.2.4 2000/11/12 11:54:53 darrenr Exp $ - * $FreeBSD: src/sys/contrib/ipfilter/netinet/ip_fil.h,v 1.26 2004/06/21 22:46:35 darrenr Exp $ + * $FreeBSD: src/sys/contrib/ipfilter/netinet/ip_fil.h,v 1.27 2004/08/27 20:01:08 andre Exp $ */ #ifndef __IP_FIL_H__ @@ -497,7 +497,7 @@ #if (defined(NetBSD) && (NetBSD > 199609) && (NetBSD <= 1991011)) || \ (defined(NetBSD1_2) && NetBSD1_2 > 1) || (defined(__FreeBSD_version) && \ (__FreeBSD_version >= 500011)) -# if (NetBSD >= 199905) +# if (NetBSD >= 199905) || (__FreeBSD_version >= 600001) # define PFIL_HOOKS # endif # ifdef PFIL_HOOKS ==== //depot/projects/netperf_socket/sys/dev/acpica/acpi_pci_link.c#12 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.26 2004/08/21 18:18:32 njl Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.28 2004/08/27 00:53:11 njl Exp $"); #include "opt_acpi.h" #include @@ -648,13 +648,17 @@ * assume we were successful. */ error = acpi_pci_link_get_current_irq(link, &link->current_irq); - if (ACPI_FAILURE(error) && bootverbose) { - printf("acpi link set: _CRS failed for link %s - %s\n", - acpi_name(link->handle), AcpiFormatException(error)); + if (ACPI_FAILURE(error)) { + if (bootverbose) + printf("acpi link set: _CRS failed for link %s - %s\n", + acpi_name(link->handle), + AcpiFormatException(error)); + error = AE_OK; } if (link->current_irq != irq) { - printf("acpi link set: curr irq %d != %d for %s (ignoring)\n", - link->current_irq, irq, acpi_name(link->handle)); + if (bootverbose) + printf("acpi link set: curr irq %d != %d for %s\n", + link->current_irq, irq, acpi_name(link->handle)); link->current_irq = irq; } ==== //depot/projects/netperf_socket/sys/dev/ata/ata-all.c#17 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-all.c,v 1.223 2004/08/24 15:09:05 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-all.c,v 1.224 2004/08/27 14:48:32 sos Exp $"); #include "opt_ata.h" #include @@ -115,7 +115,6 @@ return 0; } - int ata_attach(device_t dev) { @@ -190,7 +189,6 @@ ata_fail_requests(ch, NULL); /* unlock the channel */ - ch->running = NULL; ATA_UNLOCK_CH(ch); ch->locking(ch, ATA_LF_UNLOCK); @@ -237,12 +235,14 @@ if (!ch->r_irq) return ENXIO; - /* reset the HW */ if (bootverbose) ata_printf(ch, -1, "reiniting channel ..\n"); + ATA_FORCELOCK_CH(ch); + ata_catch_inflight(ch); ch->flags |= ATA_IMMEDIATE_MODE; devices = ch->devices; + ch->hw.reset(ch); if (bootverbose) @@ -267,7 +267,6 @@ } /* unlock the channel */ - ch->running = NULL; ATA_UNLOCK_CH(ch); ch->locking(ch, ATA_LF_UNLOCK); ==== //depot/projects/netperf_socket/sys/dev/ata/ata-all.h#11 (text+ko) ==== @@ -25,7 +25,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/ata/ata-all.h,v 1.81 2004/08/13 08:14:27 sos Exp $ + * $FreeBSD: src/sys/dev/ata/ata-all.h,v 1.82 2004/08/27 14:48:32 sos Exp $ */ /* ATA register defines */ @@ -410,6 +410,7 @@ int ata_atapicmd(struct ata_device *atadev, u_int8_t *ccb, caddr_t data, int count, int flags, int timeout); void ata_queue_request(struct ata_request *request); void ata_finish(struct ata_request *request); +void ata_catch_inflight(struct ata_channel *ch); void ata_fail_requests(struct ata_channel *ch, struct ata_device *device); char *ata_cmd2str(struct ata_request *request); ==== //depot/projects/netperf_socket/sys/dev/ata/ata-chipset.c#18 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.82 2004/08/24 20:11:26 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.83 2004/08/27 12:54:58 sos Exp $"); #include "opt_ata.h" #include @@ -979,9 +979,9 @@ pci_write_config(parent, 0x54, reg54 & ~(0x1 << devno), 2); if (mode >= ATA_UDMA5) - pci_write_config(parent, 0x54, reg54 | (0x10000 << devno), 2); + pci_write_config(parent, 0x54, reg54 | (0x1000 << devno), 2); else - pci_write_config(parent, 0x54, reg54 & ~(0x10000 << devno), 2); + pci_write_config(parent, 0x54, reg54 & ~(0x1000 << devno), 2); reg40 &= ~0x00ff00ff; reg40 |= 0x40774077; ==== //depot/projects/netperf_socket/sys/dev/ata/ata-disk.c#8 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-disk.c,v 1.175 2004/08/05 21:11:32 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-disk.c,v 1.176 2004/08/27 12:03:18 sos Exp $"); #include "opt_ata.h" #include @@ -164,12 +164,12 @@ if (adp->flags & AD_F_RAID_SUBDISK) ata_raiddisk_detach(adp); #endif + disk_destroy(adp->disk); + ata_prtdev(atadev, "WARNING - removed from configuration\n"); mtx_lock(&adp->queue_mtx); bioq_flush(&adp->queue, NULL, ENXIO); mtx_unlock(&adp->queue_mtx); mtx_destroy(&adp->queue_mtx); - disk_destroy(adp->disk); - ata_prtdev(atadev, "WARNING - removed from configuration\n"); ata_free_name(atadev); ata_free_lun(&adp_lun_map, adp->lun); atadev->attach = NULL; @@ -219,10 +219,6 @@ { struct ad_softc *adp = bp->bio_disk->d_drv1; - if (adp->device->flags & ATA_D_DETACHING) { - biofinish(bp, NULL, ENXIO); - return; - } mtx_lock(&adp->queue_mtx); bioq_disksort(&adp->queue, bp); mtx_unlock(&adp->queue_mtx); @@ -245,6 +241,10 @@ } bioq_remove(&adp->queue, bp); mtx_unlock(&adp->queue_mtx); + if (adp->device->flags & ATA_D_DETACHING) { + biofinish(bp, NULL, ENXIO); + return; + } if (!(request = ata_alloc_request())) { ata_prtdev(atadev, "FAILURE - out of memory in start\n"); ==== //depot/projects/netperf_socket/sys/dev/ata/ata-lowlevel.c#16 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.44 2004/08/16 09:32:35 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.46 2004/08/27 22:14:45 sos Exp $"); #include "opt_ata.h" #include @@ -48,7 +48,6 @@ static void ata_generic_interrupt(void *); static void ata_generic_reset(struct ata_channel *); static int ata_wait(struct ata_device *, u_int8_t); -/*static int ata_command(struct ata_device *, u_int8_t, u_int64_t, u_int16_t, u_int16_t);*/ static void ata_pio_read(struct ata_request *, int); static void ata_pio_write(struct ata_request *, int); @@ -526,7 +525,8 @@ break; } - /* schedule completition for this request */ + /* finished running this request schedule completition */ + ch->running = NULL; ata_finish(request); } @@ -538,6 +538,14 @@ u_int8_t stat0 = 0, stat1 = 0; int mask = 0, timeout; + /* if DMA functionality present stop it */ + if (ch->dma) { + if (ch->dma->stop) + ch->dma->stop(ch); + if (ch->dma->flags & ATA_DMA_LOADED) + ch->dma->unload(ch); + } + /* reset host end of channel (if supported) */ if (ch->reset) ch->reset(ch); ==== //depot/projects/netperf_socket/sys/dev/ata/ata-queue.c#13 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-queue.c,v 1.33 2004/08/22 15:54:08 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-queue.c,v 1.34 2004/08/27 14:48:32 sos Exp $"); #include "opt_ata.h" #include @@ -70,6 +70,7 @@ /* kick HW into action */ if (request->device->channel->hw.transaction(request)==ATA_OP_FINISHED){ + untimeout((timeout_t *)ata_timeout,request,request->timeout_handle); if (!request->callback) sema_destroy(&request->done); return; @@ -209,7 +210,6 @@ /* if we timed out the unlocking of the ATA channel is done later */ if (!(request->flags & ATA_R_TIMEOUT)) { - ch->running = NULL; ATA_UNLOCK_CH(ch); ch->locking(ch, ATA_LF_UNLOCK); } @@ -466,7 +466,25 @@ /* now simulate the missing interrupt */ request->flags |= ATA_R_TIMEOUT; request->device->channel->hw.interrupt(request->device->channel); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Aug 28 14:21:42 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BFD6A16A4D0; Sat, 28 Aug 2004 14:21:41 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9BDB216A4CE for ; Sat, 28 Aug 2004 14:21:41 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 81EC143D46 for ; Sat, 28 Aug 2004 14:21:41 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i7SELfrw006868 for ; Sat, 28 Aug 2004 14:21:41 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i7SELfda006865 for perforce@freebsd.org; Sat, 28 Aug 2004 14:21:41 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 28 Aug 2004 14:21:41 GMT Message-Id: <200408281421.i7SELfda006865@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Subject: PERFORCE change 60599 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 28 Aug 2004 14:21:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=60599 Change 60599 by rwatson@rwatson_tislabs on 2004/08/28 14:20:53 Integ netperf_socket. Affected files ... .. //depot/projects/netperf_socket/sys/boot/i386/boot2/boot1.S#6 integrate .. //depot/projects/netperf_socket/sys/boot/i386/mbr/Makefile#4 integrate .. //depot/projects/netperf_socket/sys/boot/i386/mbr/mbr.s#2 integrate .. //depot/projects/netperf_socket/sys/dev/re/if_re.c#12 integrate .. //depot/projects/netperf_socket/sys/kern/kern_kse.c#12 integrate .. //depot/projects/netperf_socket/sys/pci/if_rlreg.h#5 integrate Differences ... ==== //depot/projects/netperf_socket/sys/boot/i386/boot2/boot1.S#6 (text+ko) ==== @@ -12,7 +12,7 @@ * warranties of merchantability and fitness for a particular * purpose. * - * $FreeBSD: src/sys/boot/i386/boot2/boot1.S,v 1.29 2004/08/05 06:00:05 kan Exp $ + * $FreeBSD: src/sys/boot/i386/boot2/boot1.S,v 1.30 2004/08/28 08:32:23 yar Exp $ */ /* Memory Locations */ @@ -269,7 +269,25 @@ * %dl - byte - drive number * stack - 10 bytes - EDD Packet */ -read: push %dx # Save +read: testb $FL_PACKET,%cs:MEM_REL+flags-start # LBA support enabled? + jz read.1 # No, use CHS + cmpb $0x80,%dl # Hard drive? + jb read.1 # No, use CHS + mov $0x55aa,%bx # Magic + push %dx # Save + movb $0x41,%ah # BIOS: Check + int $0x13 # extensions present + pop %dx # Restore + jc read.1 # If error, use CHS + cmp $0xaa55,%bx # Magic? + jne read.1 # No, so use CHS + testb $0x1,%cl # Packet interface? + jz read.1 # No, so use CHS + mov %bp,%si # Disk packet + movb $0x42,%ah # BIOS: Extended + int $0x13 # read + retw # To caller +read.1: push %dx # Save movb $0x8,%ah # BIOS: Get drive int $0x13 # parameters movb %dh,%ch # Max head number @@ -292,7 +310,7 @@ pop %dx # Restore cmpl $0x3ff,%eax # Cylinder number supportable? sti # Enable interrupts - ja read.7 # No, try EDD + ja ereturn # No, return an error xchgb %al,%ah # Set up cylinder rorb $0x2,%al # number orb %ch,%al # Merge @@ -328,24 +346,8 @@ read.5: shlb %bl # buffer add %bl,0x5(%bp) # pointer, sub %al,0x2(%bp) # block count - ja read # If not done + ja read.1 # If not done read.6: retw # To caller -read.7: testb $FL_PACKET,%cs:MEM_REL+flags-start # LBA support enabled? - jz ereturn # No, so return an error - mov $0x55aa,%bx # Magic - push %dx # Save - movb $0x41,%ah # BIOS: Check - int $0x13 # extensions present - pop %dx # Restore - jc return # If error, return an error - cmp $0xaa55,%bx # Magic? - jne ereturn # No, so return an error - testb $0x1,%cl # Packet interface? - jz ereturn # No, so return an error - mov %bp,%si # Disk packet - movb $0x42,%ah # BIOS: Extended - int $0x13 # read - retw # To caller /* Messages */ ==== //depot/projects/netperf_socket/sys/boot/i386/mbr/Makefile#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/boot/i386/mbr/Makefile,v 1.13 2004/04/28 21:31:21 ru Exp $ +# $FreeBSD: src/sys/boot/i386/mbr/Makefile,v 1.14 2004/08/28 08:39:35 yar Exp $ PROG= mbr STRIP= @@ -6,8 +6,12 @@ NOMAN= SRCS= ${PROG}.s +# MBR flags: 0x80 -- try packet interface (also known as EDD or LBA) +BOOT_MBR_FLAGS?= 0x80 + ORG= 0x600 +AFLAGS+=--defsym FLAGS=${BOOT_MBR_FLAGS} LDFLAGS=-N -e start -Ttext ${ORG} -Wl,-S,--oformat,binary .include ==== //depot/projects/netperf_socket/sys/boot/i386/mbr/mbr.s#2 (text+ko) ==== @@ -13,7 +13,7 @@ # purpose. # -# $FreeBSD: src/sys/boot/i386/mbr/mbr.s,v 1.6 2000/06/27 20:04:10 jhb Exp $ +# $FreeBSD: src/sys/boot/i386/mbr/mbr.s,v 1.7 2004/08/28 08:39:35 yar Exp $ # A 512 byte MBR boot manager that simply boots the active partition. @@ -21,6 +21,7 @@ .set EXEC,0x600 # Execution address .set PT_OFF,0x1be # Partition table .set MAGIC,0xaa55 # Magic: bootable + .set FL_PACKET,0x80 # Flag: try EDD .set NHRDRV,0x475 # Number of hard drives @@ -88,10 +89,8 @@ movb 0x1(%si),%dh # Load head movw 0x2(%si),%cx # Load cylinder:sector movw $LOAD,%bx # Transfer buffer - cmpb $0xff,%dh # Might we need to use LBA? - jnz main.7 # No. - cmpw $0xffff,%cx # Do we need to use LBA? - jnz main.7 # No. + testb $FL_PACKET,flags # Try EDD? + jz main.7 # No. pushw %cx # Save %cx pushw %bx # Save %bx movw $0x55aa,%bx # Magic @@ -151,7 +150,8 @@ msg_rd: .asciz "Error loading operating system" msg_os: .asciz "Missing operating system" - .org PT_OFF + .org PT_OFF-1,0x90 +flags: .byte FLAGS # Flags partbl: .fill 0x10,0x4,0x0 # Partition table .word MAGIC # Magic number ==== //depot/projects/netperf_socket/sys/dev/re/if_re.c#12 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/re/if_re.c,v 1.28 2004/07/06 02:48:29 bms Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/re/if_re.c,v 1.29 2004/08/28 10:59:02 sanpei Exp $"); /* * RealTek 8139C+/8169/8169S/8110S PCI NIC driver @@ -168,6 +168,8 @@ "RealTek 8169S Single-chip Gigabit Ethernet" }, { RT_VENDORID, RT_DEVICEID_8169, RL_HWREV_8110S, "RealTek 8110S Single-chip Gigabit Ethernet" }, + { COREGA_VENDORID, COREGA_DEVICEID_CGLAPCIGT, RL_HWREV_8169S, + "Corega CG-LAPCIGT (RTL8169S) Gigabit Ethernet" }, { 0, 0, 0, NULL } }; ==== //depot/projects/netperf_socket/sys/kern/kern_kse.c#12 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_kse.c,v 1.195 2004/08/28 04:08:05 davidxu Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_kse.c,v 1.196 2004/08/28 04:16:32 davidxu Exp $"); #include #include @@ -970,9 +970,11 @@ if ((ku = td->td_upcall) == NULL) return (-1); - tmbx = (void *)fuword((void *)&ku->ku_mailbox->km_curthread); - if ((tmbx == NULL) || (tmbx == (void *)-1)) - return (-1); + if ((tmbx = td->td_mailbox) == NULL) { + tmbx = (void *)fuword((void *)&ku->ku_mailbox->km_curthread); + if ((tmbx == NULL) || (tmbx == (void *)-1)) + return (-1); + } if (user) { uticks = td->td_uuticks; td->td_uuticks = 0; @@ -1280,7 +1282,7 @@ /* NOTREACHED */ } - KASSERT(ku != NULL, ("upcall is NULL\n")); + KASSERT(ku != NULL, ("upcall is NULL")); KASSERT(TD_CAN_UNBIND(td) == 0, ("can unbind")); if (p->p_numthreads > max_threads_per_proc) { ==== //depot/projects/netperf_socket/sys/pci/if_rlreg.h#5 (text+ko) ==== @@ -29,7 +29,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/pci/if_rlreg.h,v 1.44 2004/07/05 02:46:42 bms Exp $ + * $FreeBSD: src/sys/pci/if_rlreg.h,v 1.45 2004/08/28 10:59:02 sanpei Exp $ */ /* @@ -793,6 +793,11 @@ #define COREGA_DEVICEID_FETHERIICBTXD 0xa11e /* + * Corega CG-LAPCIGT device ID + */ +#define COREGA_DEVICEID_CGLAPCIGT 0xc107 + +/* * Peppercon vendor ID */ #define PEPPERCON_VENDORID 0x1743