From owner-svn-src-projects@FreeBSD.ORG Tue Mar 3 20:27:53 2009 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 53F311065674; Tue, 3 Mar 2009 20:27:53 +0000 (UTC) (envelope-from lulf@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 3B17D8FC13; Tue, 3 Mar 2009 20:27:53 +0000 (UTC) (envelope-from lulf@FreeBSD.org) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id n23KRrsL020770; Tue, 3 Mar 2009 20:27:53 GMT (envelope-from lulf@svn.freebsd.org) Received: (from lulf@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id n23KRqC8020757; Tue, 3 Mar 2009 20:27:52 GMT (envelope-from lulf@svn.freebsd.org) Message-Id: <200903032027.n23KRqC8020757@svn.freebsd.org> From: Ulf Lilleengen Date: Tue, 3 Mar 2009 20:27:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r189322 - in projects/gvinum/sys: . amd64/amd64 amd64/conf amd64/ia32 amd64/include amd64/linux32 amd64/pci arm/arm arm/at91 arm/conf arm/include arm/mv arm/mv/discovery arm/mv/kirkwood... X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 03 Mar 2009 20:27:53 -0000 Author: lulf Date: Tue Mar 3 20:27:50 2009 New Revision: 189322 URL: http://svn.freebsd.org/changeset/base/189322 Log: MFH Added: projects/gvinum/sys/arm/arm/cpufunc_asm_sheeva.S - copied unchanged from r189320, head/sys/arm/arm/cpufunc_asm_sheeva.S projects/gvinum/sys/arm/conf/CAMBRIA - copied unchanged from r189320, head/sys/arm/conf/CAMBRIA projects/gvinum/sys/arm/conf/CAMBRIA.hints - copied unchanged from r189320, head/sys/arm/conf/CAMBRIA.hints projects/gvinum/sys/arm/xscale/ixp425/cambria_fled.c - copied unchanged from r189320, head/sys/arm/xscale/ixp425/cambria_fled.c projects/gvinum/sys/arm/xscale/ixp425/cambria_led.c - copied unchanged from r189320, head/sys/arm/xscale/ixp425/cambria_led.c projects/gvinum/sys/arm/xscale/ixp425/std.ixp435 - copied unchanged from r189320, head/sys/arm/xscale/ixp425/std.ixp435 projects/gvinum/sys/boot/ficl/mips/ - copied from r189320, head/sys/boot/ficl/mips/ projects/gvinum/sys/bsm/audit_domain.h - copied unchanged from r189320, head/sys/bsm/audit_domain.h projects/gvinum/sys/bsm/audit_errno.h - copied unchanged from r189320, head/sys/bsm/audit_errno.h projects/gvinum/sys/bsm/audit_socket_type.h - copied unchanged from r189320, head/sys/bsm/audit_socket_type.h projects/gvinum/sys/dev/ata/ata-raid-ddf.h - copied unchanged from r189320, head/sys/dev/ata/ata-raid-ddf.h projects/gvinum/sys/dev/cfi/cfi_bus_ixp4xx.c - copied unchanged from r189320, head/sys/dev/cfi/cfi_bus_ixp4xx.c projects/gvinum/sys/dev/drm/i915_reg.h - copied unchanged from r189320, head/sys/dev/drm/i915_reg.h projects/gvinum/sys/dev/ofw/ofw_if.m - copied unchanged from r189320, head/sys/dev/ofw/ofw_if.m projects/gvinum/sys/dev/ofw/ofw_iicbus.c - copied unchanged from r189320, head/sys/dev/ofw/ofw_iicbus.c projects/gvinum/sys/dev/ofw/ofw_standard.c - copied unchanged from r189320, head/sys/dev/ofw/ofw_standard.c projects/gvinum/sys/dev/ofw/ofwvar.h - copied unchanged from r189320, head/sys/dev/ofw/ofwvar.h projects/gvinum/sys/dev/sound/macio/ - copied from r189320, head/sys/dev/sound/macio/ projects/gvinum/sys/dev/syscons/scterm-teken.c - copied unchanged from r189320, head/sys/dev/syscons/scterm-teken.c projects/gvinum/sys/dev/syscons/teken/ - copied from r189320, head/sys/dev/syscons/teken/ projects/gvinum/sys/geom/part/g_part_ebr.c - copied unchanged from r189320, head/sys/geom/part/g_part_ebr.c projects/gvinum/sys/kern/kern_vimage.c - copied unchanged from r189320, head/sys/kern/kern_vimage.c projects/gvinum/sys/legacy/ - copied from r189320, head/sys/legacy/ projects/gvinum/sys/libkern/memmove.c - copied unchanged from r189320, head/sys/libkern/memmove.c projects/gvinum/sys/mips/mips/elf64_machdep.c - copied unchanged from r189320, head/sys/mips/mips/elf64_machdep.c projects/gvinum/sys/modules/geom/geom_part/geom_part_ebr/ - copied from r189320, head/sys/modules/geom/geom_part/geom_part_ebr/ projects/gvinum/sys/modules/netgraph/ether_echo/ - copied from r189320, head/sys/modules/netgraph/ether_echo/ projects/gvinum/sys/modules/sound/driver/ai2s/ - copied from r189320, head/sys/modules/sound/driver/ai2s/ projects/gvinum/sys/modules/sound/driver/davbus/ - copied from r189320, head/sys/modules/sound/driver/davbus/ projects/gvinum/sys/net/if_llatbl.c - copied unchanged from r189320, head/sys/net/if_llatbl.c projects/gvinum/sys/net/if_llatbl.h - copied unchanged from r189320, head/sys/net/if_llatbl.h projects/gvinum/sys/net80211/ieee80211_tdma.c - copied unchanged from r189320, head/sys/net80211/ieee80211_tdma.c projects/gvinum/sys/net80211/ieee80211_tdma.h - copied unchanged from r189320, head/sys/net80211/ieee80211_tdma.h projects/gvinum/sys/netgraph/ng_ether_echo.c - copied unchanged from r189320, head/sys/netgraph/ng_ether_echo.c projects/gvinum/sys/netgraph/ng_ether_echo.h - copied unchanged from r189320, head/sys/netgraph/ng_ether_echo.h projects/gvinum/sys/netinet/libalias/alias_sctp.c - copied unchanged from r189320, head/sys/netinet/libalias/alias_sctp.c projects/gvinum/sys/netinet/libalias/alias_sctp.h - copied unchanged from r189320, head/sys/netinet/libalias/alias_sctp.h projects/gvinum/sys/pc98/cbus/sctermvar.h - copied unchanged from r189320, head/sys/pc98/cbus/sctermvar.h projects/gvinum/sys/powerpc/include/altivec.h - copied unchanged from r189320, head/sys/powerpc/include/altivec.h projects/gvinum/sys/powerpc/mpc85xx/mpc85xx.h - copied unchanged from r189320, head/sys/powerpc/mpc85xx/mpc85xx.h projects/gvinum/sys/powerpc/powermac/kiic.c - copied unchanged from r189320, head/sys/powerpc/powermac/kiic.c projects/gvinum/sys/powerpc/powerpc/altivec.c - copied unchanged from r189320, head/sys/powerpc/powerpc/altivec.c projects/gvinum/sys/security/audit/audit_bsm_domain.c - copied unchanged from r189320, head/sys/security/audit/audit_bsm_domain.c projects/gvinum/sys/security/audit/audit_bsm_errno.c - copied unchanged from r189320, head/sys/security/audit/audit_bsm_errno.c projects/gvinum/sys/security/audit/audit_bsm_socket_type.c - copied unchanged from r189320, head/sys/security/audit/audit_bsm_socket_type.c projects/gvinum/sys/xen/evtchn.h - copied unchanged from r189320, head/sys/xen/evtchn.h projects/gvinum/sys/xen/hypervisor.h - copied unchanged from r189320, head/sys/xen/hypervisor.h projects/gvinum/sys/xen/xen_intr.h - copied unchanged from r189320, head/sys/xen/xen_intr.h Replaced: projects/gvinum/sys/dev/ata/ata-usb.c - copied unchanged from r189320, head/sys/dev/ata/ata-usb.c projects/gvinum/sys/dev/sound/usb/uaudio.c - copied unchanged from r189320, head/sys/dev/sound/usb/uaudio.c projects/gvinum/sys/dev/sound/usb/uaudio.h - copied unchanged from r189320, head/sys/dev/sound/usb/uaudio.h projects/gvinum/sys/dev/sound/usb/uaudio_pcm.c - copied unchanged from r189320, head/sys/dev/sound/usb/uaudio_pcm.c projects/gvinum/sys/dev/sound/usb/uaudioreg.h - copied unchanged from r189320, head/sys/dev/sound/usb/uaudioreg.h projects/gvinum/sys/dev/usb/ - copied from r189320, head/sys/dev/usb/ projects/gvinum/sys/dev/usb/usb.h - copied unchanged from r189320, head/sys/dev/usb/usb.h projects/gvinum/sys/dev/usb/usb_if.m - copied unchanged from r189320, head/sys/dev/usb/usb_if.m projects/gvinum/sys/dev/usb/usbdevs - copied unchanged from r189320, head/sys/dev/usb/usbdevs projects/gvinum/sys/dev/usb/usbhid.h - copied unchanged from r189320, head/sys/dev/usb/usbhid.h projects/gvinum/sys/modules/usb/ - copied from r189320, head/sys/modules/usb/ projects/gvinum/sys/modules/usb/Makefile - copied unchanged from r189320, head/sys/modules/usb/Makefile Deleted: projects/gvinum/sys/arm/arm/cpufunc_asm_feroceon.S projects/gvinum/sys/boot/common/load.c projects/gvinum/sys/dev/digi/con.CX-IBM.h projects/gvinum/sys/dev/digi/con.CX.h projects/gvinum/sys/dev/digi/con.EPCX.h projects/gvinum/sys/dev/digi/con.MBank.h projects/gvinum/sys/dev/sound/pci/au88x0.c projects/gvinum/sys/dev/sound/pci/au88x0.h projects/gvinum/sys/dev/syscons/scterm-dumb.c projects/gvinum/sys/dev/syscons/scterm-sc.c projects/gvinum/sys/dev/syscons/sctermvar.h projects/gvinum/sys/dev/usb2/ projects/gvinum/sys/i386/include/xen/evtchn.h projects/gvinum/sys/i386/include/xen/hypervisor.h projects/gvinum/sys/i386/include/xen/xen_intr.h projects/gvinum/sys/modules/ath_rate_amrr/ projects/gvinum/sys/modules/ath_rate_onoe/ projects/gvinum/sys/modules/ath_rate_sample/ projects/gvinum/sys/modules/aue/ projects/gvinum/sys/modules/axe/ projects/gvinum/sys/modules/cdce/ projects/gvinum/sys/modules/cue/ projects/gvinum/sys/modules/ehci/ projects/gvinum/sys/modules/kue/ projects/gvinum/sys/modules/ohci/ projects/gvinum/sys/modules/rue/ projects/gvinum/sys/modules/rum/ projects/gvinum/sys/modules/slhci/ projects/gvinum/sys/modules/sound/driver/au88x0/ projects/gvinum/sys/modules/u3g/ projects/gvinum/sys/modules/uark/ projects/gvinum/sys/modules/ubsa/ projects/gvinum/sys/modules/ucom/ projects/gvinum/sys/modules/udav/ projects/gvinum/sys/modules/udbp/ projects/gvinum/sys/modules/ufm/ projects/gvinum/sys/modules/ufoma/ projects/gvinum/sys/modules/uftdi/ projects/gvinum/sys/modules/ugen/ projects/gvinum/sys/modules/uhci/ projects/gvinum/sys/modules/uhid/ projects/gvinum/sys/modules/uipaq/ projects/gvinum/sys/modules/ukbd/ projects/gvinum/sys/modules/ulpt/ projects/gvinum/sys/modules/umass/ projects/gvinum/sys/modules/umct/ projects/gvinum/sys/modules/umodem/ projects/gvinum/sys/modules/ums/ projects/gvinum/sys/modules/upgt/ projects/gvinum/sys/modules/uplcom/ projects/gvinum/sys/modules/ural/ projects/gvinum/sys/modules/urio/ projects/gvinum/sys/modules/usb2/ projects/gvinum/sys/modules/uscanner/ projects/gvinum/sys/modules/uslcom/ projects/gvinum/sys/modules/uvisor/ projects/gvinum/sys/modules/uvscom/ projects/gvinum/sys/modules/zyd/ projects/gvinum/sys/netinet/ipprotosw.h projects/gvinum/sys/pccard/ projects/gvinum/sys/powerpc/booke/support.S projects/gvinum/sys/sparc64/include/ofw_bus.h projects/gvinum/sys/sparc64/sparc64/ofw_bus.c projects/gvinum/sys/sun4v/include/ofw_bus.h Modified: projects/gvinum/sys/ (props changed) projects/gvinum/sys/Makefile projects/gvinum/sys/amd64/amd64/amd64_mem.c projects/gvinum/sys/amd64/amd64/busdma_machdep.c projects/gvinum/sys/amd64/amd64/cpu_switch.S projects/gvinum/sys/amd64/amd64/exception.S projects/gvinum/sys/amd64/amd64/fpu.c projects/gvinum/sys/amd64/amd64/genassym.c projects/gvinum/sys/amd64/amd64/identcpu.c projects/gvinum/sys/amd64/amd64/initcpu.c projects/gvinum/sys/amd64/amd64/io_apic.c projects/gvinum/sys/amd64/amd64/local_apic.c projects/gvinum/sys/amd64/amd64/machdep.c projects/gvinum/sys/amd64/amd64/mp_machdep.c projects/gvinum/sys/amd64/amd64/msi.c projects/gvinum/sys/amd64/amd64/pmap.c projects/gvinum/sys/amd64/amd64/vm_machdep.c projects/gvinum/sys/amd64/conf/DEFAULTS projects/gvinum/sys/amd64/conf/GENERIC projects/gvinum/sys/amd64/conf/NOTES projects/gvinum/sys/amd64/ia32/ia32_signal.c projects/gvinum/sys/amd64/ia32/ia32_sigtramp.S projects/gvinum/sys/amd64/include/apicreg.h projects/gvinum/sys/amd64/include/apicvar.h projects/gvinum/sys/amd64/include/cpufunc.h projects/gvinum/sys/amd64/include/cputypes.h projects/gvinum/sys/amd64/include/elf.h projects/gvinum/sys/amd64/include/fpu.h projects/gvinum/sys/amd64/include/intr_machdep.h projects/gvinum/sys/amd64/include/legacyvar.h projects/gvinum/sys/amd64/include/md_var.h projects/gvinum/sys/amd64/include/specialreg.h projects/gvinum/sys/amd64/linux32/linux32_locore.s projects/gvinum/sys/amd64/linux32/linux32_machdep.c projects/gvinum/sys/amd64/linux32/linux32_sysvec.c projects/gvinum/sys/amd64/pci/pci_bus.c projects/gvinum/sys/arm/arm/busdma_machdep.c projects/gvinum/sys/arm/arm/cpufunc.c projects/gvinum/sys/arm/arm/dump_machdep.c projects/gvinum/sys/arm/arm/elf_trampoline.c projects/gvinum/sys/arm/arm/genassym.c projects/gvinum/sys/arm/arm/identcpu.c projects/gvinum/sys/arm/arm/machdep.c projects/gvinum/sys/arm/arm/pmap.c projects/gvinum/sys/arm/arm/swtch.S projects/gvinum/sys/arm/arm/vm_machdep.c projects/gvinum/sys/arm/at91/at91.c projects/gvinum/sys/arm/at91/at91_mci.c projects/gvinum/sys/arm/at91/at91_twi.c projects/gvinum/sys/arm/at91/at91_twireg.h projects/gvinum/sys/arm/at91/at91var.h projects/gvinum/sys/arm/at91/files.at91 projects/gvinum/sys/arm/at91/uart_bus_at91usart.c projects/gvinum/sys/arm/at91/uart_cpu_at91rm9200usart.c projects/gvinum/sys/arm/at91/uart_dev_at91usart.c projects/gvinum/sys/arm/conf/AVILA projects/gvinum/sys/arm/conf/AVILA.hints projects/gvinum/sys/arm/conf/BWCT projects/gvinum/sys/arm/conf/DEFAULTS projects/gvinum/sys/arm/conf/EP80219 projects/gvinum/sys/arm/conf/HL200 projects/gvinum/sys/arm/conf/IQ31244 projects/gvinum/sys/arm/conf/KB920X projects/gvinum/sys/arm/conf/NSLU projects/gvinum/sys/arm/include/armreg.h projects/gvinum/sys/arm/include/atomic.h projects/gvinum/sys/arm/include/cpufunc.h projects/gvinum/sys/arm/include/elf.h projects/gvinum/sys/arm/include/ieee.h projects/gvinum/sys/arm/include/intr.h projects/gvinum/sys/arm/include/proc.h projects/gvinum/sys/arm/include/sysarch.h projects/gvinum/sys/arm/include/vmparam.h projects/gvinum/sys/arm/mv/common.c projects/gvinum/sys/arm/mv/discovery/db78xxx.c projects/gvinum/sys/arm/mv/discovery/discovery.c projects/gvinum/sys/arm/mv/files.mv projects/gvinum/sys/arm/mv/gpio.c projects/gvinum/sys/arm/mv/kirkwood/db88f6xxx.c projects/gvinum/sys/arm/mv/kirkwood/kirkwood.c projects/gvinum/sys/arm/mv/mv_machdep.c projects/gvinum/sys/arm/mv/mv_pci.c projects/gvinum/sys/arm/mv/mvreg.h projects/gvinum/sys/arm/mv/mvvar.h projects/gvinum/sys/arm/mv/obio.c projects/gvinum/sys/arm/mv/orion/db88f5xxx.c projects/gvinum/sys/arm/mv/orion/orion.c projects/gvinum/sys/arm/sa11x0/assabet_machdep.c projects/gvinum/sys/arm/xscale/i8134x/i81342_mcu.c projects/gvinum/sys/arm/xscale/ixp425/avila_ata.c projects/gvinum/sys/arm/xscale/ixp425/avila_led.c projects/gvinum/sys/arm/xscale/ixp425/avila_machdep.c projects/gvinum/sys/arm/xscale/ixp425/files.avila projects/gvinum/sys/arm/xscale/ixp425/files.ixp425 projects/gvinum/sys/arm/xscale/ixp425/if_npe.c projects/gvinum/sys/arm/xscale/ixp425/if_npereg.h projects/gvinum/sys/arm/xscale/ixp425/ixp425.c projects/gvinum/sys/arm/xscale/ixp425/ixp425_iic.c projects/gvinum/sys/arm/xscale/ixp425/ixp425_intr.h projects/gvinum/sys/arm/xscale/ixp425/ixp425_mem.c projects/gvinum/sys/arm/xscale/ixp425/ixp425_npe.c projects/gvinum/sys/arm/xscale/ixp425/ixp425_npevar.h projects/gvinum/sys/arm/xscale/ixp425/ixp425_pci.c projects/gvinum/sys/arm/xscale/ixp425/ixp425_qmgr.c projects/gvinum/sys/arm/xscale/ixp425/ixp425_timer.c projects/gvinum/sys/arm/xscale/ixp425/ixp425_wdog.c projects/gvinum/sys/arm/xscale/ixp425/ixp425reg.h projects/gvinum/sys/arm/xscale/ixp425/ixp425var.h projects/gvinum/sys/arm/xscale/ixp425/std.avila projects/gvinum/sys/boot/Makefile projects/gvinum/sys/boot/Makefile.inc projects/gvinum/sys/boot/arm/ixp425/boot2/arm_init.S projects/gvinum/sys/boot/arm/ixp425/boot2/boot2.c projects/gvinum/sys/boot/arm/ixp425/boot2/ixp425_board.c projects/gvinum/sys/boot/arm/ixp425/boot2/lib.h projects/gvinum/sys/boot/common/loader.8 projects/gvinum/sys/boot/common/module.c projects/gvinum/sys/boot/forth/loader.4th projects/gvinum/sys/boot/forth/loader.conf projects/gvinum/sys/boot/forth/pnp.4th projects/gvinum/sys/boot/forth/support.4th projects/gvinum/sys/boot/i386/boot0/Makefile projects/gvinum/sys/boot/i386/boot0/boot0.S projects/gvinum/sys/boot/i386/btx/btx/btx.S projects/gvinum/sys/boot/i386/gptzfsboot/Makefile projects/gvinum/sys/boot/i386/libi386/bootinfo64.c projects/gvinum/sys/boot/i386/loader/Makefile projects/gvinum/sys/boot/i386/pxeldr/pxeboot.8 projects/gvinum/sys/boot/i386/zfsboot/Makefile projects/gvinum/sys/boot/ia64/common/Makefile projects/gvinum/sys/boot/ia64/efi/Makefile projects/gvinum/sys/boot/ia64/ski/Makefile projects/gvinum/sys/boot/pc98/loader/Makefile projects/gvinum/sys/boot/powerpc/ofw/Makefile projects/gvinum/sys/boot/powerpc/uboot/conf.c projects/gvinum/sys/boot/sparc64/loader/Makefile projects/gvinum/sys/boot/sparc64/loader/main.c projects/gvinum/sys/boot/uboot/common/main.c projects/gvinum/sys/boot/uboot/lib/devicename.c projects/gvinum/sys/boot/zfs/zfs.c projects/gvinum/sys/boot/zfs/zfsimpl.c projects/gvinum/sys/bsm/audit.h projects/gvinum/sys/bsm/audit_internal.h projects/gvinum/sys/bsm/audit_kevents.h projects/gvinum/sys/bsm/audit_record.h projects/gvinum/sys/cam/cam_periph.c projects/gvinum/sys/cam/cam_periph.h projects/gvinum/sys/cam/cam_sim.c projects/gvinum/sys/cam/cam_sim.h projects/gvinum/sys/cam/cam_xpt.c projects/gvinum/sys/cam/cam_xpt_sim.h projects/gvinum/sys/cam/scsi/scsi_all.c projects/gvinum/sys/cam/scsi/scsi_cd.c projects/gvinum/sys/cam/scsi/scsi_ch.c projects/gvinum/sys/cam/scsi/scsi_da.c projects/gvinum/sys/cam/scsi/scsi_low.c projects/gvinum/sys/cam/scsi/scsi_pass.c projects/gvinum/sys/cam/scsi/scsi_pt.c projects/gvinum/sys/cam/scsi/scsi_sa.c projects/gvinum/sys/cam/scsi/scsi_ses.c projects/gvinum/sys/cam/scsi/scsi_sg.c projects/gvinum/sys/cddl/compat/opensolaris/kern/opensolaris_vfs.c projects/gvinum/sys/cddl/compat/opensolaris/sys/sysmacros.h projects/gvinum/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c projects/gvinum/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c projects/gvinum/sys/compat/freebsd32/freebsd32_misc.c projects/gvinum/sys/compat/freebsd32/freebsd32_proto.h projects/gvinum/sys/compat/freebsd32/freebsd32_signal.h projects/gvinum/sys/compat/freebsd32/freebsd32_syscall.h projects/gvinum/sys/compat/freebsd32/freebsd32_syscalls.c projects/gvinum/sys/compat/freebsd32/freebsd32_sysent.c projects/gvinum/sys/compat/freebsd32/syscalls.master projects/gvinum/sys/compat/linprocfs/linprocfs.c projects/gvinum/sys/compat/linux/linux_file.c projects/gvinum/sys/compat/linux/linux_getcwd.c projects/gvinum/sys/compat/linux/linux_ioctl.c projects/gvinum/sys/compat/linux/linux_misc.c projects/gvinum/sys/compat/linux/linux_stats.c projects/gvinum/sys/compat/ndis/kern_ndis.c projects/gvinum/sys/compat/ndis/kern_windrv.c projects/gvinum/sys/compat/ndis/ndis_var.h projects/gvinum/sys/compat/ndis/ntoskrnl_var.h projects/gvinum/sys/compat/ndis/subr_hal.c projects/gvinum/sys/compat/ndis/subr_ndis.c projects/gvinum/sys/compat/ndis/subr_ntoskrnl.c projects/gvinum/sys/compat/ndis/subr_usbd.c projects/gvinum/sys/compat/ndis/usbd_var.h projects/gvinum/sys/compat/ndis/winx32_wrap.S projects/gvinum/sys/compat/svr4/svr4_misc.c projects/gvinum/sys/compat/svr4/svr4_sockio.c projects/gvinum/sys/compat/svr4/svr4_sysvec.c projects/gvinum/sys/compat/svr4/svr4_types.h projects/gvinum/sys/conf/Makefile.arm projects/gvinum/sys/conf/NOTES projects/gvinum/sys/conf/files projects/gvinum/sys/conf/files.amd64 projects/gvinum/sys/conf/files.i386 projects/gvinum/sys/conf/files.ia64 projects/gvinum/sys/conf/files.mips projects/gvinum/sys/conf/files.pc98 projects/gvinum/sys/conf/files.powerpc projects/gvinum/sys/conf/files.sparc64 projects/gvinum/sys/conf/files.sun4v projects/gvinum/sys/conf/kern.mk projects/gvinum/sys/conf/kern.post.mk projects/gvinum/sys/conf/kern.pre.mk projects/gvinum/sys/conf/kmod.mk projects/gvinum/sys/conf/newvers.sh projects/gvinum/sys/conf/options projects/gvinum/sys/conf/options.amd64 projects/gvinum/sys/conf/options.arm projects/gvinum/sys/conf/options.i386 projects/gvinum/sys/conf/options.ia64 projects/gvinum/sys/conf/options.mips projects/gvinum/sys/conf/options.pc98 projects/gvinum/sys/contrib/altq/altq/altq_subr.c projects/gvinum/sys/contrib/dev/npe/IxNpeMicrocode.dat.uu projects/gvinum/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c projects/gvinum/sys/contrib/pf/ (props changed) projects/gvinum/sys/contrib/pf/net/pf.c projects/gvinum/sys/contrib/pf/net/pf_if.c projects/gvinum/sys/contrib/pf/net/pf_ioctl.c projects/gvinum/sys/contrib/pf/net/pf_subr.c projects/gvinum/sys/contrib/rdma/rdma_addr.c projects/gvinum/sys/crypto/rc4/rc4.c projects/gvinum/sys/crypto/via/padlock.c projects/gvinum/sys/crypto/via/padlock_hash.c projects/gvinum/sys/dev/aac/aac.c projects/gvinum/sys/dev/aac/aac_debug.c projects/gvinum/sys/dev/aac/aac_pci.c projects/gvinum/sys/dev/aac/aacreg.h projects/gvinum/sys/dev/aac/aacvar.h projects/gvinum/sys/dev/acpi_support/acpi_asus.c projects/gvinum/sys/dev/acpi_support/acpi_panasonic.c projects/gvinum/sys/dev/acpica/acpi_battery.c projects/gvinum/sys/dev/acpica/acpi_cpu.c projects/gvinum/sys/dev/acpica/acpi_pcib_acpi.c projects/gvinum/sys/dev/acpica/acpi_smbat.c projects/gvinum/sys/dev/adb/adb_kbd.c projects/gvinum/sys/dev/adb/adb_mouse.c projects/gvinum/sys/dev/ae/if_ae.c projects/gvinum/sys/dev/agp/agp.c projects/gvinum/sys/dev/agp/agp_amd64.c projects/gvinum/sys/dev/agp/agp_i810.c projects/gvinum/sys/dev/agp/agp_via.c projects/gvinum/sys/dev/agp/agppriv.h projects/gvinum/sys/dev/an/if_an.c projects/gvinum/sys/dev/an/if_anreg.h projects/gvinum/sys/dev/arcmsr/arcmsr.c projects/gvinum/sys/dev/ata/ata-all.c projects/gvinum/sys/dev/ata/ata-all.h projects/gvinum/sys/dev/ata/ata-card.c projects/gvinum/sys/dev/ata/ata-cbus.c projects/gvinum/sys/dev/ata/ata-disk.c projects/gvinum/sys/dev/ata/ata-dma.c projects/gvinum/sys/dev/ata/ata-isa.c projects/gvinum/sys/dev/ata/ata-pci.c projects/gvinum/sys/dev/ata/ata-pci.h projects/gvinum/sys/dev/ata/ata-queue.c projects/gvinum/sys/dev/ata/ata-raid.c projects/gvinum/sys/dev/ata/ata-raid.h projects/gvinum/sys/dev/ata/ata-sata.c projects/gvinum/sys/dev/ata/atapi-cam.c projects/gvinum/sys/dev/ata/atapi-cd.c projects/gvinum/sys/dev/ata/atapi-fd.c projects/gvinum/sys/dev/ata/atapi-tape.c projects/gvinum/sys/dev/ata/chipsets/ata-acard.c projects/gvinum/sys/dev/ata/chipsets/ata-acerlabs.c projects/gvinum/sys/dev/ata/chipsets/ata-ahci.c projects/gvinum/sys/dev/ata/chipsets/ata-highpoint.c projects/gvinum/sys/dev/ata/chipsets/ata-intel.c projects/gvinum/sys/dev/ata/chipsets/ata-jmicron.c projects/gvinum/sys/dev/ata/chipsets/ata-marvell.c projects/gvinum/sys/dev/ata/chipsets/ata-netcell.c projects/gvinum/sys/dev/ata/chipsets/ata-nvidia.c projects/gvinum/sys/dev/ata/chipsets/ata-promise.c projects/gvinum/sys/dev/ata/chipsets/ata-serverworks.c projects/gvinum/sys/dev/ata/chipsets/ata-siliconimage.c projects/gvinum/sys/dev/ata/chipsets/ata-sis.c projects/gvinum/sys/dev/ata/chipsets/ata-via.c projects/gvinum/sys/dev/ath/ath_hal/ah.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ah.h (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ah_debug.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ah_decode.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ah_desc.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ah_devid.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ah_eeprom.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ah_eeprom_v1.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ah_eeprom_v1.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ah_eeprom_v14.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ah_eeprom_v14.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ah_eeprom_v3.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ah_eeprom_v3.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ah_internal.h (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ah_regdomain.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ah_soc.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5210/ar5210.h (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5210/ar5210_attach.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5210/ar5210_beacon.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5210/ar5210_interrupts.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5210/ar5210_keycache.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5210/ar5210_misc.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5210/ar5210_phy.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5210/ar5210_power.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5210/ar5210_recv.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5210/ar5210_reset.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5210/ar5210_xmit.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5210/ar5210desc.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5210/ar5210phy.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5210/ar5210reg.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5210/ar5k_0007.ini (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5211/ar5211.h (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5211/ar5211_beacon.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5211/ar5211_interrupts.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5211/ar5211_keycache.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5211/ar5211_misc.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5211/ar5211_phy.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5211/ar5211_power.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5211/ar5211_recv.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5211/ar5211_reset.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5211/ar5211_xmit.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5211/ar5211desc.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5211/ar5211phy.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5211/ar5211reg.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5211/boss.ini (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar2316.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar2317.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar2413.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar2425.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5111.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5112.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5212.h (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5212.ini (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5212_ani.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5212_attach.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5212_beacon.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5212_eeprom.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5212_gpio.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5212_interrupts.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5212_keycache.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5212_misc.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5212_phy.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5212_power.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5212_recv.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5212_reset.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5212_rfgain.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5212_xmit.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5212desc.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5212phy.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5212reg.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5311reg.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5212/ar5413.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5312/ar5312.h (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5312/ar5312_attach.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5312/ar5312_eeprom.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5312/ar5312_gpio.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5312/ar5312_interrupts.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5312/ar5312_misc.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5312/ar5312_power.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5312/ar5312_reset.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5312/ar5312phy.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5312/ar5312reg.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5312/ar5315_gpio.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar2133.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416.h (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416.ini (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416_ani.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416_beacon.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416_cal.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416_cal.h (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416_cal_adcdc.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416_cal_adcgain.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416_cal_iq.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416_eeprom.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416_gpio.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416_interrupts.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416_keycache.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416_misc.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416_phy.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416_power.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416_recv.c (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416_reset.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416_xmit.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416desc.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416phy.h (props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar5416reg.h (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar9160.ini (contents, props changed) projects/gvinum/sys/dev/ath/ath_hal/ar5416/ar9160_attach.c (contents, props changed) projects/gvinum/sys/dev/ath/ath_rate/amrr/amrr.c projects/gvinum/sys/dev/ath/ath_rate/onoe/onoe.c projects/gvinum/sys/dev/ath/ath_rate/sample/sample.c projects/gvinum/sys/dev/ath/if_ath.c projects/gvinum/sys/dev/ath/if_ath_pci.c projects/gvinum/sys/dev/ath/if_athioctl.h projects/gvinum/sys/dev/ath/if_athvar.h projects/gvinum/sys/dev/atkbdc/atkbdc_isa.c projects/gvinum/sys/dev/atkbdc/psm.c projects/gvinum/sys/dev/bce/if_bce.c projects/gvinum/sys/dev/bce/if_bcefw.h projects/gvinum/sys/dev/bce/if_bcereg.h projects/gvinum/sys/dev/bge/if_bge.c projects/gvinum/sys/dev/bm/if_bm.c projects/gvinum/sys/dev/cardbus/cardbus.c projects/gvinum/sys/dev/cardbus/cardbus_device.c projects/gvinum/sys/dev/ce/if_ce.c projects/gvinum/sys/dev/cfe/cfe_console.c projects/gvinum/sys/dev/cfi/cfi_core.c projects/gvinum/sys/dev/cfi/cfi_dev.c projects/gvinum/sys/dev/cfi/cfi_reg.h projects/gvinum/sys/dev/cfi/cfi_var.h projects/gvinum/sys/dev/ciss/ciss.c projects/gvinum/sys/dev/cm/smc90cx6.c projects/gvinum/sys/dev/cp/if_cp.c projects/gvinum/sys/dev/ctau/if_ct.c projects/gvinum/sys/dev/cx/if_cx.c projects/gvinum/sys/dev/cxgb/common/cxgb_ael1002.c projects/gvinum/sys/dev/cxgb/cxgb_main.c projects/gvinum/sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb.c projects/gvinum/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c projects/gvinum/sys/dev/cxgb/ulp/tom/cxgb_l2t.c projects/gvinum/sys/dev/cxgb/ulp/tom/cxgb_l2t.h projects/gvinum/sys/dev/dcons/dcons_crom.c projects/gvinum/sys/dev/dcons/dcons_os.c projects/gvinum/sys/dev/de/if_de.c projects/gvinum/sys/dev/drm/drmP.h projects/gvinum/sys/dev/drm/drm_bufs.c projects/gvinum/sys/dev/drm/drm_drv.c projects/gvinum/sys/dev/drm/drm_irq.c projects/gvinum/sys/dev/drm/drm_lock.c projects/gvinum/sys/dev/drm/drm_scatter.c projects/gvinum/sys/dev/drm/i915_dma.c projects/gvinum/sys/dev/drm/i915_drv.c projects/gvinum/sys/dev/drm/i915_drv.h projects/gvinum/sys/dev/drm/i915_irq.c projects/gvinum/sys/dev/drm/mach64_drv.c projects/gvinum/sys/dev/drm/mach64_drv.h projects/gvinum/sys/dev/drm/mach64_irq.c projects/gvinum/sys/dev/drm/mga_dma.c projects/gvinum/sys/dev/drm/mga_irq.c projects/gvinum/sys/dev/drm/r128_drv.c projects/gvinum/sys/dev/drm/r128_drv.h projects/gvinum/sys/dev/drm/r128_irq.c projects/gvinum/sys/dev/drm/radeon_cp.c projects/gvinum/sys/dev/drm/radeon_irq.c projects/gvinum/sys/dev/e1000/if_igb.c projects/gvinum/sys/dev/exca/exca.c projects/gvinum/sys/dev/firewire/firewire.c projects/gvinum/sys/dev/firewire/firewire.h projects/gvinum/sys/dev/firewire/fwohci.c projects/gvinum/sys/dev/firewire/fwohci_pci.c projects/gvinum/sys/dev/firewire/fwohcireg.h projects/gvinum/sys/dev/firewire/fwohcivar.h projects/gvinum/sys/dev/firewire/fwphyreg.h projects/gvinum/sys/dev/firewire/if_fwe.c projects/gvinum/sys/dev/firewire/if_fwip.c projects/gvinum/sys/dev/firewire/sbp.c projects/gvinum/sys/dev/fxp/if_fxp.c projects/gvinum/sys/dev/hifn/hifn7751.c projects/gvinum/sys/dev/hwpmc/hwpmc_core.c projects/gvinum/sys/dev/hwpmc/hwpmc_intel.c projects/gvinum/sys/dev/hwpmc/hwpmc_logging.c projects/gvinum/sys/dev/hwpmc/hwpmc_mod.c projects/gvinum/sys/dev/hwpmc/pmc_events.h projects/gvinum/sys/dev/ichsmb/ichsmb.c projects/gvinum/sys/dev/ichwd/ichwd.c projects/gvinum/sys/dev/if_ndis/if_ndis.c projects/gvinum/sys/dev/if_ndis/if_ndis_pccard.c projects/gvinum/sys/dev/if_ndis/if_ndis_pci.c projects/gvinum/sys/dev/if_ndis/if_ndis_usb.c projects/gvinum/sys/dev/if_ndis/if_ndisvar.h projects/gvinum/sys/dev/iicbus/ad7418.c projects/gvinum/sys/dev/iicbus/ds1672.c projects/gvinum/sys/dev/iicbus/icee.c projects/gvinum/sys/dev/iicbus/if_ic.c projects/gvinum/sys/dev/iicbus/iic.c projects/gvinum/sys/dev/iicbus/iic.h projects/gvinum/sys/dev/iicbus/iicbb.c projects/gvinum/sys/dev/iicbus/iicbus.c projects/gvinum/sys/dev/iicbus/iicsmb.c projects/gvinum/sys/dev/ipmi/ipmi_acpi.c projects/gvinum/sys/dev/ipmi/ipmi_smbios.c projects/gvinum/sys/dev/iscsi/initiator/isc_subr.c projects/gvinum/sys/dev/isp/isp.c projects/gvinum/sys/dev/iwn/if_iwn.c projects/gvinum/sys/dev/kbdmux/kbdmux.c projects/gvinum/sys/dev/lmc/if_lmc.c projects/gvinum/sys/dev/lmc/if_lmc.h projects/gvinum/sys/dev/mca/mca_bus.c projects/gvinum/sys/dev/md/md.c projects/gvinum/sys/dev/mfi/mfi.c projects/gvinum/sys/dev/mfi/mfi_pci.c projects/gvinum/sys/dev/mge/if_mge.c projects/gvinum/sys/dev/mge/if_mgevar.h projects/gvinum/sys/dev/mmc/mmc.c projects/gvinum/sys/dev/mmc/mmcreg.h projects/gvinum/sys/dev/mmc/mmcsd.c projects/gvinum/sys/dev/mpt/mpt.c projects/gvinum/sys/dev/mpt/mpt.h projects/gvinum/sys/dev/mpt/mpt_cam.c projects/gvinum/sys/dev/mpt/mpt_raid.c projects/gvinum/sys/dev/mpt/mpt_user.c projects/gvinum/sys/dev/msk/if_msk.c projects/gvinum/sys/dev/msk/if_mskreg.h projects/gvinum/sys/dev/mxge/eth_z8e.h projects/gvinum/sys/dev/mxge/ethp_z8e.h projects/gvinum/sys/dev/mxge/if_mxge.c projects/gvinum/sys/dev/mxge/if_mxge_var.h projects/gvinum/sys/dev/mxge/mxge_mcp.h projects/gvinum/sys/dev/mxge/rss_eth_z8e.h projects/gvinum/sys/dev/mxge/rss_ethp_z8e.h projects/gvinum/sys/dev/my/if_my.c projects/gvinum/sys/dev/nfe/if_nfe.c projects/gvinum/sys/dev/nsp/nsp.c projects/gvinum/sys/dev/nve/if_nve.c projects/gvinum/sys/dev/ofw/ofw_bus_subr.c projects/gvinum/sys/dev/ofw/ofw_bus_subr.h projects/gvinum/sys/dev/ofw/openfirm.c projects/gvinum/sys/dev/ofw/openfirm.h projects/gvinum/sys/dev/ofw/openfirmio.c projects/gvinum/sys/dev/ofw/openpromio.c projects/gvinum/sys/dev/pccard/card_if.m projects/gvinum/sys/dev/pccard/pccard.c projects/gvinum/sys/dev/pccard/pccard_cis.c projects/gvinum/sys/dev/pccard/pccardvar.h projects/gvinum/sys/dev/pccard/pccardvarp.h projects/gvinum/sys/dev/pccbb/pccbb.c projects/gvinum/sys/dev/pccbb/pccbb_pci.c projects/gvinum/sys/dev/pccbb/pccbbvar.h projects/gvinum/sys/dev/pci/pci.c projects/gvinum/sys/dev/pci/pci_private.h projects/gvinum/sys/dev/pci/pci_user.c projects/gvinum/sys/dev/pci/pcireg.h projects/gvinum/sys/dev/pcn/if_pcn.c projects/gvinum/sys/dev/ppbus/if_plip.c projects/gvinum/sys/dev/ppbus/immio.c projects/gvinum/sys/dev/ppbus/lpbb.c projects/gvinum/sys/dev/ppbus/lpt.c projects/gvinum/sys/dev/ppbus/pcfclock.c projects/gvinum/sys/dev/ppbus/ppb_1284.c projects/gvinum/sys/dev/ppbus/ppb_base.c projects/gvinum/sys/dev/ppbus/ppb_msq.c projects/gvinum/sys/dev/ppbus/ppbconf.c projects/gvinum/sys/dev/ppbus/ppbconf.h projects/gvinum/sys/dev/ppbus/ppi.c projects/gvinum/sys/dev/ppbus/pps.c projects/gvinum/sys/dev/ppbus/vpo.c projects/gvinum/sys/dev/ppbus/vpoio.c projects/gvinum/sys/dev/ppc/ppc.c projects/gvinum/sys/dev/ppc/ppc_acpi.c projects/gvinum/sys/dev/ppc/ppc_isa.c projects/gvinum/sys/dev/ppc/ppc_pci.c projects/gvinum/sys/dev/ppc/ppc_puc.c projects/gvinum/sys/dev/ppc/ppcreg.h projects/gvinum/sys/dev/ppc/ppcvar.h projects/gvinum/sys/dev/puc/pucdata.c projects/gvinum/sys/dev/re/if_re.c projects/gvinum/sys/dev/safe/safe.c projects/gvinum/sys/dev/scc/scc_if.m projects/gvinum/sys/dev/sdhci/sdhci.c projects/gvinum/sys/dev/si/si.c projects/gvinum/sys/dev/sis/if_sis.c projects/gvinum/sys/dev/smbus/smb.c projects/gvinum/sys/dev/snp/snp.c projects/gvinum/sys/dev/sound/pci/cmi.c projects/gvinum/sys/dev/sound/pci/ds1.c projects/gvinum/sys/dev/sound/pci/envy24.c projects/gvinum/sys/dev/sound/pci/envy24ht.c projects/gvinum/sys/dev/sound/pci/hda/hdac.c projects/gvinum/sys/dev/sound/pci/spicds.c projects/gvinum/sys/dev/sound/pcm/dsp.c projects/gvinum/sys/dev/sound/pcm/mixer.c projects/gvinum/sys/dev/sound/pcm/sound.c projects/gvinum/sys/dev/sound/pcm/sound.h projects/gvinum/sys/dev/speaker/spkr.c projects/gvinum/sys/dev/stg/tmc18c30.c projects/gvinum/sys/dev/streams/streams.c projects/gvinum/sys/dev/syscons/scterm.c projects/gvinum/sys/dev/syscons/syscons.c projects/gvinum/sys/dev/syscons/syscons.h projects/gvinum/sys/dev/tl/if_tl.c projects/gvinum/sys/dev/tsec/if_tsec.c projects/gvinum/sys/dev/tsec/if_tsec.h projects/gvinum/sys/dev/tsec/if_tsec_ocp.c projects/gvinum/sys/dev/tsec/if_tsecreg.h projects/gvinum/sys/dev/tx/if_tx.c projects/gvinum/sys/dev/txp/3c990img.h projects/gvinum/sys/dev/txp/if_txp.c projects/gvinum/sys/dev/txp/if_txpreg.h projects/gvinum/sys/dev/uart/uart_bus_pci.c projects/gvinum/sys/dev/uart/uart_cpu_mv.c projects/gvinum/sys/dev/uart/uart_tty.c projects/gvinum/sys/dev/vr/if_vr.c projects/gvinum/sys/dev/wpi/if_wpi.c projects/gvinum/sys/dev/xen/blkback/blkback.c projects/gvinum/sys/dev/xen/blkfront/blkfront.c projects/gvinum/sys/dev/xen/console/console.c projects/gvinum/sys/dev/xen/console/xencons_ring.c projects/gvinum/sys/dev/xen/evtchn/evtchn_dev.c projects/gvinum/sys/dev/xen/netback/netback.c projects/gvinum/sys/dev/xen/netfront/netfront.c projects/gvinum/sys/fs/cd9660/cd9660_lookup.c projects/gvinum/sys/fs/cd9660/cd9660_node.c projects/gvinum/sys/fs/cd9660/cd9660_node.h projects/gvinum/sys/fs/cd9660/cd9660_rrip.c projects/gvinum/sys/fs/cd9660/cd9660_vfsops.c projects/gvinum/sys/fs/cd9660/cd9660_vnops.c projects/gvinum/sys/fs/coda/coda_vfsops.c projects/gvinum/sys/fs/coda/coda_vnops.c projects/gvinum/sys/fs/deadfs/dead_vnops.c projects/gvinum/sys/fs/devfs/devfs_devs.c projects/gvinum/sys/fs/devfs/devfs_vnops.c projects/gvinum/sys/fs/fifofs/fifo_vnops.c projects/gvinum/sys/fs/hpfs/hpfs_vfsops.c projects/gvinum/sys/fs/hpfs/hpfs_vnops.c projects/gvinum/sys/fs/msdosfs/denode.h projects/gvinum/sys/fs/msdosfs/msdosfs_conv.c projects/gvinum/sys/fs/msdosfs/msdosfs_vfsops.c projects/gvinum/sys/fs/msdosfs/msdosfs_vnops.c projects/gvinum/sys/fs/msdosfs/msdosfsmount.h projects/gvinum/sys/fs/ntfs/ntfs_vnops.c projects/gvinum/sys/fs/nullfs/null_vnops.c projects/gvinum/sys/fs/nwfs/nwfs_subr.c projects/gvinum/sys/fs/nwfs/nwfs_vnops.c projects/gvinum/sys/fs/procfs/procfs.c projects/gvinum/sys/fs/procfs/procfs_dbregs.c projects/gvinum/sys/fs/procfs/procfs_fpregs.c projects/gvinum/sys/fs/procfs/procfs_map.c projects/gvinum/sys/fs/procfs/procfs_regs.c projects/gvinum/sys/fs/pseudofs/pseudofs_vncache.c projects/gvinum/sys/fs/pseudofs/pseudofs_vnops.c projects/gvinum/sys/fs/smbfs/smbfs_vnops.c projects/gvinum/sys/fs/tmpfs/tmpfs.h projects/gvinum/sys/fs/tmpfs/tmpfs_subr.c projects/gvinum/sys/fs/tmpfs/tmpfs_vnops.c projects/gvinum/sys/fs/udf/ecma167-udf.h projects/gvinum/sys/fs/udf/udf.h projects/gvinum/sys/fs/udf/udf_vfsops.c projects/gvinum/sys/fs/udf/udf_vnops.c projects/gvinum/sys/geom/geom.h projects/gvinum/sys/geom/geom_dev.c projects/gvinum/sys/geom/geom_subr.c projects/gvinum/sys/geom/geom_vfs.c projects/gvinum/sys/geom/label/g_label_msdosfs.c projects/gvinum/sys/geom/part/g_part.c projects/gvinum/sys/geom/part/g_part.h projects/gvinum/sys/geom/part/g_part_apm.c projects/gvinum/sys/geom/part/g_part_bsd.c projects/gvinum/sys/geom/part/g_part_gpt.c projects/gvinum/sys/geom/part/g_part_if.m projects/gvinum/sys/geom/part/g_part_mbr.c projects/gvinum/sys/geom/part/g_part_pc98.c projects/gvinum/sys/geom/part/g_part_vtoc8.c projects/gvinum/sys/gnu/fs/ext2fs/ext2_bitops.h projects/gvinum/sys/gnu/fs/ext2fs/ext2_fs.h projects/gvinum/sys/gnu/fs/ext2fs/ext2_fs_sb.h projects/gvinum/sys/gnu/fs/ext2fs/ext2_inode.c projects/gvinum/sys/gnu/fs/ext2fs/ext2_linux_ialloc.c projects/gvinum/sys/gnu/fs/ext2fs/ext2_vfsops.c projects/gvinum/sys/gnu/fs/ext2fs/ext2_vnops.c projects/gvinum/sys/gnu/fs/reiserfs/reiserfs_vnops.c projects/gvinum/sys/gnu/fs/xfs/FreeBSD/xfs_compat.h projects/gvinum/sys/gnu/fs/xfs/FreeBSD/xfs_vnops.c projects/gvinum/sys/i386/acpica/acpi_wakeup.c projects/gvinum/sys/i386/conf/DEFAULTS projects/gvinum/sys/i386/conf/GENERIC projects/gvinum/sys/i386/conf/NOTES projects/gvinum/sys/i386/conf/XBOX projects/gvinum/sys/i386/conf/XEN projects/gvinum/sys/i386/cpufreq/est.c projects/gvinum/sys/i386/cpufreq/smist.c projects/gvinum/sys/i386/i386/busdma_machdep.c projects/gvinum/sys/i386/i386/exception.s projects/gvinum/sys/i386/i386/genassym.c projects/gvinum/sys/i386/i386/i686_mem.c projects/gvinum/sys/i386/i386/identcpu.c projects/gvinum/sys/i386/i386/initcpu.c projects/gvinum/sys/i386/i386/io_apic.c projects/gvinum/sys/i386/i386/local_apic.c projects/gvinum/sys/i386/i386/locore.s projects/gvinum/sys/i386/i386/machdep.c projects/gvinum/sys/i386/i386/mp_machdep.c projects/gvinum/sys/i386/i386/msi.c projects/gvinum/sys/i386/i386/pmap.c projects/gvinum/sys/i386/i386/swtch.s projects/gvinum/sys/i386/i386/vm86.c projects/gvinum/sys/i386/i386/vm_machdep.c projects/gvinum/sys/i386/ibcs2/ibcs2_misc.c projects/gvinum/sys/i386/ibcs2/ibcs2_sysi86.c projects/gvinum/sys/i386/include/apicreg.h projects/gvinum/sys/i386/include/apicvar.h projects/gvinum/sys/i386/include/cpufunc.h projects/gvinum/sys/i386/include/elf.h projects/gvinum/sys/i386/include/intr_machdep.h projects/gvinum/sys/i386/include/specialreg.h projects/gvinum/sys/i386/include/xen/xenfunc.h projects/gvinum/sys/i386/isa/npx.c projects/gvinum/sys/i386/linux/linux_locore.s projects/gvinum/sys/i386/linux/linux_machdep.c projects/gvinum/sys/i386/linux/linux_sysvec.c projects/gvinum/sys/i386/svr4/svr4_locore.s projects/gvinum/sys/i386/xen/clock.c projects/gvinum/sys/i386/xen/mp_machdep.c projects/gvinum/sys/i386/xen/mptable.c projects/gvinum/sys/i386/xen/pmap.c projects/gvinum/sys/i386/xen/xen_machdep.c projects/gvinum/sys/ia64/conf/GENERIC projects/gvinum/sys/ia64/conf/NOTES projects/gvinum/sys/ia64/ia64/busdma_machdep.c projects/gvinum/sys/ia64/ia64/mca.c projects/gvinum/sys/ia64/ia64/mp_machdep.c projects/gvinum/sys/ia64/ia64/pmap.c projects/gvinum/sys/ia64/include/elf.h projects/gvinum/sys/ia64/include/mca.h projects/gvinum/sys/kern/imgact_elf.c projects/gvinum/sys/kern/kern_clock.c projects/gvinum/sys/kern/kern_condvar.c projects/gvinum/sys/kern/kern_cons.c projects/gvinum/sys/kern/kern_cpu.c projects/gvinum/sys/kern/kern_descrip.c projects/gvinum/sys/kern/kern_exec.c projects/gvinum/sys/kern/kern_exit.c projects/gvinum/sys/kern/kern_jail.c projects/gvinum/sys/kern/kern_linker.c projects/gvinum/sys/kern/kern_lock.c projects/gvinum/sys/kern/kern_malloc.c projects/gvinum/sys/kern/kern_mbuf.c projects/gvinum/sys/kern/kern_mib.c projects/gvinum/sys/kern/kern_osd.c projects/gvinum/sys/kern/kern_poll.c projects/gvinum/sys/kern/kern_priv.c projects/gvinum/sys/kern/kern_proc.c projects/gvinum/sys/kern/kern_prot.c projects/gvinum/sys/kern/kern_rwlock.c projects/gvinum/sys/kern/kern_sig.c projects/gvinum/sys/kern/kern_synch.c projects/gvinum/sys/kern/kern_sysctl.c projects/gvinum/sys/kern/kern_thr.c projects/gvinum/sys/kern/kern_time.c projects/gvinum/sys/kern/kern_timeout.c projects/gvinum/sys/kern/kern_uuid.c projects/gvinum/sys/kern/kern_xxx.c projects/gvinum/sys/kern/link_elf.c projects/gvinum/sys/kern/link_elf_obj.c projects/gvinum/sys/kern/sched_4bsd.c projects/gvinum/sys/kern/sched_ule.c projects/gvinum/sys/kern/subr_autoconf.c projects/gvinum/sys/kern/subr_bus.c projects/gvinum/sys/kern/subr_clist.c projects/gvinum/sys/kern/subr_devstat.c projects/gvinum/sys/kern/subr_disk.c projects/gvinum/sys/kern/subr_firmware.c projects/gvinum/sys/kern/subr_kobj.c projects/gvinum/sys/kern/subr_param.c projects/gvinum/sys/kern/subr_pcpu.c projects/gvinum/sys/kern/subr_prf.c projects/gvinum/sys/kern/subr_prof.c projects/gvinum/sys/kern/subr_rman.c projects/gvinum/sys/kern/subr_rtc.c projects/gvinum/sys/kern/subr_smp.c projects/gvinum/sys/kern/subr_taskqueue.c projects/gvinum/sys/kern/subr_trap.c projects/gvinum/sys/kern/subr_witness.c projects/gvinum/sys/kern/sys_generic.c projects/gvinum/sys/kern/sys_process.c projects/gvinum/sys/kern/sysv_sem.c projects/gvinum/sys/kern/sysv_shm.c projects/gvinum/sys/kern/tty.c projects/gvinum/sys/kern/tty_info.c projects/gvinum/sys/kern/tty_inq.c projects/gvinum/sys/kern/tty_outq.c projects/gvinum/sys/kern/tty_pts.c projects/gvinum/sys/kern/tty_pty.c projects/gvinum/sys/kern/tty_ttydisc.c projects/gvinum/sys/kern/uipc_cow.c projects/gvinum/sys/kern/uipc_debug.c projects/gvinum/sys/kern/uipc_domain.c projects/gvinum/sys/kern/uipc_mbuf.c projects/gvinum/sys/kern/uipc_socket.c projects/gvinum/sys/kern/uipc_usrreq.c projects/gvinum/sys/kern/vfs_aio.c projects/gvinum/sys/kern/vfs_bio.c projects/gvinum/sys/kern/vfs_cache.c projects/gvinum/sys/kern/vfs_default.c projects/gvinum/sys/kern/vfs_export.c projects/gvinum/sys/kern/vfs_extattr.c projects/gvinum/sys/kern/vfs_init.c projects/gvinum/sys/kern/vfs_lookup.c projects/gvinum/sys/kern/vfs_mount.c projects/gvinum/sys/kern/vfs_subr.c projects/gvinum/sys/kern/vfs_syscalls.c projects/gvinum/sys/kern/vfs_vnops.c projects/gvinum/sys/kern/vnode_if.src projects/gvinum/sys/legacy/dev/usb/ (props changed) projects/gvinum/sys/libkern/crc32.c projects/gvinum/sys/libkern/strtouq.c projects/gvinum/sys/mips/adm5120/adm5120_machdep.c projects/gvinum/sys/mips/conf/DEFAULTS projects/gvinum/sys/mips/idt/idtpci.c projects/gvinum/sys/mips/include/elf.h projects/gvinum/sys/mips/include/fpu.h projects/gvinum/sys/mips/include/frame.h projects/gvinum/sys/mips/include/pmap.h projects/gvinum/sys/mips/malta/gt_pci.c projects/gvinum/sys/mips/mips/busdma_machdep.c projects/gvinum/sys/mips/mips/cpu.c projects/gvinum/sys/mips/mips/elf_machdep.c projects/gvinum/sys/mips/mips/in_cksum.c projects/gvinum/sys/mips/mips/machdep.c projects/gvinum/sys/mips/mips/nexus.c projects/gvinum/sys/mips/mips/pmap.c projects/gvinum/sys/modules/Makefile projects/gvinum/sys/modules/acpi/acpi/Makefile projects/gvinum/sys/modules/agp/Makefile projects/gvinum/sys/modules/aio/Makefile projects/gvinum/sys/modules/ata/atausb/Makefile projects/gvinum/sys/modules/ath/Makefile projects/gvinum/sys/modules/cxgb/Makefile projects/gvinum/sys/modules/dtrace/dtrace/Makefile projects/gvinum/sys/modules/geom/geom_part/Makefile projects/gvinum/sys/modules/iwnfw/Makefile projects/gvinum/sys/modules/libalias/libalias/Makefile projects/gvinum/sys/modules/linux/Makefile projects/gvinum/sys/modules/ndis/Makefile projects/gvinum/sys/modules/netgraph/Makefile projects/gvinum/sys/modules/netgraph/bluetooth/ubt/Makefile projects/gvinum/sys/modules/netgraph/bluetooth/ubtbcmfw/Makefile projects/gvinum/sys/modules/sound/driver/Makefile projects/gvinum/sys/modules/sound/driver/uaudio/Makefile projects/gvinum/sys/modules/svr4/Makefile projects/gvinum/sys/net/bpf.c projects/gvinum/sys/net/bridgestp.c projects/gvinum/sys/net/ieee8023ad_lacp.c projects/gvinum/sys/net/if.c projects/gvinum/sys/net/if.h projects/gvinum/sys/net/if_arcsubr.c projects/gvinum/sys/net/if_atmsubr.c projects/gvinum/sys/net/if_bridge.c projects/gvinum/sys/net/if_ef.c projects/gvinum/sys/net/if_ethersubr.c projects/gvinum/sys/net/if_fddisubr.c projects/gvinum/sys/net/if_fwsubr.c projects/gvinum/sys/net/if_gif.c projects/gvinum/sys/net/if_gif.h projects/gvinum/sys/net/if_iso88025subr.c projects/gvinum/sys/net/if_lagg.c projects/gvinum/sys/net/if_loop.c projects/gvinum/sys/net/if_media.h projects/gvinum/sys/net/if_mib.c projects/gvinum/sys/net/if_spppsubr.c projects/gvinum/sys/net/if_tun.c projects/gvinum/sys/net/if_var.h projects/gvinum/sys/net/if_vlan.c projects/gvinum/sys/net/pfil.c projects/gvinum/sys/net/pfil.h projects/gvinum/sys/net/radix.c projects/gvinum/sys/net/radix_mpath.c projects/gvinum/sys/net/raw_cb.c projects/gvinum/sys/net/raw_cb.h projects/gvinum/sys/net/raw_usrreq.c projects/gvinum/sys/net/route.c projects/gvinum/sys/net/route.h projects/gvinum/sys/net/rtsock.c projects/gvinum/sys/net/vnet.h projects/gvinum/sys/net80211/_ieee80211.h projects/gvinum/sys/net80211/ieee80211.c projects/gvinum/sys/net80211/ieee80211.h projects/gvinum/sys/net80211/ieee80211_acl.c projects/gvinum/sys/net80211/ieee80211_adhoc.c projects/gvinum/sys/net80211/ieee80211_crypto.h projects/gvinum/sys/net80211/ieee80211_crypto_ccmp.c projects/gvinum/sys/net80211/ieee80211_crypto_tkip.c projects/gvinum/sys/net80211/ieee80211_crypto_wep.c projects/gvinum/sys/net80211/ieee80211_ddb.c projects/gvinum/sys/net80211/ieee80211_dfs.h projects/gvinum/sys/net80211/ieee80211_freebsd.c projects/gvinum/sys/net80211/ieee80211_freebsd.h projects/gvinum/sys/net80211/ieee80211_hostap.c projects/gvinum/sys/net80211/ieee80211_ht.h projects/gvinum/sys/net80211/ieee80211_input.c projects/gvinum/sys/net80211/ieee80211_input.h projects/gvinum/sys/net80211/ieee80211_ioctl.c projects/gvinum/sys/net80211/ieee80211_ioctl.h projects/gvinum/sys/net80211/ieee80211_node.c projects/gvinum/sys/net80211/ieee80211_node.h projects/gvinum/sys/net80211/ieee80211_output.c projects/gvinum/sys/net80211/ieee80211_phy.c projects/gvinum/sys/net80211/ieee80211_power.c projects/gvinum/sys/net80211/ieee80211_proto.c projects/gvinum/sys/net80211/ieee80211_proto.h projects/gvinum/sys/net80211/ieee80211_regdomain.c projects/gvinum/sys/net80211/ieee80211_regdomain.h projects/gvinum/sys/net80211/ieee80211_scan.c projects/gvinum/sys/net80211/ieee80211_scan.h projects/gvinum/sys/net80211/ieee80211_scan_sta.c projects/gvinum/sys/net80211/ieee80211_sta.c projects/gvinum/sys/net80211/ieee80211_var.h projects/gvinum/sys/net80211/ieee80211_wds.c projects/gvinum/sys/netatalk/ddp_usrreq.c projects/gvinum/sys/netgraph/atm/ng_atm.c projects/gvinum/sys/netgraph/atm/ng_ccatm.h projects/gvinum/sys/netgraph/atm/uni/ng_uni_cust.h projects/gvinum/sys/netgraph/bluetooth/hci/ng_hci_main.c projects/gvinum/sys/netgraph/bluetooth/l2cap/ng_l2cap_llpi.c projects/gvinum/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap_raw.c projects/gvinum/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c projects/gvinum/sys/netgraph/netflow/netflow.c projects/gvinum/sys/netgraph/netgraph.h projects/gvinum/sys/netgraph/ng_base.c projects/gvinum/sys/netgraph/ng_bridge.c projects/gvinum/sys/netgraph/ng_deflate.c projects/gvinum/sys/netgraph/ng_eiface.c projects/gvinum/sys/netgraph/ng_ether.c projects/gvinum/sys/netgraph/ng_gif.c projects/gvinum/sys/netgraph/ng_iface.c projects/gvinum/sys/netgraph/ng_iface.h projects/gvinum/sys/netgraph/ng_ipfw.c projects/gvinum/sys/netgraph/ng_l2tp.c projects/gvinum/sys/netgraph/ng_mppc.c projects/gvinum/sys/netgraph/ng_ppp.c projects/gvinum/sys/netgraph/ng_pppoe.c projects/gvinum/sys/netgraph/ng_pppoe.h projects/gvinum/sys/netgraph/ng_pred1.c projects/gvinum/sys/netgraph/ng_tty.c projects/gvinum/sys/netgraph/ng_vjc.c projects/gvinum/sys/netinet/icmp6.h projects/gvinum/sys/netinet/icmp_var.h projects/gvinum/sys/netinet/if_atm.c projects/gvinum/sys/netinet/if_ether.c projects/gvinum/sys/netinet/if_ether.h projects/gvinum/sys/netinet/igmp.c projects/gvinum/sys/netinet/in.c projects/gvinum/sys/netinet/in.h projects/gvinum/sys/netinet/in_mcast.c projects/gvinum/sys/netinet/in_pcb.c projects/gvinum/sys/netinet/in_pcb.h projects/gvinum/sys/netinet/in_proto.c projects/gvinum/sys/netinet/in_rmx.c projects/gvinum/sys/netinet/in_systm.h projects/gvinum/sys/netinet/in_var.h projects/gvinum/sys/netinet/ip.h projects/gvinum/sys/netinet/ip6.h projects/gvinum/sys/netinet/ip_carp.c projects/gvinum/sys/netinet/ip_divert.c projects/gvinum/sys/netinet/ip_dummynet.c projects/gvinum/sys/netinet/ip_fastfwd.c projects/gvinum/sys/netinet/ip_fw.h projects/gvinum/sys/netinet/ip_fw2.c projects/gvinum/sys/netinet/ip_fw_nat.c projects/gvinum/sys/netinet/ip_fw_pfil.c projects/gvinum/sys/netinet/ip_icmp.c projects/gvinum/sys/netinet/ip_icmp.h projects/gvinum/sys/netinet/ip_input.c projects/gvinum/sys/netinet/ip_ipsec.c projects/gvinum/sys/netinet/ip_options.c projects/gvinum/sys/netinet/ip_output.c projects/gvinum/sys/netinet/ip_var.h projects/gvinum/sys/netinet/libalias/alias.c projects/gvinum/sys/netinet/libalias/alias_db.c projects/gvinum/sys/netinet/libalias/alias_ftp.c projects/gvinum/sys/netinet/libalias/alias_irc.c projects/gvinum/sys/netinet/libalias/alias_local.h projects/gvinum/sys/netinet/libalias/alias_nbt.c projects/gvinum/sys/netinet/raw_ip.c projects/gvinum/sys/netinet/sctp_auth.c projects/gvinum/sys/netinet/sctp_constants.h projects/gvinum/sys/netinet/sctp_crc32.c projects/gvinum/sys/netinet/sctp_crc32.h projects/gvinum/sys/netinet/sctp_header.h projects/gvinum/sys/netinet/sctp_input.c projects/gvinum/sys/netinet/sctp_os_bsd.h projects/gvinum/sys/netinet/sctp_output.c projects/gvinum/sys/netinet/sctp_output.h projects/gvinum/sys/netinet/sctp_pcb.c projects/gvinum/sys/netinet/sctp_pcb.h projects/gvinum/sys/netinet/sctp_structs.h projects/gvinum/sys/netinet/sctp_sysctl.c projects/gvinum/sys/netinet/sctp_uio.h projects/gvinum/sys/netinet/sctp_usrreq.c projects/gvinum/sys/netinet/sctputil.c projects/gvinum/sys/netinet/sctputil.h projects/gvinum/sys/netinet/tcp_debug.h projects/gvinum/sys/netinet/tcp_hostcache.c projects/gvinum/sys/netinet/tcp_input.c projects/gvinum/sys/netinet/tcp_sack.c projects/gvinum/sys/netinet/tcp_subr.c projects/gvinum/sys/netinet/tcp_syncache.c projects/gvinum/sys/netinet/tcp_syncache.h projects/gvinum/sys/netinet/tcp_timer.c projects/gvinum/sys/netinet/tcp_timewait.c projects/gvinum/sys/netinet/tcp_usrreq.c projects/gvinum/sys/netinet/tcp_var.h projects/gvinum/sys/netinet/udp_usrreq.c projects/gvinum/sys/netinet/udp_var.h projects/gvinum/sys/netinet/vinet.h projects/gvinum/sys/netinet6/frag6.c projects/gvinum/sys/netinet6/icmp6.c projects/gvinum/sys/netinet6/in6.c projects/gvinum/sys/netinet6/in6_gif.c projects/gvinum/sys/netinet6/in6_ifattach.c projects/gvinum/sys/netinet6/in6_pcb.c projects/gvinum/sys/netinet6/in6_proto.c projects/gvinum/sys/netinet6/in6_rmx.c projects/gvinum/sys/netinet6/in6_src.c projects/gvinum/sys/netinet6/in6_var.h projects/gvinum/sys/netinet6/ip6_forward.c projects/gvinum/sys/netinet6/ip6_input.c projects/gvinum/sys/netinet6/ip6_ipsec.c projects/gvinum/sys/netinet6/ip6_mroute.c projects/gvinum/sys/netinet6/ip6_output.c projects/gvinum/sys/netinet6/ip6_var.h projects/gvinum/sys/netinet6/ip6protosw.h projects/gvinum/sys/netinet6/nd6.c projects/gvinum/sys/netinet6/nd6.h projects/gvinum/sys/netinet6/nd6_nbr.c projects/gvinum/sys/netinet6/nd6_rtr.c projects/gvinum/sys/netinet6/raw_ip6.c projects/gvinum/sys/netinet6/raw_ip6.h projects/gvinum/sys/netinet6/route6.c projects/gvinum/sys/netinet6/scope6.c projects/gvinum/sys/netinet6/sctp6_usrreq.c projects/gvinum/sys/netinet6/tcp6_var.h projects/gvinum/sys/netinet6/udp6_usrreq.c projects/gvinum/sys/netinet6/vinet6.h projects/gvinum/sys/netipsec/ipip_var.h projects/gvinum/sys/netipsec/ipsec.c projects/gvinum/sys/netipsec/ipsec.h projects/gvinum/sys/netipsec/ipsec6.h projects/gvinum/sys/netipsec/ipsec_mbuf.c projects/gvinum/sys/netipsec/ipsec_output.c projects/gvinum/sys/netipsec/key.c projects/gvinum/sys/netipsec/key_debug.c projects/gvinum/sys/netipsec/keysock.c projects/gvinum/sys/netipsec/vipsec.h projects/gvinum/sys/netipsec/xform_ipip.c projects/gvinum/sys/netipx/ipx_usrreq.c projects/gvinum/sys/nfs4client/nfs4_subs.c projects/gvinum/sys/nfsclient/bootp_subr.c projects/gvinum/sys/nfsclient/nfs_diskless.c projects/gvinum/sys/nfsclient/nfs_vfsops.c projects/gvinum/sys/nfsclient/nfs_vnops.c projects/gvinum/sys/nfsclient/nfsnode.h projects/gvinum/sys/nfsserver/nfs_fha.c projects/gvinum/sys/nfsserver/nfs_serv.c projects/gvinum/sys/nfsserver/nfs_srvsubs.c projects/gvinum/sys/nfsserver/nfs_syscalls.c projects/gvinum/sys/opencrypto/cryptosoft.c projects/gvinum/sys/pc98/cbus/scterm-sck.c projects/gvinum/sys/pc98/conf/DEFAULTS projects/gvinum/sys/pc98/conf/GENERIC projects/gvinum/sys/pc98/conf/NOTES projects/gvinum/sys/pci/if_rl.c projects/gvinum/sys/pci/if_rlreg.h projects/gvinum/sys/pci/viapm.c projects/gvinum/sys/powerpc/aim/locore.S projects/gvinum/sys/powerpc/aim/machdep.c projects/gvinum/sys/powerpc/aim/ofw_machdep.c projects/gvinum/sys/powerpc/aim/swtch.S projects/gvinum/sys/powerpc/aim/trap.c projects/gvinum/sys/powerpc/aim/trap_subr.S projects/gvinum/sys/powerpc/booke/interrupt.c projects/gvinum/sys/powerpc/booke/locore.S projects/gvinum/sys/powerpc/booke/machdep.c projects/gvinum/sys/powerpc/booke/pmap.c projects/gvinum/sys/powerpc/booke/swtch.S projects/gvinum/sys/powerpc/booke/trap.c projects/gvinum/sys/powerpc/booke/trap_subr.S projects/gvinum/sys/powerpc/conf/GENERIC projects/gvinum/sys/powerpc/conf/MPC85XX projects/gvinum/sys/powerpc/conf/NOTES projects/gvinum/sys/powerpc/include/elf.h projects/gvinum/sys/powerpc/include/frame.h projects/gvinum/sys/powerpc/include/ofw_machdep.h projects/gvinum/sys/powerpc/include/param.h projects/gvinum/sys/powerpc/include/pcb.h projects/gvinum/sys/powerpc/include/pcpu.h projects/gvinum/sys/powerpc/include/pmap.h projects/gvinum/sys/powerpc/include/pte.h projects/gvinum/sys/powerpc/include/spr.h projects/gvinum/sys/powerpc/include/tlb.h projects/gvinum/sys/powerpc/mpc85xx/lbc.c projects/gvinum/sys/powerpc/mpc85xx/lbc.h projects/gvinum/sys/powerpc/mpc85xx/mpc85xx.c projects/gvinum/sys/powerpc/mpc85xx/nexus.c projects/gvinum/sys/powerpc/mpc85xx/ocpbus.c projects/gvinum/sys/powerpc/ofw/ofw_pcib_pci.c projects/gvinum/sys/powerpc/ofw/ofw_pcibus.c projects/gvinum/sys/powerpc/ofw/ofw_syscons.c projects/gvinum/sys/powerpc/ofw/ofw_syscons.h projects/gvinum/sys/powerpc/powermac/ata_macio.c projects/gvinum/sys/powerpc/powermac/cuda.c projects/gvinum/sys/powerpc/powermac/cudavar.h projects/gvinum/sys/powerpc/powermac/grackle.c projects/gvinum/sys/powerpc/powermac/gracklevar.h projects/gvinum/sys/powerpc/powermac/macgpio.c projects/gvinum/sys/powerpc/powermac/macio.c projects/gvinum/sys/powerpc/powermac/uninorth.c projects/gvinum/sys/powerpc/powermac/uninorthvar.h projects/gvinum/sys/powerpc/powerpc/genassym.c projects/gvinum/sys/powerpc/powerpc/intr_machdep.c projects/gvinum/sys/powerpc/powerpc/pmap_dispatch.c projects/gvinum/sys/rpc/clnt_rc.c projects/gvinum/sys/security/audit/audit.h projects/gvinum/sys/security/audit/audit_bsm.c projects/gvinum/sys/security/audit/audit_bsm_klib.c projects/gvinum/sys/security/audit/audit_bsm_token.c projects/gvinum/sys/security/audit/audit_pipe.c projects/gvinum/sys/security/audit/audit_private.h projects/gvinum/sys/security/mac/mac_audit.c projects/gvinum/sys/security/mac/mac_framework.c projects/gvinum/sys/security/mac/mac_inet6.c projects/gvinum/sys/security/mac/mac_internal.h projects/gvinum/sys/security/mac/mac_policy.h projects/gvinum/sys/security/mac/mac_priv.c projects/gvinum/sys/security/mac/mac_process.c projects/gvinum/sys/security/mac_biba/mac_biba.c projects/gvinum/sys/security/mac_bsdextended/mac_bsdextended.c projects/gvinum/sys/security/mac_ifoff/mac_ifoff.c projects/gvinum/sys/security/mac_lomac/mac_lomac.c projects/gvinum/sys/security/mac_mls/mac_mls.c projects/gvinum/sys/security/mac_none/mac_none.c projects/gvinum/sys/security/mac_partition/mac_partition.c projects/gvinum/sys/security/mac_portacl/mac_portacl.c projects/gvinum/sys/security/mac_seeotheruids/mac_seeotheruids.c projects/gvinum/sys/security/mac_stub/mac_stub.c projects/gvinum/sys/security/mac_test/mac_test.c projects/gvinum/sys/sparc64/conf/DEFAULTS projects/gvinum/sys/sparc64/conf/GENERIC projects/gvinum/sys/sparc64/ebus/ebus.c projects/gvinum/sys/sparc64/include/bus_private.h projects/gvinum/sys/sparc64/include/elf.h projects/gvinum/sys/sparc64/include/ofw_machdep.h projects/gvinum/sys/sparc64/include/tlb.h projects/gvinum/sys/sparc64/include/vmparam.h projects/gvinum/sys/sparc64/isa/ofw_isa.c projects/gvinum/sys/sparc64/pci/apb.c projects/gvinum/sys/sparc64/pci/ofw_pci.h projects/gvinum/sys/sparc64/pci/ofw_pcib.c projects/gvinum/sys/sparc64/pci/ofw_pcib_subr.c projects/gvinum/sys/sparc64/pci/ofw_pcibus.c projects/gvinum/sys/sparc64/pci/psycho.c projects/gvinum/sys/sparc64/pci/schizo.c projects/gvinum/sys/sparc64/sbus/sbus.c projects/gvinum/sys/sparc64/sparc64/iommu.c projects/gvinum/sys/sparc64/sparc64/machdep.c projects/gvinum/sys/sparc64/sparc64/mp_machdep.c projects/gvinum/sys/sparc64/sparc64/ofw_machdep.c projects/gvinum/sys/sparc64/sparc64/pmap.c projects/gvinum/sys/sparc64/sparc64/support.S projects/gvinum/sys/sparc64/sparc64/trap.c projects/gvinum/sys/sparc64/sparc64/vm_machdep.c projects/gvinum/sys/sun4v/conf/DEFAULTS projects/gvinum/sys/sun4v/conf/GENERIC projects/gvinum/sys/sun4v/include/elf.h projects/gvinum/sys/sun4v/include/ofw_machdep.h projects/gvinum/sys/sun4v/include/pcpu.h projects/gvinum/sys/sun4v/include/vmparam.h projects/gvinum/sys/sun4v/sun4v/machdep.c projects/gvinum/sys/sun4v/sun4v/mp_machdep.c projects/gvinum/sys/sun4v/sun4v/support.S projects/gvinum/sys/sun4v/sun4v/trap.c projects/gvinum/sys/sys/_null.h projects/gvinum/sys/sys/aio.h projects/gvinum/sys/sys/buf_ring.h projects/gvinum/sys/sys/bus_dma.h projects/gvinum/sys/sys/cdefs.h projects/gvinum/sys/sys/cfictl.h projects/gvinum/sys/sys/clist.h projects/gvinum/sys/sys/conf.h projects/gvinum/sys/sys/copyright.h projects/gvinum/sys/sys/disk.h projects/gvinum/sys/sys/elf64.h projects/gvinum/sys/sys/elf_common.h projects/gvinum/sys/sys/elf_generic.h projects/gvinum/sys/sys/fcntl.h projects/gvinum/sys/sys/file.h projects/gvinum/sys/sys/imgact_elf.h projects/gvinum/sys/sys/jail.h projects/gvinum/sys/sys/kernel.h projects/gvinum/sys/sys/kobj.h projects/gvinum/sys/sys/ktr.h projects/gvinum/sys/sys/libkern.h projects/gvinum/sys/sys/link_elf.h projects/gvinum/sys/sys/lock.h projects/gvinum/sys/sys/lockmgr.h projects/gvinum/sys/sys/malloc.h projects/gvinum/sys/sys/mbuf.h projects/gvinum/sys/sys/mount.h projects/gvinum/sys/sys/osd.h projects/gvinum/sys/sys/param.h projects/gvinum/sys/sys/pciio.h projects/gvinum/sys/sys/pcpu.h projects/gvinum/sys/sys/pmc.h projects/gvinum/sys/sys/priv.h projects/gvinum/sys/sys/protosw.h projects/gvinum/sys/sys/resource.h projects/gvinum/sys/sys/sched.h projects/gvinum/sys/sys/sdt.h projects/gvinum/sys/sys/shm.h projects/gvinum/sys/sys/soundcard.h projects/gvinum/sys/sys/syscallsubr.h projects/gvinum/sys/sys/sysctl.h projects/gvinum/sys/sys/systm.h projects/gvinum/sys/sys/tree.h projects/gvinum/sys/sys/tty.h projects/gvinum/sys/sys/ttyhook.h projects/gvinum/sys/sys/ttyqueue.h projects/gvinum/sys/sys/types.h projects/gvinum/sys/sys/unistd.h projects/gvinum/sys/sys/vimage.h projects/gvinum/sys/sys/vnode.h projects/gvinum/sys/sys/vtoc.h projects/gvinum/sys/ufs/ffs/ffs_alloc.c projects/gvinum/sys/ufs/ffs/ffs_balloc.c projects/gvinum/sys/ufs/ffs/ffs_extern.h projects/gvinum/sys/ufs/ffs/ffs_inode.c projects/gvinum/sys/ufs/ffs/ffs_vfsops.c projects/gvinum/sys/ufs/ffs/ffs_vnops.c projects/gvinum/sys/ufs/ufs/ufs_dirhash.c projects/gvinum/sys/ufs/ufs/ufs_extattr.c projects/gvinum/sys/ufs/ufs/ufs_lookup.c projects/gvinum/sys/ufs/ufs/ufs_vfsops.c projects/gvinum/sys/ufs/ufs/ufs_vnops.c projects/gvinum/sys/vm/swap_pager.c projects/gvinum/sys/vm/uma.h projects/gvinum/sys/vm/uma_core.c projects/gvinum/sys/vm/uma_dbg.c projects/gvinum/sys/vm/uma_int.h projects/gvinum/sys/vm/vm_fault.c projects/gvinum/sys/vm/vm_kern.c projects/gvinum/sys/vm/vm_map.c projects/gvinum/sys/vm/vm_map.h projects/gvinum/sys/vm/vm_meter.c projects/gvinum/sys/vm/vm_mmap.c projects/gvinum/sys/vm/vm_object.c projects/gvinum/sys/vm/vm_object.h projects/gvinum/sys/vm/vm_page.c projects/gvinum/sys/vm/vm_page.h projects/gvinum/sys/vm/vm_pager.c projects/gvinum/sys/vm/vnode_pager.c projects/gvinum/sys/vm/vnode_pager.h projects/gvinum/sys/xdr/xdr_mem.c projects/gvinum/sys/xen/evtchn/evtchn.c projects/gvinum/sys/xen/evtchn/evtchn_dev.c projects/gvinum/sys/xen/features.c projects/gvinum/sys/xen/gnttab.c projects/gvinum/sys/xen/gnttab.h projects/gvinum/sys/xen/xenbus/xenbus_client.c projects/gvinum/sys/xen/xenbus/xenbus_comms.c projects/gvinum/sys/xen/xenbus/xenbus_comms.h projects/gvinum/sys/xen/xenbus/xenbus_dev.c projects/gvinum/sys/xen/xenbus/xenbus_probe.c projects/gvinum/sys/xen/xenbus/xenbus_probe_backend.c projects/gvinum/sys/xen/xenbus/xenbus_xs.c projects/gvinum/sys/xen/xenbus/xenbusvar.h Modified: projects/gvinum/sys/Makefile ============================================================================== --- projects/gvinum/sys/Makefile Tue Mar 3 20:26:41 2009 (r189321) +++ projects/gvinum/sys/Makefile Tue Mar 3 20:27:50 2009 (r189322) @@ -12,7 +12,7 @@ CSCOPEDIRS= boot bsm cam cddl compat con geom gnu isa kern libkern modules net net80211 netatalk \ netgraph netinet netinet6 netipsec netipx netnatm netncp \ netsmb nfs nfs4client nfsclient nfsserver nlm opencrypto \ - pccard pci rpc security sys ufs vm xdr ${CSCOPE_ARCHDIR} + pci rpc security sys ufs vm xdr ${CSCOPE_ARCHDIR} .if defined(ALL_ARCH) CSCOPE_ARCHDIR ?= amd64 arm i386 ia64 mips pc98 powerpc sparc64 sun4v .else Modified: projects/gvinum/sys/amd64/amd64/amd64_mem.c ============================================================================== --- projects/gvinum/sys/amd64/amd64/amd64_mem.c Tue Mar 3 20:26:41 2009 (r189321) +++ projects/gvinum/sys/amd64/amd64/amd64_mem.c Tue Mar 3 20:27:50 2009 (r189322) @@ -678,9 +678,17 @@ amd64_mem_drvinit(void *unused) return; if ((cpu_id & 0xf00) != 0x600 && (cpu_id & 0xf00) != 0xf00) return; - if (cpu_vendor_id != CPU_VENDOR_INTEL && - cpu_vendor_id != CPU_VENDOR_AMD) + switch (cpu_vendor_id) { + case CPU_VENDOR_INTEL: + case CPU_VENDOR_AMD: + break; + case CPU_VENDOR_CENTAUR: + if (cpu_exthigh >= 0x80000008) + break; + /* FALLTHROUGH */ + default: return; + } mem_range_softc.mr_op = &amd64_mrops; } SYSINIT(amd64memdev, SI_SUB_DRIVERS, SI_ORDER_FIRST, amd64_mem_drvinit, NULL); Modified: projects/gvinum/sys/amd64/amd64/busdma_machdep.c ============================================================================== --- projects/gvinum/sys/amd64/amd64/busdma_machdep.c Tue Mar 3 20:26:41 2009 (r189321) +++ projects/gvinum/sys/amd64/amd64/busdma_machdep.c Tue Mar 3 20:27:50 2009 (r189322) @@ -93,6 +93,7 @@ struct bounce_zone { int active_bpages; int total_bounced; int total_deferred; + int map_count; bus_size_t alignment; bus_size_t boundary; bus_addr_t lowaddr; @@ -418,7 +419,7 @@ bus_dmamap_create(bus_dma_tag_t dmat, in else maxpages = MIN(MAX_BPAGES, Maxmem -atop(dmat->lowaddr)); if ((dmat->flags & BUS_DMA_MIN_ALLOC_COMP) == 0 - || (dmat->map_count > 0 && bz->total_bpages < maxpages)) { + || (bz->map_count > 0 && bz->total_bpages < maxpages)) { int pages; pages = MAX(atop(dmat->maxsize), 1); @@ -434,6 +435,7 @@ bus_dmamap_create(bus_dma_tag_t dmat, in error = 0; } } + bz->map_count++; } else { *mapp = NULL; } @@ -457,6 +459,8 @@ bus_dmamap_destroy(bus_dma_tag_t dmat, b __func__, dmat, EBUSY); return (EBUSY); } + if (dmat->bounce_zone) + dmat->bounce_zone->map_count--; free(map, M_DEVBUF); } dmat->map_count--; @@ -989,6 +993,7 @@ alloc_bounce_zone(bus_dma_tag_t dmat) bz->lowaddr = dmat->lowaddr; bz->alignment = dmat->alignment; bz->boundary = dmat->boundary; + bz->map_count = 0; snprintf(bz->zoneid, 8, "zone%d", busdma_zonecount); busdma_zonecount++; snprintf(bz->lowaddrid, 18, "%#jx", (uintmax_t)bz->lowaddr); @@ -1128,6 +1133,13 @@ add_bounce_page(bus_dma_tag_t dmat, bus_ bz->active_bpages++; mtx_unlock(&bounce_lock); + if (dmat->flags & BUS_DMA_KEEP_PG_OFFSET) { + /* page offset needs to be preserved */ + bpage->vaddr &= ~PAGE_MASK; + bpage->busaddr &= ~PAGE_MASK; + bpage->vaddr |= vaddr & PAGE_MASK; + bpage->busaddr |= vaddr & PAGE_MASK; + } bpage->datavaddr = vaddr; bpage->datacount = size; STAILQ_INSERT_TAIL(&(map->bpages), bpage, links); Modified: projects/gvinum/sys/amd64/amd64/cpu_switch.S ============================================================================== --- projects/gvinum/sys/amd64/amd64/cpu_switch.S Tue Mar 3 20:26:41 2009 (r189321) +++ projects/gvinum/sys/amd64/amd64/cpu_switch.S Tue Mar 3 20:27:50 2009 (r189322) @@ -199,6 +199,7 @@ done_load_seg: cmpq PCB_FSBASE(%r8),%r9 jz 1f /* Restore userland %fs */ +restore_fsbase: movl $MSR_FSBASE,%ecx movl PCB_FSBASE(%r8),%eax movl PCB_FSBASE+4(%r8),%edx @@ -259,12 +260,12 @@ do_kthread: jmp do_tss store_seg: - movl %gs,PCB_GS(%r8) + mov %gs,PCB_GS(%r8) testl $PCB_GS32BIT,PCB_FLAGS(%r8) jnz 2f -1: movl %ds,PCB_DS(%r8) - movl %es,PCB_ES(%r8) - movl %fs,PCB_FS(%r8) +1: mov %ds,PCB_DS(%r8) + mov %es,PCB_ES(%r8) + mov %fs,PCB_FS(%r8) jmp done_store_seg 2: movq PCPU(GS32P),%rax movq (%rax),%rax @@ -276,12 +277,12 @@ load_seg: jnz 2f 1: movl $MSR_GSBASE,%ecx rdmsr - movl PCB_GS(%r8),%gs + mov PCB_GS(%r8),%gs wrmsr - movl PCB_DS(%r8),%ds - movl PCB_ES(%r8),%es - movl PCB_FS(%r8),%fs - jmp done_load_seg + mov PCB_DS(%r8),%ds + mov PCB_ES(%r8),%es + mov PCB_FS(%r8),%fs + jmp restore_fsbase /* Restore userland %gs while preserving kernel gsbase */ 2: movq PCPU(GS32P),%rax movq PCB_GS32SD(%r8),%rcx Modified: projects/gvinum/sys/amd64/amd64/exception.S ============================================================================== --- projects/gvinum/sys/amd64/amd64/exception.S Tue Mar 3 20:26:41 2009 (r189321) +++ projects/gvinum/sys/amd64/amd64/exception.S Tue Mar 3 20:27:50 2009 (r189322) @@ -383,22 +383,24 @@ IDTVEC(fast_syscall32) * NMI handling is special. * * First, NMIs do not respect the state of the processor's RFLAGS.IF - * bit and the NMI handler may be invoked at any time, including when - * the processor is in a critical section with RFLAGS.IF == 0. In - * particular, this means that the processor's GS.base values could be - * inconsistent on entry to the handler, and so we need to read - * MSR_GSBASE to determine if a 'swapgs' is needed. We use '%ebx', a - * C-preserved register, to remember whether to swap GS back on the - * exit path. + * bit. The NMI handler may be entered at any time, including when + * the processor is in a critical section with RFLAGS.IF == 0. + * The processor's GS.base value could be invalid on entry to the + * handler. * * Second, the processor treats NMIs specially, blocking further NMIs - * until an 'iretq' instruction is executed. We therefore need to - * execute the NMI handler with interrupts disabled to prevent a - * nested interrupt from executing an 'iretq' instruction and - * inadvertently taking the processor out of NMI mode. + * until an 'iretq' instruction is executed. We thus need to execute + * the NMI handler with interrupts disabled, to prevent a nested interrupt + * from executing an 'iretq' instruction and inadvertently taking the + * processor out of NMI mode. * - * Third, the NMI handler runs on its own stack (tss_ist1), shared - * with the double fault handler. + * Third, the NMI handler runs on its own stack (tss_ist2). The canonical + * GS.base value for the processor is stored just above the bottom of its + * NMI stack. For NMIs taken from kernel mode, the current value in + * the processor's GS.base is saved at entry to C-preserved register %r12, + * the canonical value for GS.base is then loaded into the processor, and + * the saved value is restored at exit time. For NMIs taken from user mode, + * the cheaper 'SWAPGS' instructions are used for swapping GS.base. */ IDTVEC(nmi) @@ -423,12 +425,22 @@ IDTVEC(nmi) movq %r15,TF_R15(%rsp) xorl %ebx,%ebx testb $SEL_RPL_MASK,TF_CS(%rsp) - jnz nmi_needswapgs /* we came from userland */ + jnz nmi_fromuserspace + /* + * We've interrupted the kernel. Preserve GS.base in %r12. + */ movl $MSR_GSBASE,%ecx rdmsr - cmpl $VM_MAXUSER_ADDRESS >> 32,%edx - jae nmi_calltrap /* GS.base holds a kernel VA */ -nmi_needswapgs: + movq %rax,%r12 + shlq $32,%rdx + orq %rdx,%r12 + /* Retrieve and load the canonical value for GS.base. */ + movq TF_SIZE(%rsp),%rdx + movl %edx,%eax + shrq $32,%rdx + wrmsr + jmp nmi_calltrap +nmi_fromuserspace: incl %ebx swapgs /* Note: this label is also used by ddb and gdb: */ @@ -439,14 +451,19 @@ nmi_calltrap: MEXITCOUNT #ifdef HWPMC_HOOKS /* - * Check if the current trap was from user mode and if so - * whether the current thread needs a user call chain to be - * captured. We are still in NMI mode at this point. + * Capture a userspace callchain if needed. + * + * - Check if the current trap was from user mode. + * - Check if the current thread is valid. + * - Check if the thread requires a user call chain to be + * captured. + * + * We are still in NMI mode at this point. */ - testb $SEL_RPL_MASK,TF_CS(%rsp) - jz nocallchain - movq PCPU(CURTHREAD),%rax /* curthread present? */ - orq %rax,%rax + testl %ebx,%ebx + jz nocallchain /* not from userspace */ + movq PCPU(CURTHREAD),%rax + orq %rax,%rax /* curthread present? */ jz nocallchain testl $TDP_CALLCHAIN,TD_PFLAGS(%rax) /* flagged for capture? */ jz nocallchain @@ -459,9 +476,9 @@ nmi_calltrap: */ movq %rsp,%rsi /* source stack pointer */ movq $TF_SIZE,%rcx - movq PCPU(RSP0),%rbx - subq %rcx,%rbx - movq %rbx,%rdi /* destination stack pointer */ + movq PCPU(RSP0),%rdx + subq %rcx,%rdx + movq %rdx,%rdi /* destination stack pointer */ shrq $3,%rcx /* trap frame size in long words */ cld @@ -470,7 +487,7 @@ nmi_calltrap: movl %ss,%eax pushq %rax /* tf_ss */ - pushq %rbx /* tf_rsp (on kernel stack) */ + pushq %rdx /* tf_rsp (on kernel stack) */ pushfq /* tf_rflags */ movl %cs,%eax pushq %rax /* tf_cs */ @@ -480,21 +497,36 @@ outofnmi: /* * At this point the processor has exited NMI mode and is running * with interrupts turned off on the normal kernel stack. - * We turn interrupts back on, and take the usual 'doreti' exit - * path. * * If a pending NMI gets recognized at or after this point, it - * will cause a kernel callchain to be traced. Since this path - * is only taken for NMI interrupts from user space, our `swapgs' - * state is correct for taking the doreti path. + * will cause a kernel callchain to be traced. + * + * We turn interrupts back on, and call the user callchain capture hook. */ + movq pmc_hook,%rax + orq %rax,%rax + jz nocallchain + movq PCPU(CURTHREAD),%rdi /* thread */ + movq $PMC_FN_USER_CALLCHAIN,%rsi /* command */ + movq %rsp,%rdx /* frame */ sti - jmp doreti + call *%rax + cli nocallchain: #endif testl %ebx,%ebx - jz nmi_restoreregs + jz nmi_kernelexit swapgs + jmp nmi_restoreregs +nmi_kernelexit: + /* + * Put back the preserved MSR_GSBASE value. + */ + movl $MSR_GSBASE,%ecx + movq %r12,%rdx + movl %edx,%eax + shrq $32,%rdx + wrmsr nmi_restoreregs: movq TF_RDI(%rsp),%rdi movq TF_RSI(%rsp),%rsi Modified: projects/gvinum/sys/amd64/amd64/fpu.c ============================================================================== --- projects/gvinum/sys/amd64/amd64/fpu.c Tue Mar 3 20:26:41 2009 (r189321) +++ projects/gvinum/sys/amd64/amd64/fpu.c Tue Mar 3 20:27:50 2009 (r189322) @@ -98,10 +98,8 @@ typedef u_char bool_t; static void fpu_clean_state(void); -int hw_float = 1; -SYSCTL_INT(_hw,HW_FLOATINGPT, floatingpoint, - CTLFLAG_RD, &hw_float, 0, - "Floatingpoint instructions executed in hardware"); +SYSCTL_INT(_hw, HW_FLOATINGPT, floatingpoint, CTLFLAG_RD, + NULL, 1, "Floating point instructions executed in hardware"); static struct savefpu fpu_cleanstate; static bool_t fpu_cleanstate_ready; @@ -391,6 +389,7 @@ fpudna() { struct pcb *pcb; register_t s; + u_short control; if (PCPU_GET(fpcurthread) == curthread) { printf("fpudna: fpcurthread == curthread %d times\n", @@ -421,6 +420,10 @@ fpudna() * explicitly load sanitized registers. */ fxrstor(&fpu_cleanstate); + if (pcb->pcb_flags & PCB_32BIT) { + control = __INITIAL_FPUCW_I386__; + fldcw(&control); + } pcb->pcb_flags |= PCB_FPUINITDONE; } else fxrstor(&pcb->pcb_save); Modified: projects/gvinum/sys/amd64/amd64/genassym.c ============================================================================== --- projects/gvinum/sys/amd64/amd64/genassym.c Tue Mar 3 20:26:41 2009 (r189321) +++ projects/gvinum/sys/amd64/amd64/genassym.c Tue Mar 3 20:27:50 2009 (r189322) @@ -36,6 +36,7 @@ __FBSDID("$FreeBSD$"); #include "opt_compat.h" +#include "opt_hwpmc_hooks.h" #include "opt_kstack_pages.h" #include @@ -44,6 +45,9 @@ __FBSDID("$FreeBSD$"); #include #include #include +#ifdef HWPMC_HOOKS +#include +#endif #include #include #include @@ -216,3 +220,7 @@ ASSYM(KUC32SEL, GSEL(GUCODE32_SEL, SEL_U ASSYM(SEL_RPL_MASK, SEL_RPL_MASK); ASSYM(MSR_GSBASE, MSR_GSBASE); + +#ifdef HWPMC_HOOKS +ASSYM(PMC_FN_USER_CALLCHAIN, PMC_FN_USER_CALLCHAIN); +#endif Modified: projects/gvinum/sys/amd64/amd64/identcpu.c ============================================================================== --- projects/gvinum/sys/amd64/amd64/identcpu.c Tue Mar 3 20:26:41 2009 (r189321) +++ projects/gvinum/sys/amd64/amd64/identcpu.c Tue Mar 3 20:27:50 2009 (r189322) @@ -72,6 +72,7 @@ void panicifcpuunsupported(void); static u_int find_cpu_vendor_id(void); static void print_AMD_info(void); static void print_AMD_assoc(int i); +static void print_via_padlock_info(void); int cpu_class; char machine[] = "amd64"; @@ -102,6 +103,7 @@ static struct { } cpu_vendors[] = { { INTEL_VENDOR_ID, CPU_VENDOR_INTEL }, /* GenuineIntel */ { AMD_VENDOR_ID, CPU_VENDOR_AMD }, /* AuthenticAMD */ + { CENTAUR_VENDOR_ID, CPU_VENDOR_CENTAUR }, /* CentaurHauls */ }; int cpu_cores; @@ -131,24 +133,33 @@ printcpuinfo(void) } } - if (cpu_vendor_id == CPU_VENDOR_INTEL) { + switch (cpu_vendor_id) { + case CPU_VENDOR_INTEL: /* Please make up your mind folks! */ strcat(cpu_model, "EM64T"); - } else if (cpu_vendor_id == CPU_VENDOR_AMD) { + break; + case CPU_VENDOR_AMD: /* * Values taken from AMD Processor Recognition * http://www.amd.com/K6/k6docs/pdf/20734g.pdf * (also describes ``Features'' encodings. */ strcpy(cpu_model, "AMD "); - switch (cpu_id & 0xF00) { - case 0xf00: + if ((cpu_id & 0xf00) == 0xf00) strcat(cpu_model, "AMD64 Processor"); - break; - default: + else strcat(cpu_model, "Unknown"); - break; - } + break; + case CPU_VENDOR_CENTAUR: + strcpy(cpu_model, "VIA "); + if ((cpu_id & 0xff0) == 0x6f0) + strcat(cpu_model, "Nano Processor"); + else + strcat(cpu_model, "Unknown"); + break; + default: + strcat(cpu_model, "Unknown"); + break; } /* @@ -180,7 +191,8 @@ printcpuinfo(void) printf(" Id = 0x%x", cpu_id); if (cpu_vendor_id == CPU_VENDOR_INTEL || - cpu_vendor_id == CPU_VENDOR_AMD) { + cpu_vendor_id == CPU_VENDOR_AMD || + cpu_vendor_id == CPU_VENDOR_CENTAUR) { printf(" Stepping = %u", cpu_id & 0xf); if (cpu_high > 0) { u_int cmp = 1, htt = 1; @@ -322,15 +334,15 @@ printcpuinfo(void) "\003SVM" /* Secure Virtual Mode */ "\004ExtAPIC" /* Extended APIC register */ "\005CR8" /* CR8 in legacy mode */ - "\006" - "\007" - "\010" + "\006ABM" /* LZCNT instruction */ + "\007SSE4A" /* SSE4A */ + "\010MAS" /* Misaligned SSE mode */ "\011Prefetch" /* 3DNow! Prefetch/PrefetchW */ - "\012" - "\013" - "\014" - "\015" - "\016" + "\012OSVW" /* OS visible workaround */ + "\013IBS" /* Instruction based sampling */ + "\014SSE5" /* SSE5 */ + "\015SKINIT" /* SKINIT/STGI */ + "\016WDT" /* Watchdog timer */ "\017" "\020" "\021" @@ -352,6 +364,9 @@ printcpuinfo(void) ); } + if (cpu_vendor_id == CPU_VENDOR_CENTAUR) + print_via_padlock_info(); + if ((cpu_feature & CPUID_HTT) && cpu_vendor_id == CPU_VENDOR_AMD) cpu_feature &= ~CPUID_HTT; @@ -375,6 +390,12 @@ printcpuinfo(void) AMD64_CPU_MODEL(cpu_id) >= 0x3)) tsc_is_invariant = 1; break; + case CPU_VENDOR_CENTAUR: + if (AMD64_CPU_FAMILY(cpu_id) == 0x6 && + AMD64_CPU_MODEL(cpu_id) >= 0xf && + (rdmsr(0x1203) & 0x100000000ULL) == 0) + tsc_is_invariant = 1; + break; } if (tsc_is_invariant) printf("\n TSC: P-state invariant"); @@ -456,7 +477,7 @@ EVENTHANDLER_DEFINE(cpufreq_post_change, EVENTHANDLER_PRI_ANY); /* - * Final stage of CPU identification. -- Should I check TI? + * Final stage of CPU identification. */ void identify_cpu(void) @@ -478,7 +499,8 @@ identify_cpu(void) cpu_feature2 = regs[2]; if (cpu_vendor_id == CPU_VENDOR_INTEL || - cpu_vendor_id == CPU_VENDOR_AMD) { + cpu_vendor_id == CPU_VENDOR_AMD || + cpu_vendor_id == CPU_VENDOR_CENTAUR) { do_cpuid(0x80000000, regs); cpu_exthigh = regs[0]; } @@ -599,3 +621,37 @@ print_AMD_info(void) print_AMD_l2_assoc((regs[2] >> 12) & 0x0f); } } + +static void +print_via_padlock_info(void) +{ + u_int regs[4]; + + /* Check for supported models. */ + switch (cpu_id & 0xff0) { + case 0x690: + if ((cpu_id & 0xf) < 3) + return; + case 0x6a0: + case 0x6d0: + case 0x6f0: + break; + default: + return; + } + + do_cpuid(0xc0000000, regs); + if (regs[0] >= 0xc0000001) + do_cpuid(0xc0000001, regs); + else + return; + + printf("\n VIA Padlock Features=0x%b", regs[3], + "\020" + "\003RNG" /* RNG */ + "\007AES" /* ACE */ + "\011AES-CTR" /* ACE2 */ + "\013SHA1,SHA256" /* PHE */ + "\015RSA" /* PMM */ + ); +} Modified: projects/gvinum/sys/amd64/amd64/initcpu.c ============================================================================== --- projects/gvinum/sys/amd64/amd64/initcpu.c Tue Mar 3 20:26:41 2009 (r189321) +++ projects/gvinum/sys/amd64/amd64/initcpu.c Tue Mar 3 20:27:50 2009 (r189322) @@ -54,6 +54,8 @@ u_int cpu_feature2; /* Feature flags */ u_int amd_feature; /* AMD feature flags */ u_int amd_feature2; /* AMD feature flags */ u_int amd_pminfo; /* AMD advanced power management info */ +u_int via_feature_rng; /* VIA RNG features */ +u_int via_feature_xcrypt; /* VIA ACE features */ u_int cpu_high; /* Highest arg to CPUID */ u_int cpu_exthigh; /* Highest arg to extended CPUID */ u_int cpu_id; /* Stepping ID */ @@ -64,6 +66,75 @@ u_int cpu_vendor_id; /* CPU vendor ID * u_int cpu_fxsr; /* SSE enabled */ u_int cpu_mxcsr_mask; /* Valid bits in mxcsr */ +SYSCTL_UINT(_hw, OID_AUTO, via_feature_rng, CTLFLAG_RD, + &via_feature_rng, 0, "VIA C3/C7 RNG feature available in CPU"); +SYSCTL_UINT(_hw, OID_AUTO, via_feature_xcrypt, CTLFLAG_RD, + &via_feature_xcrypt, 0, "VIA C3/C7 xcrypt feature available in CPU"); + +/* + * Initialize special VIA C3/C7 features + */ +static void +init_via(void) +{ + u_int regs[4], val; + u_int64_t msreg; + + do_cpuid(0xc0000000, regs); + val = regs[0]; + if (val >= 0xc0000001) { + do_cpuid(0xc0000001, regs); + val = regs[3]; + } else + val = 0; + + /* Enable RNG if present and disabled */ + if (val & VIA_CPUID_HAS_RNG) { + if (!(val & VIA_CPUID_DO_RNG)) { + msreg = rdmsr(0x110B); + msreg |= 0x40; + wrmsr(0x110B, msreg); + } + via_feature_rng = VIA_HAS_RNG; + } + /* Enable AES engine if present and disabled */ + if (val & VIA_CPUID_HAS_ACE) { + if (!(val & VIA_CPUID_DO_ACE)) { + msreg = rdmsr(0x1107); + msreg |= (0x01 << 28); + wrmsr(0x1107, msreg); + } + via_feature_xcrypt |= VIA_HAS_AES; + } + /* Enable ACE2 engine if present and disabled */ + if (val & VIA_CPUID_HAS_ACE2) { + if (!(val & VIA_CPUID_DO_ACE2)) { + msreg = rdmsr(0x1107); + msreg |= (0x01 << 28); + wrmsr(0x1107, msreg); + } + via_feature_xcrypt |= VIA_HAS_AESCTR; + } + /* Enable SHA engine if present and disabled */ + if (val & VIA_CPUID_HAS_PHE) { + if (!(val & VIA_CPUID_DO_PHE)) { + msreg = rdmsr(0x1107); + msreg |= (0x01 << 28/**/); + wrmsr(0x1107, msreg); + } + via_feature_xcrypt |= VIA_HAS_SHA; + } + /* Enable MM engine if present and disabled */ + if (val & VIA_CPUID_HAS_PMM) { + if (!(val & VIA_CPUID_DO_PMM)) { + msreg = rdmsr(0x1107); + msreg |= (0x01 << 28/**/); + wrmsr(0x1107, msreg); + } + via_feature_xcrypt |= VIA_HAS_MM; + } +} + /* * Initialize CPU control registers */ @@ -81,4 +152,8 @@ initializecpu(void) wrmsr(MSR_EFER, msr); pg_nx = PG_NX; } + if (cpu_vendor_id == CPU_VENDOR_CENTAUR && + AMD64_CPU_FAMILY(cpu_id) == 0x6 && + AMD64_CPU_MODEL(cpu_id) >= 0xf) + init_via(); } Modified: projects/gvinum/sys/amd64/amd64/io_apic.c ============================================================================== --- projects/gvinum/sys/amd64/amd64/io_apic.c Tue Mar 3 20:26:41 2009 (r189321) +++ projects/gvinum/sys/amd64/amd64/io_apic.c Tue Mar 3 20:27:50 2009 (r189322) @@ -327,39 +327,56 @@ ioapic_assign_cpu(struct intsrc *isrc, u { struct ioapic_intsrc *intpin = (struct ioapic_intsrc *)isrc; struct ioapic *io = (struct ioapic *)isrc->is_pic; + u_int old_vector; + u_int old_id; + /* + * keep 1st core as the destination for NMI + */ + if (intpin->io_irq == IRQ_NMI) + apic_id = 0; + + /* + * Set us up to free the old irq. + */ + old_vector = intpin->io_vector; + old_id = intpin->io_cpu; + if (old_vector && apic_id == old_id) + return; + + /* + * Allocate an APIC vector for this interrupt pin. Once + * we have a vector we program the interrupt pin. + */ intpin->io_cpu = apic_id; + intpin->io_vector = apic_alloc_vector(apic_id, intpin->io_irq); if (bootverbose) { - printf("ioapic%u: Assigning ", io->io_id); + printf("ioapic%u: routing intpin %u (", io->io_id, + intpin->io_intpin); ioapic_print_irq(intpin); - printf(" to local APIC %u\n", intpin->io_cpu); + printf(") to lapic %u vector %u\n", intpin->io_cpu, + intpin->io_vector); } ioapic_program_intpin(intpin); + /* + * Free the old vector after the new one is established. This is done + * to prevent races where we could miss an interrupt. + */ + if (old_vector) + apic_free_vector(old_id, old_vector, intpin->io_irq); } static void ioapic_enable_intr(struct intsrc *isrc) { struct ioapic_intsrc *intpin = (struct ioapic_intsrc *)isrc; - struct ioapic *io = (struct ioapic *)isrc->is_pic; - if (intpin->io_vector == 0) { - /* - * Allocate an APIC vector for this interrupt pin. Once - * we have a vector we program the interrupt pin. - */ - intpin->io_vector = apic_alloc_vector(intpin->io_irq); - if (bootverbose) { - printf("ioapic%u: routing intpin %u (", io->io_id, - intpin->io_intpin); - ioapic_print_irq(intpin); - printf(") to vector %u\n", intpin->io_vector); - } - ioapic_program_intpin(intpin); - apic_enable_vector(intpin->io_vector); - } + if (intpin->io_vector == 0) + ioapic_assign_cpu(isrc, pcpu_find(0)->pc_apic_id); + apic_enable_vector(intpin->io_cpu, intpin->io_vector); } + static void ioapic_disable_intr(struct intsrc *isrc) { @@ -369,11 +386,11 @@ ioapic_disable_intr(struct intsrc *isrc) if (intpin->io_vector != 0) { /* Mask this interrupt pin and free its APIC vector. */ vector = intpin->io_vector; - apic_disable_vector(vector); + apic_disable_vector(intpin->io_cpu, vector); intpin->io_masked = 1; intpin->io_vector = 0; ioapic_program_intpin(intpin); - apic_free_vector(vector, intpin->io_irq); + apic_free_vector(intpin->io_cpu, vector, intpin->io_irq); } } Modified: projects/gvinum/sys/amd64/amd64/local_apic.c ============================================================================== --- projects/gvinum/sys/amd64/amd64/local_apic.c Tue Mar 3 20:26:41 2009 (r189321) +++ projects/gvinum/sys/amd64/amd64/local_apic.c Tue Mar 3 20:27:50 2009 (r189322) @@ -46,6 +46,8 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include +#include #include #include @@ -109,6 +111,8 @@ struct lapic { u_long la_hard_ticks; u_long la_stat_ticks; u_long la_prof_ticks; + /* Include IDT_SYSCALL to make indexing easier. */ + u_int la_ioint_irqs[APIC_NUM_IOINTS + 1]; } static lapics[MAX_APIC_ID + 1]; /* XXX: should thermal be an NMI? */ @@ -134,8 +138,6 @@ static inthand_t *ioint_handlers[] = { IDTVEC(apic_isr7), /* 224 - 255 */ }; -/* Include IDT_SYSCALL to make indexing easier. */ -static u_int ioint_irqs[APIC_NUM_IOINTS + 1]; static u_int32_t lapic_timer_divisors[] = { APIC_TDCR_1, APIC_TDCR_2, APIC_TDCR_4, APIC_TDCR_8, APIC_TDCR_16, @@ -215,14 +217,12 @@ lapic_init(vm_paddr_t addr) /* Perform basic initialization of the BSP's local APIC. */ lapic_enable(); - ioint_irqs[IDT_SYSCALL - APIC_IO_INTS] = IRQ_SYSCALL; /* Set BSP's per-CPU local APIC ID. */ PCPU_SET(apic_id, lapic_id()); /* Local APIC timer interrupt. */ setidt(APIC_TIMER_INT, IDTVEC(timerint), SDT_SYSIGT, SEL_KPL, 0); - ioint_irqs[APIC_TIMER_INT - APIC_IO_INTS] = IRQ_TIMER; /* XXX: error/thermal interrupts */ } @@ -254,6 +254,9 @@ lapic_create(u_int apic_id, int boot_cpu lapics[apic_id].la_lvts[i] = lvts[i]; lapics[apic_id].la_lvts[i].lvt_active = 0; } + lapics[apic_id].la_ioint_irqs[IDT_SYSCALL - APIC_IO_INTS] = IRQ_SYSCALL; + lapics[apic_id].la_ioint_irqs[APIC_TIMER_INT - APIC_IO_INTS] = + IRQ_TIMER; #ifdef SMP cpu_add(apic_id, boot_cpu); @@ -299,6 +302,7 @@ lapic_setup(int boot) /* Program LINT[01] LVT entries. */ lapic->lvt_lint0 = lvt_mode(la, LVT_LINT0, lapic->lvt_lint0); lapic->lvt_lint1 = lvt_mode(la, LVT_LINT1, lapic->lvt_lint1); + #ifdef HWPMC_HOOKS /* Program the PMC LVT entry if present. */ if (maxlvt >= LVT_PMC) @@ -644,6 +648,18 @@ lapic_eoi(void) lapic->eoi = 0; } +/* + * Read the contents of the error status register. We have to write + * to the register first before reading from it. + */ +u_int +lapic_error(void) +{ + + lapic->esr = 0; + return (lapic->esr); +} + void lapic_handle_intr(int vector, struct trapframe *frame) { @@ -651,7 +667,8 @@ lapic_handle_intr(int vector, struct tra if (vector == -1) panic("Couldn't get vector from ISR!"); - isrc = intr_lookup_source(apic_idt_to_irq(vector)); + isrc = intr_lookup_source(apic_idt_to_irq(PCPU_GET(apic_id), + vector)); intr_execute_handlers(isrc, frame); } @@ -766,9 +783,19 @@ lapic_timer_enable_intr(void) lapic->lvt_timer = value; } +u_int +apic_cpuid(u_int apic_id) +{ +#ifdef SMP + return apic_cpuids[apic_id]; +#else + return 0; +#endif +} + /* Request a free IDT vector to be used by the specified IRQ. */ u_int -apic_alloc_vector(u_int irq) +apic_alloc_vector(u_int apic_id, u_int irq) { u_int vector; @@ -780,9 +807,9 @@ apic_alloc_vector(u_int irq) */ mtx_lock_spin(&icu_lock); for (vector = 0; vector < APIC_NUM_IOINTS; vector++) { - if (ioint_irqs[vector] != 0) + if (lapics[apic_id].la_ioint_irqs[vector] != 0) continue; - ioint_irqs[vector] = irq; + lapics[apic_id].la_ioint_irqs[vector] = irq; mtx_unlock_spin(&icu_lock); return (vector + APIC_IO_INTS); } @@ -797,7 +824,7 @@ apic_alloc_vector(u_int irq) * satisfied, 0 is returned. */ u_int -apic_alloc_vectors(u_int *irqs, u_int count, u_int align) +apic_alloc_vectors(u_int apic_id, u_int *irqs, u_int count, u_int align) { u_int first, run, vector; @@ -820,7 +847,7 @@ apic_alloc_vectors(u_int *irqs, u_int co for (vector = 0; vector < APIC_NUM_IOINTS; vector++) { /* Vector is in use, end run. */ - if (ioint_irqs[vector] != 0) { + if (lapics[apic_id].la_ioint_irqs[vector] != 0) { run = 0; first = 0; continue; @@ -840,7 +867,8 @@ apic_alloc_vectors(u_int *irqs, u_int co /* Found a run, assign IRQs and return the first vector. */ for (vector = 0; vector < count; vector++) - ioint_irqs[first + vector] = irqs[vector]; + lapics[apic_id].la_ioint_irqs[first + vector] = + irqs[vector]; mtx_unlock_spin(&icu_lock); return (first + APIC_IO_INTS); } @@ -849,8 +877,14 @@ apic_alloc_vectors(u_int *irqs, u_int co return (0); } +/* + * Enable a vector for a particular apic_id. Since all lapics share idt + * entries and ioint_handlers this enables the vector on all lapics. lapics + * which do not have the vector configured would report spurious interrupts + * should it fire. + */ void -apic_enable_vector(u_int vector) +apic_enable_vector(u_int apic_id, u_int vector) { KASSERT(vector != IDT_SYSCALL, ("Attempt to overwrite syscall entry")); @@ -860,38 +894,61 @@ apic_enable_vector(u_int vector) } void -apic_disable_vector(u_int vector) +apic_disable_vector(u_int apic_id, u_int vector) { KASSERT(vector != IDT_SYSCALL, ("Attempt to overwrite syscall entry")); KASSERT(ioint_handlers[vector / 32] != NULL, ("No ISR handler for vector %u", vector)); +#ifdef notyet + /* + * We can not currently clear the idt entry because other cpus + * may have a valid vector at this offset. + */ setidt(vector, &IDTVEC(rsvd), SDT_SYSIGT, SEL_KPL, 0); +#endif } /* Release an APIC vector when it's no longer in use. */ void -apic_free_vector(u_int vector, u_int irq) +apic_free_vector(u_int apic_id, u_int vector, u_int irq) { + struct thread *td; KASSERT(vector >= APIC_IO_INTS && vector != IDT_SYSCALL && vector <= APIC_IO_INTS + APIC_NUM_IOINTS, ("Vector %u does not map to an IRQ line", vector)); KASSERT(irq < NUM_IO_INTS, ("Invalid IRQ %u", irq)); - KASSERT(ioint_irqs[vector - APIC_IO_INTS] == irq, ("IRQ mismatch")); + KASSERT(lapics[apic_id].la_ioint_irqs[vector - APIC_IO_INTS] == + irq, ("IRQ mismatch")); + + /* + * Bind us to the cpu that owned the vector before freeing it so + * we don't lose an interrupt delivery race. + */ + td = curthread; + thread_lock(td); + if (sched_is_bound(td)) + panic("apic_free_vector: Thread already bound.\n"); + sched_bind(td, apic_cpuid(apic_id)); + thread_unlock(td); mtx_lock_spin(&icu_lock); - ioint_irqs[vector - APIC_IO_INTS] = 0; + lapics[apic_id].la_ioint_irqs[vector - APIC_IO_INTS] = 0; mtx_unlock_spin(&icu_lock); + thread_lock(td); + sched_unbind(td); + thread_unlock(td); + } /* Map an IDT vector (APIC) to an IRQ (interrupt source). */ u_int -apic_idt_to_irq(u_int vector) +apic_idt_to_irq(u_int apic_id, u_int vector) { KASSERT(vector >= APIC_IO_INTS && vector != IDT_SYSCALL && vector <= APIC_IO_INTS + APIC_NUM_IOINTS, ("Vector %u does not map to an IRQ line", vector)); - return (ioint_irqs[vector - APIC_IO_INTS]); + return (lapics[apic_id].la_ioint_irqs[vector - APIC_IO_INTS]); } #ifdef DDB @@ -902,6 +959,7 @@ DB_SHOW_COMMAND(apic, db_show_apic) { struct intsrc *isrc; int i, verbose; + u_int apic_id; u_int irq; if (strcmp(modif, "vv") == 0) @@ -910,9 +968,14 @@ DB_SHOW_COMMAND(apic, db_show_apic) verbose = 1; else verbose = 0; - for (i = 0; i < APIC_NUM_IOINTS + 1 && !db_pager_quit; i++) { - irq = ioint_irqs[i]; - if (irq != 0 && irq != IRQ_SYSCALL) { + for (apic_id = 0; apic_id <= MAX_APIC_ID; apic_id++) { + if (lapics[apic_id].la_present == 0) + continue; + db_printf("Interrupts bound to lapic %u\n", apic_id); + for (i = 0; i < APIC_NUM_IOINTS + 1 && !db_pager_quit; i++) { + irq = lapics[apic_id].la_ioint_irqs[i]; + if (irq == 0 || irq == IRQ_SYSCALL) + continue; db_printf("vec 0x%2x -> ", i + APIC_IO_INTS); if (irq == IRQ_TIMER) db_printf("lapic timer\n"); Modified: projects/gvinum/sys/amd64/amd64/machdep.c ============================================================================== --- projects/gvinum/sys/amd64/amd64/machdep.c Tue Mar 3 20:26:41 2009 (r189321) +++ projects/gvinum/sys/amd64/amd64/machdep.c Tue Mar 3 20:27:50 2009 (r189322) @@ -809,6 +809,9 @@ struct gate_descriptor *idt = &idt0[0]; static char dblfault_stack[PAGE_SIZE] __aligned(16); +static char nmi0_stack[PAGE_SIZE] __aligned(16); +CTASSERT(sizeof(struct nmi_pcpu) == 16); + struct amd64tss common_tss[MAXCPU]; /* software prototypes -- in more palatable form */ @@ -1291,6 +1294,7 @@ hammer_time(u_int64_t modulep, u_int64_t caddr_t kmdp; int gsel_tss, x; struct pcpu *pc; + struct nmi_pcpu *np; u_int64_t msr; char *env; *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***