Date: Mon, 8 Dec 2003 12:12:52 -0800 (PST) From: Sam Leffler <sam@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 43633 for review Message-ID: <200312082012.hB8KCqrv007061@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=43633 Change 43633 by sam@sam_ebb on 2003/12/08 12:12:32 IFC Affected files ... .. //depot/projects/netperf/sys/alpha/alpha/db_trace.c#3 integrate .. //depot/projects/netperf/sys/alpha/alpha/mp_machdep.c#6 integrate .. //depot/projects/netperf/sys/alpha/conf/GENERIC#4 integrate .. //depot/projects/netperf/sys/alpha/conf/GENERIC.hints#2 integrate .. //depot/projects/netperf/sys/alpha/include/ioctl_meteor.h#2 integrate .. //depot/projects/netperf/sys/amd64/acpica/madt.c#2 integrate .. //depot/projects/netperf/sys/amd64/amd64/amd64-gdbstub.c#3 integrate .. //depot/projects/netperf/sys/amd64/amd64/amd64_mem.c#5 integrate .. //depot/projects/netperf/sys/amd64/amd64/apic_vector.S#2 integrate .. //depot/projects/netperf/sys/amd64/amd64/critical.c#5 integrate .. //depot/projects/netperf/sys/amd64/amd64/fpu.c#3 integrate .. //depot/projects/netperf/sys/amd64/amd64/local_apic.c#2 integrate .. //depot/projects/netperf/sys/amd64/amd64/machdep.c#11 integrate .. //depot/projects/netperf/sys/amd64/amd64/mem.c#4 integrate .. //depot/projects/netperf/sys/amd64/amd64/mp_machdep.c#3 integrate .. //depot/projects/netperf/sys/amd64/amd64/nexus.c#6 integrate .. //depot/projects/netperf/sys/amd64/amd64/pmap.c#18 integrate .. //depot/projects/netperf/sys/amd64/ia32/ia32_signal.c#5 integrate .. //depot/projects/netperf/sys/amd64/include/cpufunc.h#3 integrate .. //depot/projects/netperf/sys/amd64/include/critical.h#4 integrate .. //depot/projects/netperf/sys/amd64/include/mutex.h#2 integrate .. //depot/projects/netperf/sys/amd64/include/runq.h#2 integrate .. //depot/projects/netperf/sys/amd64/include/vmparam.h#5 integrate .. //depot/projects/netperf/sys/amd64/pci/pci_bus.c#7 integrate .. //depot/projects/netperf/sys/amd64/pci/pci_cfgreg.c#3 integrate .. //depot/projects/netperf/sys/cam/scsi/scsi_all.c#3 integrate .. //depot/projects/netperf/sys/cam/scsi/scsi_da.c#12 integrate .. //depot/projects/netperf/sys/compat/linprocfs/linprocfs.c#10 integrate .. //depot/projects/netperf/sys/conf/NOTES#21 integrate .. //depot/projects/netperf/sys/conf/files#29 integrate .. //depot/projects/netperf/sys/conf/files.i386#8 integrate .. //depot/projects/netperf/sys/conf/files.pc98#7 integrate .. //depot/projects/netperf/sys/conf/kern.mk#3 integrate .. //depot/projects/netperf/sys/conf/ldscript.i386#3 integrate .. //depot/projects/netperf/sys/conf/majors#8 integrate .. //depot/projects/netperf/sys/conf/newvers.sh#4 integrate .. //depot/projects/netperf/sys/conf/options#20 integrate .. //depot/projects/netperf/sys/conf/options.i386#7 integrate .. //depot/projects/netperf/sys/contrib/dev/ath/ah.h#6 integrate .. //depot/projects/netperf/sys/contrib/dev/ath/freebsd/i386-elf.hal.o.uu#7 integrate .. //depot/projects/netperf/sys/contrib/dev/ath/version.h#6 integrate .. //depot/projects/netperf/sys/contrib/ipfilter/netinet/ip_log.c#3 integrate .. //depot/projects/netperf/sys/dev/aac/aac_cam.c#4 integrate .. //depot/projects/netperf/sys/dev/acpica/acpi_cpu.c#7 integrate .. //depot/projects/netperf/sys/dev/ata/ata-all.c#11 integrate .. //depot/projects/netperf/sys/dev/ata/ata-card.c#5 integrate .. //depot/projects/netperf/sys/dev/ata/ata-isa.c#4 integrate .. //depot/projects/netperf/sys/dev/ata/ata-lowlevel.c#12 integrate .. //depot/projects/netperf/sys/dev/ata/atapi-cam.c#10 integrate .. //depot/projects/netperf/sys/dev/ata/atapi-cd.c#16 integrate .. //depot/projects/netperf/sys/dev/bktr/bktr_core.c#8 integrate .. //depot/projects/netperf/sys/dev/bktr/bktr_os.c#6 integrate .. //depot/projects/netperf/sys/dev/bktr/bktr_os.h#2 integrate .. //depot/projects/netperf/sys/dev/bktr/bktr_reg.h#3 integrate .. //depot/projects/netperf/sys/dev/bktr/ioctl_bt848.h#1 branch .. //depot/projects/netperf/sys/dev/bktr/ioctl_meteor.h#1 branch .. //depot/projects/netperf/sys/dev/cx/cronyxfw.h#1 branch .. //depot/projects/netperf/sys/dev/cx/csigma.c#1 branch .. //depot/projects/netperf/sys/dev/cx/csigmafw.h#1 branch .. //depot/projects/netperf/sys/dev/cx/cxddk.c#1 branch .. //depot/projects/netperf/sys/dev/cx/cxddk.h#1 branch .. //depot/projects/netperf/sys/dev/cx/cxreg.h#1 branch .. //depot/projects/netperf/sys/dev/cx/if_cx.c#1 branch .. //depot/projects/netperf/sys/dev/cx/machdep.h#1 branch .. //depot/projects/netperf/sys/dev/cx/ng_cx.h#1 branch .. //depot/projects/netperf/sys/dev/dgb/dgb.c#3 delete .. //depot/projects/netperf/sys/dev/dgb/dgbios.h#2 delete .. //depot/projects/netperf/sys/dev/dgb/dgfep.h#2 delete .. //depot/projects/netperf/sys/dev/dgb/dgreg.h#3 delete .. //depot/projects/netperf/sys/dev/em/if_em.c#11 integrate .. //depot/projects/netperf/sys/dev/hea/eni.c#3 delete .. //depot/projects/netperf/sys/dev/hea/eni.h#3 delete .. //depot/projects/netperf/sys/dev/hea/eni_buffer.c#3 delete .. //depot/projects/netperf/sys/dev/hea/eni_globals.c#3 delete .. //depot/projects/netperf/sys/dev/hea/eni_if.c#3 delete .. //depot/projects/netperf/sys/dev/hea/eni_init.c#3 delete .. //depot/projects/netperf/sys/dev/hea/eni_intr.c#3 delete .. //depot/projects/netperf/sys/dev/hea/eni_receive.c#3 delete .. //depot/projects/netperf/sys/dev/hea/eni_stats.h#2 delete .. //depot/projects/netperf/sys/dev/hea/eni_suni.h#2 delete .. //depot/projects/netperf/sys/dev/hea/eni_transmit.c#3 delete .. //depot/projects/netperf/sys/dev/hea/eni_var.h#2 delete .. //depot/projects/netperf/sys/dev/hea/eni_vcm.c#3 delete .. //depot/projects/netperf/sys/dev/hea/hea_freebsd.c#3 delete .. //depot/projects/netperf/sys/dev/hea/hea_freebsd.h#2 delete .. //depot/projects/netperf/sys/dev/hea/hea_pci.c#4 delete .. //depot/projects/netperf/sys/dev/led/led.c#4 integrate .. //depot/projects/netperf/sys/dev/lmc/if_lmc.c#4 delete .. //depot/projects/netperf/sys/dev/lmc/if_lmc_common.c#3 delete .. //depot/projects/netperf/sys/dev/lmc/if_lmc_fbsd3.c#3 delete .. //depot/projects/netperf/sys/dev/lmc/if_lmc_media.c#3 delete .. //depot/projects/netperf/sys/dev/lmc/if_lmcioctl.h#2 delete .. //depot/projects/netperf/sys/dev/lmc/if_lmcvar.h#2 delete .. //depot/projects/netperf/sys/dev/sound/pcm/channel.c#6 integrate .. //depot/projects/netperf/sys/dev/sound/pcm/sndstat.c#3 integrate .. //depot/projects/netperf/sys/dev/sound/pcm/sound.c#4 integrate .. //depot/projects/netperf/sys/dev/sym/sym_hipd.c#5 integrate .. //depot/projects/netperf/sys/dev/twe/twe.c#5 integrate .. //depot/projects/netperf/sys/dev/twe/twe_compat.h#5 integrate .. //depot/projects/netperf/sys/dev/twe/twe_freebsd.c#4 integrate .. //depot/projects/netperf/sys/dev/twe/twe_tables.h#3 integrate .. //depot/projects/netperf/sys/dev/twe/tweio.h#3 integrate .. //depot/projects/netperf/sys/dev/twe/twereg.h#4 integrate .. //depot/projects/netperf/sys/dev/twe/twevar.h#4 integrate .. //depot/projects/netperf/sys/dev/wi/if_wi.c#19 integrate .. //depot/projects/netperf/sys/fs/nwfs/nwfs_vfsops.c#3 integrate .. //depot/projects/netperf/sys/fs/procfs/procfs.c#2 integrate .. //depot/projects/netperf/sys/fs/procfs/procfs_ctl.c#2 integrate .. //depot/projects/netperf/sys/fs/procfs/procfs_ioctl.c#2 integrate .. //depot/projects/netperf/sys/fs/procfs/procfs_map.c#5 integrate .. //depot/projects/netperf/sys/fs/procfs/procfs_rlimit.c#2 integrate .. //depot/projects/netperf/sys/fs/procfs/procfs_status.c#2 integrate .. //depot/projects/netperf/sys/fs/procfs/procfs_type.c#2 integrate .. //depot/projects/netperf/sys/fs/pseudofs/pseudofs.c#2 integrate .. //depot/projects/netperf/sys/fs/pseudofs/pseudofs.h#2 integrate .. //depot/projects/netperf/sys/fs/smbfs/smbfs_vfsops.c#5 integrate .. //depot/projects/netperf/sys/fs/udf/udf_vnops.c#5 integrate .. //depot/projects/netperf/sys/geom/geom.h#4 integrate .. //depot/projects/netperf/sys/geom/geom_disk.c#6 integrate .. //depot/projects/netperf/sys/geom/geom_dump.c#2 integrate .. //depot/projects/netperf/sys/geom/geom_event.c#4 integrate .. //depot/projects/netperf/sys/geom/geom_io.c#8 integrate .. //depot/projects/netperf/sys/geom/geom_pc98.c#3 integrate .. //depot/projects/netperf/sys/i386/acpica/madt.c#7 integrate .. //depot/projects/netperf/sys/i386/conf/GENERIC#6 integrate .. //depot/projects/netperf/sys/i386/conf/NOTES#11 integrate .. //depot/projects/netperf/sys/i386/i386/apic_vector.s#5 integrate .. //depot/projects/netperf/sys/i386/i386/local_apic.c#4 integrate .. //depot/projects/netperf/sys/i386/i386/machdep.c#14 integrate .. //depot/projects/netperf/sys/i386/i386/mp_machdep.c#16 integrate .. //depot/projects/netperf/sys/i386/i386/mptable.c#7 integrate .. //depot/projects/netperf/sys/i386/i386/vm_machdep.c#6 integrate .. //depot/projects/netperf/sys/i386/include/cronyx.h#2 delete .. //depot/projects/netperf/sys/i386/include/cserial.h#1 branch .. //depot/projects/netperf/sys/i386/include/ioctl_meteor.h#2 integrate .. //depot/projects/netperf/sys/i386/include/sf_buf.h#2 integrate .. //depot/projects/netperf/sys/i386/isa/cronyx.c#2 delete .. //depot/projects/netperf/sys/i386/isa/cx.c#4 delete .. //depot/projects/netperf/sys/i386/isa/cxreg.h#3 delete .. //depot/projects/netperf/sys/i386/isa/cy.c#4 integrate .. //depot/projects/netperf/sys/i386/isa/if_cx.c#3 delete .. //depot/projects/netperf/sys/i386/isa/loran.c#2 delete .. //depot/projects/netperf/sys/ia64/ia64/machdep.c#21 integrate .. //depot/projects/netperf/sys/ia64/include/ioctl_meteor.h#2 integrate .. //depot/projects/netperf/sys/ia64/include/ucontext.h#5 integrate .. //depot/projects/netperf/sys/kern/init_sysent.c#8 integrate .. //depot/projects/netperf/sys/kern/kern_prot.c#5 integrate .. //depot/projects/netperf/sys/kern/kern_sig.c#9 integrate .. //depot/projects/netperf/sys/kern/kern_thread.c#8 integrate .. //depot/projects/netperf/sys/kern/kern_timeout.c#6 integrate .. //depot/projects/netperf/sys/kern/sched_ule.c#19 integrate .. //depot/projects/netperf/sys/kern/subr_mbpool.c#2 integrate .. //depot/projects/netperf/sys/kern/subr_mbuf.c#8 integrate .. //depot/projects/netperf/sys/kern/subr_prf.c#2 integrate .. //depot/projects/netperf/sys/kern/subr_smp.c#5 integrate .. //depot/projects/netperf/sys/kern/syscalls.c#8 integrate .. //depot/projects/netperf/sys/kern/syscalls.master#8 integrate .. //depot/projects/netperf/sys/kern/uipc_syscalls.c#8 integrate .. //depot/projects/netperf/sys/kern/vfs_mount.c#8 integrate .. //depot/projects/netperf/sys/kern/vfs_subr.c#12 integrate .. //depot/projects/netperf/sys/modules/Makefile#12 integrate .. //depot/projects/netperf/sys/modules/acpi/Makefile#5 integrate .. //depot/projects/netperf/sys/modules/cx/Makefile#1 branch .. //depot/projects/netperf/sys/modules/hea/Makefile#2 delete .. //depot/projects/netperf/sys/net/if_var.h#6 integrate .. //depot/projects/netperf/sys/net/route.c#31 integrate .. //depot/projects/netperf/sys/netgraph/atm/ngatmbase.c#2 integrate .. //depot/projects/netperf/sys/netgraph/ng_base.c#6 integrate .. //depot/projects/netperf/sys/netinet/ip_dummynet.c#20 integrate .. //depot/projects/netperf/sys/netinet/ip_fw2.c#21 integrate .. //depot/projects/netperf/sys/netinet/tcp_hostcache.c#5 integrate .. //depot/projects/netperf/sys/netkey/key.c#10 integrate .. //depot/projects/netperf/sys/pc98/conf/NOTES#8 integrate .. //depot/projects/netperf/sys/pci/cy_pci.c#2 integrate .. //depot/projects/netperf/sys/pci/if_dc.c#16 integrate .. //depot/projects/netperf/sys/pci/if_dcreg.h#5 integrate .. //depot/projects/netperf/sys/pci/if_sk.c#10 integrate .. //depot/projects/netperf/sys/pci/meteor.c#6 delete .. //depot/projects/netperf/sys/pci/meteor_reg.h#2 delete .. //depot/projects/netperf/sys/security/mac/mac_process.c#5 integrate .. //depot/projects/netperf/sys/security/mac_biba/mac_biba.c#7 integrate .. //depot/projects/netperf/sys/security/mac_lomac/mac_lomac.c#8 integrate .. //depot/projects/netperf/sys/security/mac_mls/mac_mls.c#6 integrate .. //depot/projects/netperf/sys/security/mac_partition/mac_partition.c#3 integrate .. //depot/projects/netperf/sys/security/mac_stub/mac_stub.c#3 integrate .. //depot/projects/netperf/sys/security/mac_test/mac_test.c#6 integrate .. //depot/projects/netperf/sys/sparc64/sparc64/mp_machdep.c#5 integrate .. //depot/projects/netperf/sys/sys/_null.h#1 branch .. //depot/projects/netperf/sys/sys/ioctl_meteor.h#2 integrate .. //depot/projects/netperf/sys/sys/kse.h#3 integrate .. //depot/projects/netperf/sys/sys/mac.h#8 integrate .. //depot/projects/netperf/sys/sys/mac_policy.h#4 integrate .. //depot/projects/netperf/sys/sys/param.h#12 integrate .. //depot/projects/netperf/sys/sys/smp.h#3 integrate .. //depot/projects/netperf/sys/sys/stddef.h#2 integrate .. //depot/projects/netperf/sys/sys/syscall.h#8 integrate .. //depot/projects/netperf/sys/sys/syscall.mk#8 integrate .. //depot/projects/netperf/sys/sys/sysproto.h#8 integrate .. //depot/projects/netperf/sys/sys/systm.h#4 integrate .. //depot/projects/netperf/sys/ufs/ffs/ffs_vfsops.c#9 integrate .. //depot/projects/netperf/sys/vm/uma_core.c#9 integrate .. //depot/projects/netperf/sys/vm/vm_mmap.c#9 integrate Differences ... ==== //depot/projects/netperf/sys/alpha/alpha/db_trace.c#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/alpha/alpha/db_trace.c,v 1.15 2003/08/17 06:42:07 marcel Exp $ */ +/* $FreeBSD: src/sys/alpha/alpha/db_trace.c,v 1.16 2003/11/29 11:57:02 jeff Exp $ */ /* $NetBSD: db_trace.c,v 1.9 2000/12/13 03:16:36 mycroft Exp $ */ /*- @@ -112,7 +112,7 @@ * Decode the function prologue for the function we're in, and note * which registers are stored where, and how large the stack frame is. */ -static void +static int decode_prologue(db_addr_t callpc, db_addr_t func, struct prologue_info *pi) { @@ -127,6 +127,7 @@ do { \ if (pi->pi_frame_size != 0) { \ db_printf("frame size botch: adjust register offsets?\n"); \ + return (1); \ } \ } while (0) @@ -143,9 +144,11 @@ */ signed_immediate = (long)ins.mem_format.displacement; #if 1 - if (signed_immediate > 0) + if (signed_immediate > 0) { db_printf("prologue botch: displacement %ld\n", signed_immediate); + return (1); + } #endif CHECK_FRAMESIZE; pi->pi_frame_size += -signed_immediate; @@ -169,6 +172,7 @@ pi->pi_reg_offset[ins.mem_format.rd] = signed_immediate; } } + return (0); } static int @@ -363,7 +367,8 @@ * * XXX How does this interact w/ alloca()?! */ - decode_prologue(callpc, symval, &pi); + if (decode_prologue(callpc, symval, &pi)) + return; if ((pi.pi_regmask & (1 << 26)) == 0) { /* * No saved RA found. We might have RA from ==== //depot/projects/netperf/sys/alpha/alpha/mp_machdep.c#6 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/alpha/alpha/mp_machdep.c,v 1.49 2003/11/21 22:23:25 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/mp_machdep.c,v 1.51 2003/12/03 14:57:25 jhb Exp $"); #include "opt_kstack_pages.h" @@ -332,13 +332,11 @@ int i; mp_maxid = 0; - for (i = 0; i < hwrpb->rpb_pcs_cnt; i++) { + for (i = 0; i < hwrpb->rpb_pcs_cnt && i < MAXCPU; i++) { if (i == PCPU_GET(cpuid)) continue; if (!smp_cpu_enabled(LOCATE_PCS(hwrpb, i))) continue; - if (i > MAXCPU) - continue; mp_maxid = i; } } ==== //depot/projects/netperf/sys/alpha/conf/GENERIC#4 (text+ko) ==== @@ -12,13 +12,13 @@ # latest information. # # An exhaustive list of options and more detailed explanations of the -# device lines is also present in the ../../conf/NOTES and NOTES files. -# If you are in doubt as to the purpose or necessity of a line, check first +# device lines is also present in the ../../conf/NOTES and NOTES files. +# If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # # For hardware specific information check HARDWARE.TXT # -# $FreeBSD: src/sys/alpha/conf/GENERIC,v 1.164 2003/11/13 02:04:34 jeff Exp $ +# $FreeBSD: src/sys/alpha/conf/GENERIC,v 1.165 2003/12/08 05:20:34 obrien Exp $ machine alpha cpu EV4 @@ -62,7 +62,7 @@ options PSEUDOFS #Pseudo-filesystem framework options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!] options COMPAT_FREEBSD4 #Compatible with FreeBSD4 -options SCSI_DELAY=15000 #Delay (in ms) before probing SCSI +options SCSI_DELAY=15000 #Delay (in ms) before probing SCSI options KTRACE #ktrace(1) syscall trace support options SYSVSHM #SYSV-style shared memory options SYSVMSG #SYSV-style message queues @@ -111,8 +111,10 @@ device pass # Passthrough device (direct SCSI access) device ses # SCSI Environmental Services (and SAF-TE) +# RAID controllers interfaced to the SCSI subsystem +device amr # AMI MegaRAID + # RAID controllers -device amr # AMI MegaRAID device mlx # Mylex DAC960 family # atkbdc0 controls both the keyboard and the PS/2 mouse @@ -139,12 +141,12 @@ device lpt # Printer device ppi # Parallel port interface device #device vpo # Requires scbus and da - + # If you've got a "dumb" serial or parallel PCI card that is # supported by the puc(4) glue driver, uncomment the following # line to enable it (connects to the sio and/or ppc drivers): #device puc - + # PCI Ethernet NICs. device de # DEC/Intel DC21x4x (``Tulip'') device txp # 3Com 3cR990 (``Typhoon'') ==== //depot/projects/netperf/sys/alpha/conf/GENERIC.hints#2 (text+ko) ==== @@ -1,10 +1,11 @@ -# $FreeBSD: src/sys/alpha/conf/GENERIC.hints,v 1.6 2002/11/14 14:59:27 jhb Exp $ +# $FreeBSD: src/sys/alpha/conf/GENERIC.hints,v 1.7 2003/12/05 00:57:11 des Exp $ hint.fdc.0.at="isa" hint.fdc.0.port="0x3F0" hint.fdc.0.irq="6" hint.fdc.0.drq="2" hint.fd.0.at="fdc0" hint.fd.0.drive="0" +hint.fd.0.flags="4" hint.ata.0.at="isa" hint.ata.0.port="0x1F0" hint.ata.0.irq="14" ==== //depot/projects/netperf/sys/alpha/include/ioctl_meteor.h#2 (text+ko) ==== ==== //depot/projects/netperf/sys/amd64/acpica/madt.c#2 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/acpica/madt.c,v 1.7 2003/11/14 22:26:29 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/acpica/madt.c,v 1.9 2003/12/06 23:14:44 peter Exp $"); #include <sys/param.h> #include <sys/systm.h> ==== //depot/projects/netperf/sys/amd64/amd64/amd64-gdbstub.c#3 (text+ko) ==== @@ -12,6 +12,9 @@ ****************************************************************************/ +#include <sys/cdefs.h> +__FBSDID("$FreeBSD: src/sys/amd64/amd64/amd64-gdbstub.c,v 1.26 2003/12/06 23:19:46 peter Exp $"); + /**************************************************************************** * Header: remcom.c,v 1.34 91/03/09 12:29:49 glenne Exp $ * @@ -92,9 +95,6 @@ * ****************************************************************************/ -#include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/amd64-gdbstub.c,v 1.25 2003/07/25 21:15:44 obrien Exp $"); - #include <sys/param.h> #include <sys/reboot.h> #include <sys/systm.h> ==== //depot/projects/netperf/sys/amd64/amd64/amd64_mem.c#5 (text+ko) ==== @@ -22,11 +22,10 @@ * 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. - * */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/amd64_mem.c,v 1.23 2003/11/22 01:11:07 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/amd64_mem.c,v 1.24 2003/12/06 23:19:46 peter Exp $"); #include <sys/param.h> #include <sys/kernel.h> ==== //depot/projects/netperf/sys/amd64/amd64/apic_vector.S#2 (text+ko) ==== @@ -32,7 +32,7 @@ * SUCH DAMAGE. * * from: vector.s, 386BSD 0.1 unknown origin - * $FreeBSD: src/sys/amd64/amd64/apic_vector.S,v 1.95 2003/11/17 08:58:12 peter Exp $ + * $FreeBSD: src/sys/amd64/amd64/apic_vector.S,v 1.96 2003/12/06 23:19:47 peter Exp $ */ /* @@ -104,13 +104,13 @@ SUPERALIGN_TEXT ; \ IDTVEC(vec_name) ; \ PUSH_FRAME ; \ + FAKE_MCOUNT(13*4(%esp)) ; /* XXX avoid double count */ \ movq lapic, %rdx ; /* pointer to local APIC */ \ movl LA_ISR + 16 * (index)(%rdx), %eax ; /* load ISR */ \ bsrl %eax, %eax ; /* index of highset set bit in ISR */ \ jz 2f ; \ addl $(32 * index),%eax ; \ 1: ; \ - FAKE_MCOUNT(13*4(%esp)) ; /* XXX avoid double count */ \ movq %rax, %rdi ; /* pass the IRQ */ \ call lapic_handle_intr ; \ MEXITCOUNT ; \ ==== //depot/projects/netperf/sys/amd64/amd64/critical.c#5 (text+ko) ==== @@ -26,19 +26,11 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/critical.c,v 1.12 2003/08/12 23:24:04 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/critical.c,v 1.13 2003/12/06 23:13:22 peter Exp $"); #include <sys/param.h> #include <sys/systm.h> -#include <sys/signalvar.h> -#include <sys/kernel.h> -#include <sys/lock.h> -#include <sys/mutex.h> -#include <sys/pcpu.h> #include <sys/proc.h> -#include <sys/sysctl.h> -#include <sys/ucontext.h> -#include <machine/clock.h> #include <machine/critical.h> /* @@ -47,8 +39,6 @@ void cpu_critical_fork_exit(void) { - struct thread *td; - td = curthread; - td->td_md.md_savecrit = read_rflags() | PSL_I; + curthread->td_md.md_savecrit = read_rflags() | PSL_I; } ==== //depot/projects/netperf/sys/amd64/amd64/fpu.c#3 (text+ko) ==== @@ -31,11 +31,11 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * @(#)npx.c 7.2 (Berkeley) 5/12/91 + * from: @(#)npx.c 7.2 (Berkeley) 5/12/91 */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.146 2003/11/17 08:58:12 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.147 2003/12/06 23:19:47 peter Exp $"); #include <sys/param.h> #include <sys/systm.h> ==== //depot/projects/netperf/sys/amd64/amd64/local_apic.c#2 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.4 2003/11/17 08:58:12 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.5 2003/12/06 23:14:44 peter Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -551,6 +551,10 @@ if (!(cpu_feature & CPUID_APIC)) return; + /* Don't probe if APIC mode is disabled. */ + if (resource_disabled("apic", 0)) + return; + /* First, probe all the enumerators to find the best match. */ best_enum = NULL; best = 0; ==== //depot/projects/netperf/sys/amd64/amd64/machdep.c#11 (text+ko) ==== @@ -35,11 +35,11 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * @(#)machdep.c 7.4 (Berkeley) 6/3/91 + * from: @(#)machdep.c 7.4 (Berkeley) 6/3/91 */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.600 2003/11/20 22:54:44 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.601 2003/12/06 23:19:47 peter Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" ==== //depot/projects/netperf/sys/amd64/amd64/mem.c#4 (text+ko) ==== @@ -36,12 +36,12 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * Utah $Hdr: mem.c 1.13 89/10/08$ - * @(#)mem.c 7.2 (Berkeley) 5/9/91 + * from: Utah $Hdr: mem.c 1.13 89/10/08$ + * from: @(#)mem.c 7.2 (Berkeley) 5/9/91 */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mem.c,v 1.111 2003/11/17 08:58:12 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mem.c,v 1.112 2003/12/06 23:19:47 peter Exp $"); /* * Memory special file @@ -175,6 +175,7 @@ } c = iov->iov_len; + /* * Make sure that all of the pages are currently resident so * that we don't create any zero-fill pages. ==== //depot/projects/netperf/sys/amd64/amd64/mp_machdep.c#3 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.228 2003/11/21 22:23:25 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.230 2003/12/03 14:57:25 jhb Exp $"); #include "opt_cpu.h" #include "opt_kstack_pages.h" ==== //depot/projects/netperf/sys/amd64/amd64/nexus.c#6 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/nexus.c,v 1.57 2003/11/21 03:00:05 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/nexus.c,v 1.58 2003/12/06 23:19:47 peter Exp $"); /* * This code implements a `root nexus' for Intel Architecture @@ -174,7 +174,7 @@ if (last == -1) last = irq; } else if (last != -1) { - if (rman_manage_region(&irq_rman, last, irq - 1) != 0) + if (rman_manage_region(&irq_rman, last, irq - 1) != 0) panic("nexus_probe irq_rman add"); last = -1; } ==== //depot/projects/netperf/sys/amd64/amd64/pmap.c#18 (text+ko) ==== @@ -40,7 +40,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * from: @(#)pmap.c 7.7 (Berkeley) 5/12/91 + * from: @(#)pmap.c 7.7 (Berkeley) 5/12/91 */ /*- * Copyright (c) 2003 Networks Associates Technology, Inc. @@ -75,7 +75,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.447 2003/11/21 03:01:59 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.448 2003/12/06 23:18:42 peter Exp $"); /* * Manages physical address maps. @@ -158,13 +158,6 @@ #define PMAP_INLINE #endif -/* - * Given a map and a machine independent protection code, - * convert to a vax protection code. - */ -#define pte_prot(m, p) (protection_codes[p]) -static pt_entry_t protection_codes[8]; - struct pmap kernel_pmap_store; LIST_HEAD(pmaplist, pmap); static struct pmaplist allpmaps; @@ -219,7 +212,6 @@ static PMAP_INLINE void free_pv_entry(pv_entry_t pv); static pv_entry_t get_pv_entry(void); -static void amd64_protection_init(void); static void pmap_clear_ptes(vm_page_t m, int bit) __always_inline; @@ -477,11 +469,6 @@ load_cr3(KPML4phys); /* - * Initialize protection array. - */ - amd64_protection_init(); - - /* * Initialize the kernel pmap (which is statically allocated). */ kernel_pmap->pm_pml4 = (pdp_entry_t *) (KERNBASE + KPML4phys); @@ -2095,8 +2082,13 @@ /* * Now validate mapping with desired protection/wiring. */ - newpte = (pt_entry_t)(pa | pte_prot(pmap, prot) | PG_V); - + newpte = (pt_entry_t)(pa | PG_V); + if ((prot & VM_PROT_WRITE) != 0) + newpte |= PG_RW; +#ifdef PG_NX + if ((prot & VM_PROT_EXECUTE) == 0) + newpte |= PG_NX; +#endif if (wired) newpte |= PG_W; if (va < VM_MAXUSER_ADDRESS) @@ -2845,40 +2837,6 @@ * Miscellaneous support routines follow */ -static void -amd64_protection_init() -{ - register long *kp, prot; - -#if 0 -#define PG_NX (1ul << 63) -#else -#define PG_NX 0 -#endif - - kp = protection_codes; - for (prot = 0; prot < 8; prot++) { - switch (prot) { - case VM_PROT_NONE | VM_PROT_NONE | VM_PROT_NONE: - case VM_PROT_READ | VM_PROT_NONE | VM_PROT_NONE: - *kp++ = PG_NX; - break; - case VM_PROT_READ | VM_PROT_NONE | VM_PROT_EXECUTE: - case VM_PROT_NONE | VM_PROT_NONE | VM_PROT_EXECUTE: - *kp++ = 0; - break; - case VM_PROT_NONE | VM_PROT_WRITE | VM_PROT_NONE: - case VM_PROT_READ | VM_PROT_WRITE | VM_PROT_NONE: - *kp++ = PG_RW | PG_NX; - break; - case VM_PROT_NONE | VM_PROT_WRITE | VM_PROT_EXECUTE: - case VM_PROT_READ | VM_PROT_WRITE | VM_PROT_EXECUTE: - *kp++ = PG_RW; - break; - } - } -} - /* * Map a set of physical memory pages into the kernel virtual * address space. Return a pointer to where it is mapped. This ==== //depot/projects/netperf/sys/amd64/ia32/ia32_signal.c#5 (text+ko) ==== @@ -36,7 +36,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/ia32/ia32_signal.c,v 1.6 2003/11/08 07:43:44 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/ia32/ia32_signal.c,v 1.7 2003/12/03 07:00:30 peter Exp $"); #include "opt_compat.h" @@ -187,6 +187,7 @@ p = td->td_proc; PROC_LOCK_ASSERT(p, MA_OWNED); psp = p->p_sigacts; + mtx_assert(&psp->ps_mtx, MA_OWNED); regs = td->td_frame; oonstack = sigonstack(regs->tf_rsp); @@ -250,6 +251,7 @@ sf.sf_addr = regs->tf_addr; sf.sf_ah = (u_int32_t)(uintptr_t)catcher; } + mtx_unlock(&psp->ps_mtx); PROC_UNLOCK(p); /* @@ -274,6 +276,7 @@ td->td_pcb->pcb_es = _udatasel; /* leave user %fs and %gs untouched */ PROC_LOCK(p); + mtx_lock(&psp->ps_mtx); } #endif /* COMPAT_FREEBSD4 */ @@ -298,6 +301,7 @@ return; } #endif + mtx_assert(&psp->ps_mtx, MA_OWNED); regs = td->td_frame; oonstack = sigonstack(regs->tf_rsp); @@ -366,6 +370,7 @@ sf.sf_addr = regs->tf_addr; sf.sf_ah = (u_int32_t)(uintptr_t)catcher; } + mtx_unlock(&psp->ps_mtx); PROC_UNLOCK(p); /* @@ -390,6 +395,7 @@ td->td_pcb->pcb_es = _udatasel; /* leave user %fs and %gs untouched */ PROC_LOCK(p); + mtx_lock(&psp->ps_mtx); } /* ==== //depot/projects/netperf/sys/amd64/include/cpufunc.h#3 (text+ko) ==== @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/cpufunc.h,v 1.137 2003/11/08 04:39:22 peter Exp $ + * $FreeBSD: src/sys/amd64/include/cpufunc.h,v 1.138 2003/12/06 23:22:43 peter Exp $ */ /* @@ -77,6 +77,15 @@ return (result); } +static __inline u_long +bsfq(u_long mask) +{ + u_long result; + + __asm __volatile("bsfq %1,%0" : "=r" (result) : "rm" (mask)); + return (result); +} + static __inline u_int bsrl(u_int mask) { @@ -86,6 +95,15 @@ return (result); } +static __inline u_long +bsrq(u_long mask) +{ + u_long result; + + __asm __volatile("bsrq %1,%0" : "=r" (result) : "rm" (mask)); + return (result); +} + static __inline void disable_intr(void) { @@ -111,13 +129,26 @@ static __inline int ffs(int mask) { +#if 0 /* * Note that gcc-2's builtin ffs would be used if we didn't declare * this inline or turn off the builtin. The builtin is faster but * broken in gcc-2.4.5 and slower but working in gcc-2.5 and later * versions. */ - return (mask == 0 ? mask : (int)bsfl((u_int)mask) + 1); + return (mask == 0 ? mask : (int)bsfl((u_int)mask) + 1); +#else + /* Actually, the above is way out of date. The builtins use cmov etc */ + return (__builtin_ffs(mask)); +#endif +} + +#define HAVE_INLINE_FFSL + +static __inline int +ffsl(long mask) +{ + return (mask == 0 ? mask : (int)bsfq((u_long)mask) + 1); } #define HAVE_INLINE_FLS @@ -128,6 +159,14 @@ return (mask == 0 ? mask : (int)bsrl((u_int)mask) + 1); } +#define HAVE_INLINE_FLSL + +static __inline int +flsl(long mask) +{ + return (mask == 0 ? mask : (int)bsrq((u_long)mask) + 1); +} + static __inline void halt(void) { ==== //depot/projects/netperf/sys/amd64/include/critical.h#4 (text+ko) ==== @@ -33,7 +33,7 @@ * related support functions residing * in <arch>/<arch>/critical.c - prototyped * - * $FreeBSD: src/sys/amd64/include/critical.h,v 1.5 2003/08/12 23:24:04 imp Exp $ + * $FreeBSD: src/sys/amd64/include/critical.h,v 1.6 2003/12/06 23:13:22 peter Exp $ */ #ifndef _MACHINE_CRITICAL_H_ @@ -57,10 +57,7 @@ static __inline void cpu_critical_enter(void) { - struct thread *td; - - td = curthread; - td->td_md.md_savecrit = intr_disable(); + curthread->td_md.md_savecrit = intr_disable(); } /* @@ -73,10 +70,7 @@ static __inline void cpu_critical_exit(void) { - struct thread *td; - - td = curthread; - intr_restore(td->td_md.md_savecrit); + intr_restore(curthread->td_md.md_savecrit); } #else /* !__GNUC__ */ ==== //depot/projects/netperf/sys/amd64/include/mutex.h#2 (text+ko) ==== @@ -26,14 +26,13 @@ * SUCH DAMAGE. * * from BSDI $Id: mutex.h,v 2.7.2.35 2000/04/27 03:10:26 cp Exp $ - * $FreeBSD: src/sys/amd64/include/mutex.h,v 1.37 2003/05/01 01:05:23 peter Exp $ + * $FreeBSD: src/sys/amd64/include/mutex.h,v 1.38 2003/12/06 23:17:18 peter Exp $ */ #ifndef _MACHINE_MUTEX_H_ #define _MACHINE_MUTEX_H_ #ifndef LOCORE - #ifdef _KERNEL /* Global locks */ @@ -41,35 +40,5 @@ #endif /* _KERNEL */ -#else /* !LOCORE */ - -/* - * Simple assembly macros to get and release mutexes. - * - * Note: All of these macros accept a "flags" argument and are analoguous - * to the mtx_lock_flags and mtx_unlock_flags general macros. If one - * desires to not pass a flag, the value 0 may be passed as second - * argument. - * - * XXX: We only have MTX_LOCK_SPIN and MTX_UNLOCK_SPIN for now, since that's - * all we use right now. We should add MTX_LOCK and MTX_UNLOCK (for sleep - * locks) in the near future, however. - */ -#define MTX_LOCK_SPIN(lck, flags) \ - pushq $0 ; \ - pushq $0 ; \ - pushq $flags ; \ - pushq $lck ; \ - call _mtx_lock_spin_flags ; \ - addq $0x20, %rsp ; \ - -#define MTX_UNLOCK_SPIN(lck) \ - pushq $0 ; \ - pushq $0 ; \ - pushq $0 ; \ - pushq $lck ; \ - call _mtx_unlock_spin_flags ; \ - addq $0x20, %rsp ; \ - #endif /* !LOCORE */ #endif /* __MACHINE_MUTEX_H */ ==== //depot/projects/netperf/sys/amd64/include/runq.h#2 (text+ko) ==== @@ -23,24 +23,24 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/runq.h,v 1.2 2002/06/20 06:21:20 peter Exp $ + * $FreeBSD: src/sys/amd64/include/runq.h,v 1.3 2003/12/06 23:24:18 peter Exp $ */ #ifndef _MACHINE_RUNQ_H_ #define _MACHINE_RUNQ_H_ -#define RQB_LEN (2) /* Number of priority status words. */ -#define RQB_L2BPW (5) /* Log2(sizeof(rqb_word_t) * NBBY)). */ +#define RQB_LEN (1) /* Number of priority status words. */ +#define RQB_L2BPW (6) /* Log2(sizeof(rqb_word_t) * NBBY)). */ #define RQB_BPW (1<<RQB_L2BPW) /* Bits in an rqb_word_t. */ -#define RQB_BIT(pri) (1 << ((pri) & (RQB_BPW - 1))) +#define RQB_BIT(pri) (1ul << ((pri) & (RQB_BPW - 1))) #define RQB_WORD(pri) ((pri) >> RQB_L2BPW) -#define RQB_FFS(word) (ffs(word) - 1) +#define RQB_FFS(word) (bsfq(word)) /* * Type of run queue status word. */ -typedef u_int32_t rqb_word_t; +typedef u_int64_t rqb_word_t; #endif ==== //depot/projects/netperf/sys/amd64/include/vmparam.h#5 (text+ko) ==== @@ -38,7 +38,7 @@ * SUCH DAMAGE. * * from: @(#)vmparam.h 5.9 (Berkeley) 5/12/91 - * $FreeBSD: src/sys/amd64/include/vmparam.h,v 1.43 2003/11/08 04:39:22 peter Exp $ + * $FreeBSD: src/sys/amd64/include/vmparam.h,v 1.44 2003/12/07 04:51:04 alc Exp $ */ @@ -133,7 +133,7 @@ * Ceiling on amount of kmem_map kva space. */ #ifndef VM_KMEM_SIZE_MAX -#define VM_KMEM_SIZE_MAX (200 * 1024 * 1024) +#define VM_KMEM_SIZE_MAX (400 * 1024 * 1024) >>> TRUNCATED FOR MAIL (1000 lines) <<<
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200312082012.hB8KCqrv007061>