From owner-p4-projects@FreeBSD.ORG Thu Nov 4 17:28:04 2010 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4F65B1065674; Thu, 4 Nov 2010 17:28:04 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 10EAC106564A for ; Thu, 4 Nov 2010 17:28:04 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:4f8:fff6::2d]) by mx1.freebsd.org (Postfix) with ESMTP id EFB108FC0A for ; Thu, 4 Nov 2010 17:28:03 +0000 (UTC) Received: from skunkworks.freebsd.org (localhost [127.0.0.1]) by skunkworks.freebsd.org (8.14.4/8.14.4) with ESMTP id oA4HS3mn081404 for ; Thu, 4 Nov 2010 17:28:03 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.4/8.14.4/Submit) id oA4HS2qO081401 for perforce@freebsd.org; Thu, 4 Nov 2010 17:28:02 GMT (envelope-from hselasky@FreeBSD.org) Date: Thu, 4 Nov 2010 17:28:02 GMT Message-Id: <201011041728.oA4HS2qO081401@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Precedence: bulk Cc: Subject: PERFORCE change 185374 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 04 Nov 2010 17:28:04 -0000 http://p4web.freebsd.org/@@185374?ac=10 Change 185374 by hselasky@hselasky_laptop001 on 2010/11/04 17:27:55 IFC @ 185373 Affected files ... .. //depot/projects/usb/src/lib/libusbhid/Makefile#6 integrate .. //depot/projects/usb/src/lib/libusbhid/descr.c#10 integrate .. //depot/projects/usb/src/lib/libusbhid/usbvar.h#6 integrate .. //depot/projects/usb/src/sys/amd64/acpica/acpi_wakeup.c#10 integrate .. //depot/projects/usb/src/sys/amd64/acpica/madt.c#10 integrate .. //depot/projects/usb/src/sys/amd64/amd64/amd64_mem.c#7 integrate .. //depot/projects/usb/src/sys/amd64/amd64/apic_vector.S#8 integrate .. //depot/projects/usb/src/sys/amd64/amd64/dump_machdep.c#6 delete .. //depot/projects/usb/src/sys/amd64/amd64/fpu.c#9 integrate .. //depot/projects/usb/src/sys/amd64/amd64/genassym.c#16 integrate .. //depot/projects/usb/src/sys/amd64/amd64/intr_machdep.c#15 integrate .. //depot/projects/usb/src/sys/amd64/amd64/machdep.c#36 integrate .. //depot/projects/usb/src/sys/amd64/amd64/mp_machdep.c#30 integrate .. //depot/projects/usb/src/sys/amd64/amd64/mp_watchdog.c#4 integrate .. //depot/projects/usb/src/sys/amd64/amd64/mptable.c#5 delete .. //depot/projects/usb/src/sys/amd64/amd64/mptable_pci.c#5 delete .. //depot/projects/usb/src/sys/amd64/amd64/nexus.c#11 delete .. //depot/projects/usb/src/sys/amd64/amd64/pmap.c#42 integrate .. //depot/projects/usb/src/sys/amd64/amd64/trap.c#27 integrate .. //depot/projects/usb/src/sys/amd64/include/apicreg.h#4 delete .. //depot/projects/usb/src/sys/amd64/include/mca.h#5 delete .. //depot/projects/usb/src/sys/amd64/include/pmap.h#14 integrate .. //depot/projects/usb/src/sys/amd64/include/profile.h#3 integrate .. //depot/projects/usb/src/sys/arm/arm/elf_trampoline.c#14 integrate .. //depot/projects/usb/src/sys/arm/at91/if_ate.c#21 integrate .. //depot/projects/usb/src/sys/arm/at91/if_macb.c#3 integrate .. //depot/projects/usb/src/sys/arm/econa/if_ece.c#2 integrate .. //depot/projects/usb/src/sys/arm/mv/mv_sata.c#6 integrate .. //depot/projects/usb/src/sys/arm/xscale/ixp425/if_npe.c#15 integrate .. //depot/projects/usb/src/sys/boot/common/gpt.c#2 integrate .. //depot/projects/usb/src/sys/boot/i386/boot2/boot2.c#8 integrate .. //depot/projects/usb/src/sys/boot/ofw/common/main.c#4 integrate .. //depot/projects/usb/src/sys/boot/ofw/libofw/ofw_memory.c#2 integrate .. //depot/projects/usb/src/sys/boot/ofw/libofw/ofw_net.c#3 integrate .. //depot/projects/usb/src/sys/boot/ofw/libofw/openfirm.c#4 integrate .. //depot/projects/usb/src/sys/boot/pc98/boot2/boot2.c#3 integrate .. //depot/projects/usb/src/sys/boot/sparc64/loader/main.c#12 integrate .. //depot/projects/usb/src/sys/cam/ata/ata_da.c#15 integrate .. //depot/projects/usb/src/sys/cam/cam_xpt.c#33 integrate .. //depot/projects/usb/src/sys/cam/scsi/scsi_da.c#23 integrate .. //depot/projects/usb/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu.c#9 integrate .. //depot/projects/usb/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c#24 integrate .. //depot/projects/usb/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c#8 integrate .. //depot/projects/usb/src/sys/conf/files#102 integrate .. //depot/projects/usb/src/sys/conf/files.amd64#33 integrate .. //depot/projects/usb/src/sys/conf/files.i386#37 integrate .. //depot/projects/usb/src/sys/conf/files.pc98#25 integrate .. //depot/projects/usb/src/sys/conf/files.powerpc#33 integrate .. //depot/projects/usb/src/sys/conf/kern.post.mk#13 integrate .. //depot/projects/usb/src/sys/conf/kmod.mk#20 integrate .. //depot/projects/usb/src/sys/conf/options.amd64#13 integrate .. //depot/projects/usb/src/sys/conf/options.powerpc#4 integrate .. //depot/projects/usb/src/sys/dev/acpica/acpi.c#32 integrate .. //depot/projects/usb/src/sys/dev/acpica/acpi_if.m#4 integrate .. //depot/projects/usb/src/sys/dev/acpica/acpi_pci.c#6 integrate .. //depot/projects/usb/src/sys/dev/ae/if_ae.c#11 integrate .. //depot/projects/usb/src/sys/dev/ae/if_aevar.h#2 integrate .. //depot/projects/usb/src/sys/dev/age/if_age.c#16 integrate .. //depot/projects/usb/src/sys/dev/agp/agp.c#13 integrate .. //depot/projects/usb/src/sys/dev/agp/agp_apple.c#1 branch .. //depot/projects/usb/src/sys/dev/ahci/ahci.c#18 integrate .. //depot/projects/usb/src/sys/dev/alc/if_alc.c#12 integrate .. //depot/projects/usb/src/sys/dev/ale/if_ale.c#11 integrate .. //depot/projects/usb/src/sys/dev/ata/ata-all.c#28 integrate .. //depot/projects/usb/src/sys/dev/ata/ata-all.h#22 integrate .. //depot/projects/usb/src/sys/dev/ata/ata-pci.c#21 integrate .. //depot/projects/usb/src/sys/dev/ata/ata-sata.c#9 integrate .. //depot/projects/usb/src/sys/dev/ata/chipsets/ata-ahci.c#16 integrate .. //depot/projects/usb/src/sys/dev/ata/chipsets/ata-intel.c#14 integrate .. //depot/projects/usb/src/sys/dev/ata/chipsets/ata-marvell.c#14 integrate .. //depot/projects/usb/src/sys/dev/ata/chipsets/ata-nvidia.c#12 integrate .. //depot/projects/usb/src/sys/dev/ata/chipsets/ata-promise.c#12 integrate .. //depot/projects/usb/src/sys/dev/ata/chipsets/ata-siliconimage.c#14 integrate .. //depot/projects/usb/src/sys/dev/ata/chipsets/ata-via.c#10 integrate .. //depot/projects/usb/src/sys/dev/bce/if_bce.c#31 integrate .. //depot/projects/usb/src/sys/dev/bfe/if_bfe.c#11 integrate .. //depot/projects/usb/src/sys/dev/bge/if_bge.c#35 integrate .. //depot/projects/usb/src/sys/dev/bge/if_bgereg.h#20 integrate .. //depot/projects/usb/src/sys/dev/bm/if_bm.c#8 integrate .. //depot/projects/usb/src/sys/dev/cas/if_cas.c#6 integrate .. //depot/projects/usb/src/sys/dev/cas/if_casvar.h#3 integrate .. //depot/projects/usb/src/sys/dev/dc/dcphy.c#8 integrate .. //depot/projects/usb/src/sys/dev/dc/if_dc.c#15 integrate .. //depot/projects/usb/src/sys/dev/dc/pnphy.c#7 integrate .. //depot/projects/usb/src/sys/dev/e1000/e1000_82571.c#9 integrate .. //depot/projects/usb/src/sys/dev/e1000/if_em.c#24 integrate .. //depot/projects/usb/src/sys/dev/e1000/if_em.h#11 integrate .. //depot/projects/usb/src/sys/dev/e1000/if_lem.c#6 integrate .. //depot/projects/usb/src/sys/dev/e1000/if_lem.h#4 integrate .. //depot/projects/usb/src/sys/dev/ed/if_ed_pccard.c#12 integrate .. //depot/projects/usb/src/sys/dev/et/if_et.c#7 integrate .. //depot/projects/usb/src/sys/dev/firewire/fwohci.c#8 integrate .. //depot/projects/usb/src/sys/dev/fxp/if_fxp.c#20 integrate .. //depot/projects/usb/src/sys/dev/gem/if_gem.c#15 integrate .. //depot/projects/usb/src/sys/dev/gem/if_gemvar.h#8 integrate .. //depot/projects/usb/src/sys/dev/hme/if_hme.c#8 integrate .. //depot/projects/usb/src/sys/dev/if_ndis/if_ndis.c#38 integrate .. //depot/projects/usb/src/sys/dev/iicbus/ds1775.c#1 branch .. //depot/projects/usb/src/sys/dev/iicbus/max6690.c#1 branch .. //depot/projects/usb/src/sys/dev/iwi/if_iwi.c#18 integrate .. //depot/projects/usb/src/sys/dev/jme/if_jme.c#13 integrate .. //depot/projects/usb/src/sys/dev/lge/if_lge.c#9 integrate .. //depot/projects/usb/src/sys/dev/md/md.c#18 integrate .. //depot/projects/usb/src/sys/dev/mfi/mfireg.h#9 integrate .. //depot/projects/usb/src/sys/dev/mge/if_mge.c#12 integrate .. //depot/projects/usb/src/sys/dev/mge/if_mgevar.h#4 integrate .. //depot/projects/usb/src/sys/dev/mii/acphy.c#6 integrate .. //depot/projects/usb/src/sys/dev/mii/amphy.c#8 integrate .. //depot/projects/usb/src/sys/dev/mii/atphy.c#5 integrate .. //depot/projects/usb/src/sys/dev/mii/axphy.c#4 integrate .. //depot/projects/usb/src/sys/dev/mii/bmtphy.c#6 integrate .. //depot/projects/usb/src/sys/dev/mii/brgphy.c#18 integrate .. //depot/projects/usb/src/sys/dev/mii/ciphy.c#9 integrate .. //depot/projects/usb/src/sys/dev/mii/e1000phy.c#15 integrate .. //depot/projects/usb/src/sys/dev/mii/exphy.c#5 integrate .. //depot/projects/usb/src/sys/dev/mii/gentbi.c#6 integrate .. //depot/projects/usb/src/sys/dev/mii/icsphy.c#3 integrate .. //depot/projects/usb/src/sys/dev/mii/inphy.c#6 integrate .. //depot/projects/usb/src/sys/dev/mii/ip1000phy.c#7 integrate .. //depot/projects/usb/src/sys/dev/mii/jmphy.c#3 integrate .. //depot/projects/usb/src/sys/dev/mii/lxtphy.c#7 integrate .. //depot/projects/usb/src/sys/dev/mii/mii.c#9 integrate .. //depot/projects/usb/src/sys/dev/mii/mii_physubr.c#6 integrate .. //depot/projects/usb/src/sys/dev/mii/miidevs#21 integrate .. //depot/projects/usb/src/sys/dev/mii/miivar.h#5 integrate .. //depot/projects/usb/src/sys/dev/mii/mlphy.c#7 integrate .. //depot/projects/usb/src/sys/dev/mii/nsgphy.c#6 integrate .. //depot/projects/usb/src/sys/dev/mii/nsphy.c#8 integrate .. //depot/projects/usb/src/sys/dev/mii/nsphyter.c#3 integrate .. //depot/projects/usb/src/sys/dev/mii/pnaphy.c#5 integrate .. //depot/projects/usb/src/sys/dev/mii/qsphy.c#6 integrate .. //depot/projects/usb/src/sys/dev/mii/rgephy.c#9 integrate .. //depot/projects/usb/src/sys/dev/mii/rlphy.c#9 integrate .. //depot/projects/usb/src/sys/dev/mii/rlswitch.c#3 integrate .. //depot/projects/usb/src/sys/dev/mii/ruephy.c#6 integrate .. //depot/projects/usb/src/sys/dev/mii/smcphy.c#3 integrate .. //depot/projects/usb/src/sys/dev/mii/tdkphy.c#8 integrate .. //depot/projects/usb/src/sys/dev/mii/tlphy.c#8 integrate .. //depot/projects/usb/src/sys/dev/mii/truephy.c#5 integrate .. //depot/projects/usb/src/sys/dev/mii/ukphy.c#5 integrate .. //depot/projects/usb/src/sys/dev/mii/xmphy.c#5 integrate .. //depot/projects/usb/src/sys/dev/mps/mps.c#3 integrate .. //depot/projects/usb/src/sys/dev/mps/mps_user.c#3 integrate .. //depot/projects/usb/src/sys/dev/msk/if_msk.c#24 integrate .. //depot/projects/usb/src/sys/dev/mvs/mvs.c#5 integrate .. //depot/projects/usb/src/sys/dev/mvs/mvs_pci.c#3 integrate .. //depot/projects/usb/src/sys/dev/mvs/mvs_soc.c#3 integrate .. //depot/projects/usb/src/sys/dev/nfe/if_nfe.c#14 integrate .. //depot/projects/usb/src/sys/dev/nge/if_nge.c#10 integrate .. //depot/projects/usb/src/sys/dev/nve/if_nve.c#12 integrate .. //depot/projects/usb/src/sys/dev/pci/pci.c#38 integrate .. //depot/projects/usb/src/sys/dev/pci/pci_pci.c#13 integrate .. //depot/projects/usb/src/sys/dev/pci/pci_private.h#9 integrate .. //depot/projects/usb/src/sys/dev/pci/pcireg.h#19 integrate .. //depot/projects/usb/src/sys/dev/pci/pcivar.h#14 integrate .. //depot/projects/usb/src/sys/dev/pcn/if_pcn.c#6 integrate .. //depot/projects/usb/src/sys/dev/re/if_re.c#29 integrate .. //depot/projects/usb/src/sys/dev/sf/if_sf.c#5 integrate .. //depot/projects/usb/src/sys/dev/sge/if_sge.c#6 integrate .. //depot/projects/usb/src/sys/dev/siis/siis.c#16 integrate .. //depot/projects/usb/src/sys/dev/sis/if_sis.c#10 integrate .. //depot/projects/usb/src/sys/dev/sk/if_sk.c#13 integrate .. //depot/projects/usb/src/sys/dev/smc/if_smc.c#6 integrate .. //depot/projects/usb/src/sys/dev/sound/pcm/channel.c#10 integrate .. //depot/projects/usb/src/sys/dev/ste/if_ste.c#9 integrate .. //depot/projects/usb/src/sys/dev/stge/if_stge.c#12 integrate .. //depot/projects/usb/src/sys/dev/tl/if_tl.c#5 integrate .. //depot/projects/usb/src/sys/dev/tl/if_tlreg.h#3 integrate .. //depot/projects/usb/src/sys/dev/tsec/if_tsec.c#9 integrate .. //depot/projects/usb/src/sys/dev/tx/if_tx.c#7 integrate .. //depot/projects/usb/src/sys/dev/usb/controller/ehci.c#63 integrate .. //depot/projects/usb/src/sys/dev/usb/controller/ehcireg.h#6 integrate .. //depot/projects/usb/src/sys/dev/usb/net/usb_ethernet.c#15 integrate .. //depot/projects/usb/src/sys/dev/usb/storage/umass.c#58 integrate .. //depot/projects/usb/src/sys/dev/usb/usb_device.c#82 integrate .. //depot/projects/usb/src/sys/dev/usb/usb_freebsd.h#3 integrate .. //depot/projects/usb/src/sys/dev/usb/usb_hub.c#61 integrate .. //depot/projects/usb/src/sys/dev/usb/usbdevs#143 integrate .. //depot/projects/usb/src/sys/dev/usb/usbdi.h#24 integrate .. //depot/projects/usb/src/sys/dev/vge/if_vge.c#15 integrate .. //depot/projects/usb/src/sys/dev/vr/if_vr.c#8 integrate .. //depot/projects/usb/src/sys/dev/vr/if_vrreg.h#3 integrate .. //depot/projects/usb/src/sys/dev/wb/if_wb.c#5 integrate .. //depot/projects/usb/src/sys/dev/xen/balloon/balloon.c#4 integrate .. //depot/projects/usb/src/sys/dev/xen/blkback/blkback.c#5 integrate .. //depot/projects/usb/src/sys/dev/xen/blkfront/blkfront.c#10 integrate .. //depot/projects/usb/src/sys/dev/xen/blkfront/block.h#4 integrate .. //depot/projects/usb/src/sys/dev/xen/control/control.c#1 branch .. //depot/projects/usb/src/sys/dev/xen/netfront/netfront.c#17 integrate .. //depot/projects/usb/src/sys/dev/xen/xenpci/evtchn.c#2 integrate .. //depot/projects/usb/src/sys/dev/xen/xenpci/xenpci.c#2 integrate .. //depot/projects/usb/src/sys/dev/xl/if_xl.c#10 integrate .. //depot/projects/usb/src/sys/fs/msdosfs/msdosfs_lookup.c#5 integrate .. //depot/projects/usb/src/sys/fs/nfs/nfs_var.h#12 integrate .. //depot/projects/usb/src/sys/fs/nfs/nfsclstate.h#3 integrate .. //depot/projects/usb/src/sys/fs/nfs/nfsdport.h#4 integrate .. //depot/projects/usb/src/sys/fs/nfsclient/nfs_clnode.c#8 integrate .. //depot/projects/usb/src/sys/fs/nfsclient/nfs_clstate.c#13 integrate .. //depot/projects/usb/src/sys/fs/nfsclient/nfs_clvfsops.c#10 integrate .. //depot/projects/usb/src/sys/fs/nfsclient/nfs_clvnops.c#19 integrate .. //depot/projects/usb/src/sys/fs/nfsclient/nfsmount.h#4 integrate .. //depot/projects/usb/src/sys/fs/nfsserver/nfs_nfsdport.c#13 integrate .. //depot/projects/usb/src/sys/geom/eli/g_eli.c#13 integrate .. //depot/projects/usb/src/sys/geom/eli/g_eli.h#7 integrate .. //depot/projects/usb/src/sys/geom/eli/g_eli_ctl.c#7 integrate .. //depot/projects/usb/src/sys/geom/eli/g_eli_integrity.c#3 integrate .. //depot/projects/usb/src/sys/geom/eli/g_eli_key.c#5 integrate .. //depot/projects/usb/src/sys/geom/eli/g_eli_privacy.c#3 integrate .. //depot/projects/usb/src/sys/geom/geom_dev.c#15 integrate .. //depot/projects/usb/src/sys/geom/part/g_part.c#29 integrate .. //depot/projects/usb/src/sys/geom/part/g_part.h#11 integrate .. //depot/projects/usb/src/sys/geom/part/g_part_gpt.c#23 integrate .. //depot/projects/usb/src/sys/geom/part/g_part_if.m#8 integrate .. //depot/projects/usb/src/sys/i386/acpica/acpi_wakeup.c#8 integrate .. //depot/projects/usb/src/sys/i386/acpica/madt.c#11 integrate .. //depot/projects/usb/src/sys/i386/i386/apic_vector.s#6 integrate .. //depot/projects/usb/src/sys/i386/i386/dump_machdep.c#7 delete .. //depot/projects/usb/src/sys/i386/i386/elan-mmcr.c#6 integrate .. //depot/projects/usb/src/sys/i386/i386/genassym.c#11 integrate .. //depot/projects/usb/src/sys/i386/i386/identcpu.c#22 integrate .. //depot/projects/usb/src/sys/i386/i386/initcpu.c#13 integrate .. //depot/projects/usb/src/sys/i386/i386/intr_machdep.c#15 integrate .. //depot/projects/usb/src/sys/i386/i386/longrun.c#3 integrate .. //depot/projects/usb/src/sys/i386/i386/machdep.c#32 integrate .. //depot/projects/usb/src/sys/i386/i386/mp_machdep.c#25 integrate .. //depot/projects/usb/src/sys/i386/i386/mp_watchdog.c#4 integrate .. //depot/projects/usb/src/sys/i386/i386/mpboot.s#3 integrate .. //depot/projects/usb/src/sys/i386/i386/mptable.c#5 delete .. //depot/projects/usb/src/sys/i386/i386/mptable_pci.c#5 delete .. //depot/projects/usb/src/sys/i386/i386/nexus.c#10 delete .. //depot/projects/usb/src/sys/i386/i386/perfmon.c#2 integrate .. //depot/projects/usb/src/sys/i386/i386/trap.c#22 integrate .. //depot/projects/usb/src/sys/i386/include/apicreg.h#4 delete .. //depot/projects/usb/src/sys/i386/include/mca.h#5 delete .. //depot/projects/usb/src/sys/i386/include/profile.h#4 integrate .. //depot/projects/usb/src/sys/i386/isa/npx.c#13 integrate .. //depot/projects/usb/src/sys/i386/xen/mp_machdep.c#16 integrate .. //depot/projects/usb/src/sys/i386/xen/mptable.c#3 integrate .. //depot/projects/usb/src/sys/i386/xen/xen_machdep.c#12 integrate .. //depot/projects/usb/src/sys/kern/init_main.c#21 integrate .. //depot/projects/usb/src/sys/kern/kern_clock.c#14 integrate .. //depot/projects/usb/src/sys/kern/kern_cpuset.c#10 integrate .. //depot/projects/usb/src/sys/kern/kern_exec.c#29 integrate .. //depot/projects/usb/src/sys/kern/kern_exit.c#29 integrate .. //depot/projects/usb/src/sys/kern/kern_fork.c#24 integrate .. //depot/projects/usb/src/sys/kern/kern_kthread.c#13 integrate .. //depot/projects/usb/src/sys/kern/kern_ktrace.c#15 integrate .. //depot/projects/usb/src/sys/kern/kern_resource.c#16 integrate .. //depot/projects/usb/src/sys/kern/kern_shutdown.c#20 integrate .. //depot/projects/usb/src/sys/kern/kern_syscalls.c#6 integrate .. //depot/projects/usb/src/sys/kern/kern_thr.c#20 integrate .. //depot/projects/usb/src/sys/kern/kern_thread.c#21 integrate .. //depot/projects/usb/src/sys/kern/kern_timeout.c#16 integrate .. //depot/projects/usb/src/sys/kern/sched_ule.c#29 integrate .. //depot/projects/usb/src/sys/kern/subr_acl_nfs4.c#9 integrate .. //depot/projects/usb/src/sys/kern/subr_clock.c#6 integrate .. //depot/projects/usb/src/sys/kern/vfs_bio.c#31 integrate .. //depot/projects/usb/src/sys/kern/vfs_cache.c#30 integrate .. //depot/projects/usb/src/sys/kern/vfs_mount.c#39 integrate .. //depot/projects/usb/src/sys/kern/vfs_mountroot.c#2 integrate .. //depot/projects/usb/src/sys/mips/atheros/if_arge.c#6 integrate .. //depot/projects/usb/src/sys/mips/cavium/octe/octe.c#4 integrate .. //depot/projects/usb/src/sys/mips/cavium/octeon_ebt3000_cf.c#5 integrate .. //depot/projects/usb/src/sys/mips/idt/if_kr.c#5 integrate .. //depot/projects/usb/src/sys/mips/rmi/board.c#7 integrate .. //depot/projects/usb/src/sys/mips/rmi/dev/nlge/if_nlge.c#4 integrate .. //depot/projects/usb/src/sys/mips/rmi/xlr_machdep.c#8 integrate .. //depot/projects/usb/src/sys/modules/Makefile#56 integrate .. //depot/projects/usb/src/sys/modules/acpi/acpi/Makefile#17 integrate .. //depot/projects/usb/src/sys/modules/agp/Makefile#7 integrate .. //depot/projects/usb/src/sys/modules/mii/Makefile#9 integrate .. //depot/projects/usb/src/sys/modules/mps/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/wlan/Makefile#14 integrate .. //depot/projects/usb/src/sys/net/bpf.h#10 integrate .. //depot/projects/usb/src/sys/net/if.c#52 integrate .. //depot/projects/usb/src/sys/net/if.h#18 integrate .. //depot/projects/usb/src/sys/net/if_debug.c#1 branch .. //depot/projects/usb/src/sys/net/if_llatbl.c#12 integrate .. //depot/projects/usb/src/sys/net/if_llatbl.h#7 integrate .. //depot/projects/usb/src/sys/net/rtsock.c#37 integrate .. //depot/projects/usb/src/sys/net80211/ieee80211_ratectl.c#2 integrate .. //depot/projects/usb/src/sys/net80211/ieee80211_ratectl.h#2 integrate .. //depot/projects/usb/src/sys/net80211/ieee80211_ratectl_none.c#1 branch .. //depot/projects/usb/src/sys/netinet/if_ether.c#38 integrate .. //depot/projects/usb/src/sys/netinet/in.c#48 integrate .. //depot/projects/usb/src/sys/netinet/in_debug.c#1 branch .. //depot/projects/usb/src/sys/netinet/ip_ipsec.c#20 integrate .. //depot/projects/usb/src/sys/netinet/libalias/libalias.3#4 integrate .. //depot/projects/usb/src/sys/netinet/tcp_reass.c#16 integrate .. //depot/projects/usb/src/sys/netinet6/ip6_ipsec.c#13 integrate .. //depot/projects/usb/src/sys/netipsec/ipsec.c#26 integrate .. //depot/projects/usb/src/sys/netipsec/ipsec_input.c#16 integrate .. //depot/projects/usb/src/sys/netipsec/ipsec_output.c#15 integrate .. //depot/projects/usb/src/sys/netipsec/key.c#30 integrate .. //depot/projects/usb/src/sys/netipsec/keydb.h#4 integrate .. //depot/projects/usb/src/sys/nfs/nfs_lock.c#2 integrate .. //depot/projects/usb/src/sys/nfs/nfs_lock.h#2 integrate .. //depot/projects/usb/src/sys/nfs/nfs_mountcommon.h#1 branch .. //depot/projects/usb/src/sys/nfsclient/nfs.h#14 integrate .. //depot/projects/usb/src/sys/nfsclient/nfs_bio.c#24 integrate .. //depot/projects/usb/src/sys/nfsclient/nfs_nfsiod.c#9 integrate .. //depot/projects/usb/src/sys/nfsclient/nfs_node.c#13 integrate .. //depot/projects/usb/src/sys/nfsclient/nfs_vfsops.c#26 integrate .. //depot/projects/usb/src/sys/nfsclient/nfs_vnops.c#37 integrate .. //depot/projects/usb/src/sys/nfsclient/nfsmount.h#9 integrate .. //depot/projects/usb/src/sys/nfsclient/nfsnode.h#12 integrate .. //depot/projects/usb/src/sys/nfsserver/nfs_serv.c#20 integrate .. //depot/projects/usb/src/sys/nlm/nlm_advlock.c#9 integrate .. //depot/projects/usb/src/sys/nlm/nlm_prot_impl.c#11 integrate .. //depot/projects/usb/src/sys/pc98/include/apicreg.h#2 delete .. //depot/projects/usb/src/sys/pc98/include/bus.h#4 integrate .. //depot/projects/usb/src/sys/pc98/include/mca.h#2 delete .. //depot/projects/usb/src/sys/pc98/pc98/busiosubr.c#4 integrate .. //depot/projects/usb/src/sys/pc98/pc98/machdep.c#22 integrate .. //depot/projects/usb/src/sys/pci/if_rl.c#18 integrate .. //depot/projects/usb/src/sys/powerpc/aim/copyinout.c#5 integrate .. //depot/projects/usb/src/sys/powerpc/aim/mmu_oea.c#18 integrate .. //depot/projects/usb/src/sys/powerpc/aim/mmu_oea64.c#18 integrate .. //depot/projects/usb/src/sys/powerpc/aim/slb.c#3 integrate .. //depot/projects/usb/src/sys/powerpc/aim/swtch32.S#2 integrate .. //depot/projects/usb/src/sys/powerpc/aim/swtch64.S#2 integrate .. //depot/projects/usb/src/sys/powerpc/aim/trap.c#12 integrate .. //depot/projects/usb/src/sys/powerpc/aim/trap_subr32.S#2 integrate .. //depot/projects/usb/src/sys/powerpc/aim/trap_subr64.S#3 integrate .. //depot/projects/usb/src/sys/powerpc/aim/vm_machdep.c#9 integrate .. //depot/projects/usb/src/sys/powerpc/conf/GENERIC#32 integrate .. //depot/projects/usb/src/sys/powerpc/conf/GENERIC64#3 integrate .. //depot/projects/usb/src/sys/powerpc/conf/NOTES#17 integrate .. //depot/projects/usb/src/sys/powerpc/include/pcb.h#9 integrate .. //depot/projects/usb/src/sys/powerpc/include/slb.h#2 integrate .. //depot/projects/usb/src/sys/powerpc/include/sr.h#5 integrate .. //depot/projects/usb/src/sys/powerpc/mambo/mambo_console.c#2 integrate .. //depot/projects/usb/src/sys/powerpc/powermac/cpcht.c#4 integrate .. //depot/projects/usb/src/sys/powerpc/powermac/fcu.c#1 branch .. //depot/projects/usb/src/sys/powerpc/powerpc/exec_machdep.c#3 integrate .. //depot/projects/usb/src/sys/powerpc/powerpc/genassym.c#11 integrate .. //depot/projects/usb/src/sys/security/mac/mac_vfs.c#11 integrate .. //depot/projects/usb/src/sys/sparc64/include/tick.h#6 integrate .. //depot/projects/usb/src/sys/sparc64/sparc64/mp_machdep.c#17 integrate .. //depot/projects/usb/src/sys/sparc64/sparc64/pmap.c#21 integrate .. //depot/projects/usb/src/sys/sparc64/sparc64/tick.c#8 integrate .. //depot/projects/usb/src/sys/sys/ktrace.h#7 integrate .. //depot/projects/usb/src/sys/sys/proc.h#32 integrate .. //depot/projects/usb/src/sys/sys/sockio.h#9 integrate .. //depot/projects/usb/src/sys/sys/systm.h#27 integrate .. //depot/projects/usb/src/sys/ufs/ufs/ufs_dirhash.c#13 integrate .. //depot/projects/usb/src/sys/vm/swap_pager.c#22 integrate .. //depot/projects/usb/src/sys/vm/uma.h#9 integrate .. //depot/projects/usb/src/sys/vm/uma_core.c#17 integrate .. //depot/projects/usb/src/sys/vm/vm_map.c#30 integrate .. //depot/projects/usb/src/sys/vm/vm_map.h#14 integrate .. //depot/projects/usb/src/sys/vm/vm_phys.c#10 integrate .. //depot/projects/usb/src/sys/vm/vm_reserv.c#4 integrate .. //depot/projects/usb/src/sys/x86/include/apicreg.h#1 branch .. //depot/projects/usb/src/sys/x86/include/mca.h#1 branch .. //depot/projects/usb/src/sys/x86/isa/atrtc.c#3 integrate .. //depot/projects/usb/src/sys/x86/x86/dump_machdep.c#1 branch .. //depot/projects/usb/src/sys/x86/x86/io_apic.c#2 integrate .. //depot/projects/usb/src/sys/x86/x86/local_apic.c#4 integrate .. //depot/projects/usb/src/sys/x86/x86/mca.c#2 integrate .. //depot/projects/usb/src/sys/x86/x86/mptable.c#1 branch .. //depot/projects/usb/src/sys/x86/x86/mptable_pci.c#1 branch .. //depot/projects/usb/src/sys/x86/x86/msi.c#2 integrate .. //depot/projects/usb/src/sys/x86/x86/nexus.c#1 branch .. //depot/projects/usb/src/sys/xen/blkif.h#1 branch .. //depot/projects/usb/src/sys/xen/evtchn/evtchn.c#9 integrate .. //depot/projects/usb/src/sys/xen/gnttab.c#8 integrate .. //depot/projects/usb/src/sys/xen/gnttab.h#7 integrate .. //depot/projects/usb/src/sys/xen/interface/grant_table.h#4 integrate .. //depot/projects/usb/src/sys/xen/interface/hvm/params.h#4 integrate .. //depot/projects/usb/src/sys/xen/interface/io/blkif.h#3 integrate .. //depot/projects/usb/src/sys/xen/interface/io/protocols.h#3 integrate .. //depot/projects/usb/src/sys/xen/interface/io/ring.h#3 integrate .. //depot/projects/usb/src/sys/xen/interface/io/xenbus.h#3 integrate .. //depot/projects/usb/src/sys/xen/reboot.c#3 delete .. //depot/projects/usb/src/sys/xen/xen_intr.h#3 integrate .. //depot/projects/usb/src/sys/xen/xenbus/init.txt#2 delete .. //depot/projects/usb/src/sys/xen/xenbus/xenbus.c#1 branch .. //depot/projects/usb/src/sys/xen/xenbus/xenbus_client.c#4 delete .. //depot/projects/usb/src/sys/xen/xenbus/xenbus_comms.c#4 delete .. //depot/projects/usb/src/sys/xen/xenbus/xenbus_comms.h#4 delete .. //depot/projects/usb/src/sys/xen/xenbus/xenbus_dev.c#4 delete .. //depot/projects/usb/src/sys/xen/xenbus/xenbus_if.m#2 integrate .. //depot/projects/usb/src/sys/xen/xenbus/xenbus_probe.c#8 delete .. //depot/projects/usb/src/sys/xen/xenbus/xenbus_probe_backend.c#4 delete .. //depot/projects/usb/src/sys/xen/xenbus/xenbus_xs.c#7 delete .. //depot/projects/usb/src/sys/xen/xenbus/xenbusb.c#1 branch .. //depot/projects/usb/src/sys/xen/xenbus/xenbusb.h#1 branch .. //depot/projects/usb/src/sys/xen/xenbus/xenbusb_back.c#1 branch .. //depot/projects/usb/src/sys/xen/xenbus/xenbusb_front.c#1 branch .. //depot/projects/usb/src/sys/xen/xenbus/xenbusb_if.m#1 branch .. //depot/projects/usb/src/sys/xen/xenbus/xenbusvar.h#3 integrate .. //depot/projects/usb/src/sys/xen/xenstore/xenstore.c#1 branch .. //depot/projects/usb/src/sys/xen/xenstore/xenstore_dev.c#1 branch .. //depot/projects/usb/src/sys/xen/xenstore/xenstore_internal.h#1 branch .. //depot/projects/usb/src/sys/xen/xenstore/xenstorevar.h#1 branch .. //depot/projects/usb/src/usr.sbin/usbconfig/usbconfig.c#23 integrate Differences ... ==== //depot/projects/usb/src/lib/libusbhid/Makefile#6 (text+ko) ==== @@ -1,5 +1,5 @@ # $NetBSD: Makefile,v 1.5 1999/07/23 09:44:38 mrg Exp $ -# $FreeBSD: src/lib/libusbhid/Makefile,v 1.13 2009/07/19 17:25:24 kensmith Exp $ +# $FreeBSD: src/lib/libusbhid/Makefile,v 1.14 2010/10/16 11:20:53 hselasky Exp $ LIB= usbhid MAN= usbhid.3 @@ -19,4 +19,8 @@ INCS= usbhid.h +.if defined(COMPAT_32BIT) +CFLAGS+= -DCOMPAT_32BIT +.endif + .include ==== //depot/projects/usb/src/lib/libusbhid/descr.c#10 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libusbhid/descr.c,v 1.13 2010/03/27 08:00:16 kaiw Exp $"); +__FBSDID("$FreeBSD: src/lib/libusbhid/descr.c,v 1.14 2010/10/16 11:20:53 hselasky Exp $"); #include @@ -103,7 +103,7 @@ memset(&ugd, 0, sizeof(ugd)); /* get actual length first */ - ugd.ugd_data = NULL; + ugd.ugd_data = hid_pass_ptr(NULL); ugd.ugd_maxlen = 65535; if (ioctl(fd, USB_GET_REPORT_DESC, &ugd) < 0) { #ifdef HID_COMPAT7 @@ -124,7 +124,7 @@ return (NULL); /* fetch actual descriptor */ - ugd.ugd_data = data; + ugd.ugd_data = hid_pass_ptr(data); ugd.ugd_maxlen = ugd.ugd_actlen; if (ioctl(fd, USB_GET_REPORT_DESC, &ugd) < 0) { /* could not read descriptor */ @@ -132,8 +132,15 @@ return (NULL); } + /* sanity check */ + if (ugd.ugd_actlen < 1) { + /* invalid report descriptor */ + free(data); + return (NULL); + } + /* check END_COLLECTION */ - if (((unsigned char *)ugd.ugd_data)[ugd.ugd_actlen -1] != 0xC0) { + if (((unsigned char *)data)[ugd.ugd_actlen -1] != 0xC0) { /* invalid end byte */ free(data); return (NULL); ==== //depot/projects/usb/src/lib/libusbhid/usbvar.h#6 (text+ko) ==== @@ -25,10 +25,13 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libusbhid/usbvar.h,v 1.5 2010/03/27 08:00:16 kaiw Exp $ + * $FreeBSD: src/lib/libusbhid/usbvar.h,v 1.6 2010/10/16 11:20:53 hselasky Exp $ * */ +#ifndef _USBVAR_H_ +#define _USBVAR_H_ + struct report_desc { uint32_t size; uint8_t data[1]; @@ -41,3 +44,11 @@ int hid_get_report_id_compat7(int fd); report_desc_t hid_get_report_desc_compat7(int fd); #endif + +#ifdef COMPAT_32BIT +#define hid_pass_ptr(ptr) ((uint64_t)(uintptr_t)(ptr)) +#else +#define hid_pass_ptr(ptr) (ptr) +#endif + +#endif /* _USBVAR_H_ */ ==== //depot/projects/usb/src/sys/amd64/acpica/acpi_wakeup.c#10 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/acpica/acpi_wakeup.c,v 1.37 2010/08/13 22:08:42 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/acpica/acpi_wakeup.c,v 1.39 2010/11/01 18:18:46 jhb Exp $"); #include #include @@ -41,13 +41,13 @@ #include #include -#include +#include #include #include #include #ifdef SMP -#include +#include #include #include #endif ==== //depot/projects/usb/src/sys/amd64/acpica/madt.c#10 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/acpica/madt.c,v 1.30 2010/06/11 18:46:34 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/acpica/madt.c,v 1.31 2010/11/01 18:18:46 jhb Exp $"); #include #include @@ -39,7 +39,7 @@ #include #include -#include +#include #include #include ==== //depot/projects/usb/src/sys/amd64/amd64/amd64_mem.c#7 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/amd64_mem.c,v 1.33 2010/02/02 01:20:33 rnoland Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/amd64_mem.c,v 1.34 2010/10/27 16:46:37 alc Exp $"); #include #include @@ -35,6 +35,10 @@ #include #include +#include +#include +#include + #include #include #include @@ -527,9 +531,9 @@ amd64_mrset(struct mem_range_softc *sc, struct mem_range_desc *mrd, int *arg) { struct mem_range_desc *targ; - int error = 0; + int error, i; - switch(*arg) { + switch (*arg) { case MEMRANGE_SET_UPDATE: /* * Make sure that what's being asked for is even @@ -568,6 +572,21 @@ return (EOPNOTSUPP); } + /* + * Ensure that the direct map region does not contain any mappings + * that span MTRRs of different types. However, the fixed MTRRs can + * be ignored, because a large page mapping the first 1 MB of physical + * memory is a special case that the processor handles. The entire + * TLB will be invalidated by amd64_mrstore(), so pmap_demote_DMAP() + * needn't do it. + */ + i = (sc->mr_cap & MR686_FIXMTRR) ? MTRR_N64K + MTRR_N16K + MTRR_N4K : 0; + mrd = sc->mr_desc + i; + for (; i < sc->mr_ndesc; i++, mrd++) { + if (mrd->mr_flags & MDF_ACTIVE) + pmap_demote_DMAP(mrd->mr_base, mrd->mr_len, FALSE); + } + /* Update the hardware. */ amd64_mrstore(sc); @@ -657,6 +676,21 @@ if (mrd->mr_flags & MDF_ACTIVE) mrd->mr_flags |= MDF_FIRMWARE; } + + /* + * Ensure that the direct map region does not contain any mappings + * that span MTRRs of different types. However, the fixed MTRRs can + * be ignored, because a large page mapping the first 1 MB of physical + * memory is a special case that the processor handles. Invalidate + * any old TLB entries that might hold inconsistent memory type + * information. + */ + i = (sc->mr_cap & MR686_FIXMTRR) ? MTRR_N64K + MTRR_N16K + MTRR_N4K : 0; + mrd = sc->mr_desc + i; + for (; i < sc->mr_ndesc; i++, mrd++) { + if (mrd->mr_flags & MDF_ACTIVE) + pmap_demote_DMAP(mrd->mr_base, mrd->mr_len, TRUE); + } } /* ==== //depot/projects/usb/src/sys/amd64/amd64/apic_vector.S#8 (text+ko) ==== @@ -28,7 +28,7 @@ * SUCH DAMAGE. * * from: vector.s, 386BSD 0.1 unknown origin - * $FreeBSD: src/sys/amd64/amd64/apic_vector.S,v 1.117 2010/06/17 11:54:49 mav Exp $ + * $FreeBSD: src/sys/amd64/amd64/apic_vector.S,v 1.118 2010/11/01 18:18:46 jhb Exp $ */ /* @@ -39,7 +39,7 @@ #include "opt_smp.h" #include -#include +#include #include "assym.s" ==== //depot/projects/usb/src/sys/amd64/amd64/fpu.c#9 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.173 2010/07/26 23:20:55 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/fpu.c,v 1.174 2010/10/25 15:31:13 jhb Exp $"); #include #include @@ -113,14 +113,14 @@ void fpuinit(void) { - register_t savecrit; + register_t saveintr; u_int mxcsr; u_short control; /* * It is too early for critical_enter() to work on AP. */ - savecrit = intr_disable(); + saveintr = intr_disable(); stop_emulating(); fninit(); control = __INITIAL_FPUCW__; @@ -137,7 +137,7 @@ bzero(fpu_initialstate.sv_xmm, sizeof(fpu_initialstate.sv_xmm)); } start_emulating(); - intr_restore(savecrit); + intr_restore(saveintr); } /* ==== //depot/projects/usb/src/sys/amd64/amd64/genassym.c#16 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/genassym.c,v 1.181 2010/08/02 18:12:30 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/genassym.c,v 1.182 2010/11/01 18:18:46 jhb Exp $"); #include "opt_compat.h" #include "opt_hwpmc_hooks.h" @@ -66,7 +66,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/usb/src/sys/amd64/amd64/intr_machdep.c#15 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.51 2010/07/02 17:22:15 mav Exp $ + * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.52 2010/10/28 13:44:19 jhb Exp $ */ /* @@ -458,7 +458,7 @@ /* Leave all interrupts on the BSP during boot. */ if (!assign_cpu) - return (cpu_apic_ids[0]); + return (PCPU_GET(apic_id)); mtx_lock_spin(&icu_lock); apic_id = cpu_apic_ids[current_cpu]; ==== //depot/projects/usb/src/sys/amd64/amd64/machdep.c#36 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.726 2010/10/12 20:53:12 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.727 2010/11/01 17:40:35 jhb Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -112,7 +112,7 @@ #include #include #include -#include +#include #include #include #include ==== //depot/projects/usb/src/sys/amd64/amd64/mp_machdep.c#30 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.333 2010/10/01 10:32:54 avg Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.335 2010/11/01 18:18:46 jhb Exp $"); #include "opt_cpu.h" #include "opt_kstack_pages.h" @@ -57,11 +57,11 @@ #include #include -#include +#include #include #include #include -#include +#include #include #include #include ==== //depot/projects/usb/src/sys/amd64/amd64/mp_watchdog.c#4 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/amd64/mp_watchdog.c,v 1.6 2007/12/25 17:51:55 rwatson Exp $ + * $FreeBSD: src/sys/amd64/amd64/mp_watchdog.c,v 1.7 2010/11/01 18:18:46 jhb Exp $ */ #include "opt_mp_watchdog.h" @@ -44,7 +44,7 @@ #include #include -#include +#include #include #include ==== //depot/projects/usb/src/sys/amd64/amd64/pmap.c#42 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.711 2010/08/17 12:17:24 gahr Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.715 2010/10/30 23:49:37 alc Exp $"); /* * Manages physical address maps. @@ -462,7 +462,7 @@ if (ndmpdp < 4) /* Minimum 4GB of dirmap */ ndmpdp = 4; DMPDPphys = allocpages(firstaddr, NDMPML4E); - if (TRUE || (amd_feature & AMDID_PAGE1GB) == 0) + if ((amd_feature & AMDID_PAGE1GB) == 0) DMPDphys = allocpages(firstaddr, ndmpdp); dmaplimit = (vm_paddr_t)ndmpdp << PDPSHIFT; @@ -494,11 +494,16 @@ ((pdp_entry_t *)KPDPphys)[i + KPDPI] |= PG_RW | PG_V | PG_U; } - /* Now set up the direct map space using either 2MB or 1GB pages */ - /* Preset PG_M and PG_A because demotion expects it */ - if (TRUE || (amd_feature & AMDID_PAGE1GB) == 0) { + /* + * Now, set up the direct map region using either 2MB or 1GB pages. + * Later, if pmap_mapdev{_attr}() uses the direct map for non-write- + * back memory, pmap_change_attr() will demote any 2MB or 1GB page + * mappings that are partially used. + */ + if ((amd_feature & AMDID_PAGE1GB) == 0) { for (i = 0; i < NPDEPG * ndmpdp; i++) { ((pd_entry_t *)DMPDphys)[i] = (vm_paddr_t)i << PDRSHIFT; + /* Preset PG_M and PG_A because demotion expects it. */ ((pd_entry_t *)DMPDphys)[i] |= PG_RW | PG_V | PG_PS | PG_G | PG_M | PG_A; } @@ -512,6 +517,7 @@ for (i = 0; i < ndmpdp; i++) { ((pdp_entry_t *)DMPDPphys)[i] = (vm_paddr_t)i << PDPSHIFT; + /* Preset PG_M and PG_A because demotion expects it. */ ((pdp_entry_t *)DMPDPphys)[i] |= PG_RW | PG_V | PG_PS | PG_G | PG_M | PG_A; } @@ -1163,26 +1169,33 @@ vm_paddr_t pmap_extract(pmap_t pmap, vm_offset_t va) { - vm_paddr_t rtval; + pdp_entry_t *pdpe; + pd_entry_t *pde; pt_entry_t *pte; - pd_entry_t pde, *pdep; + vm_paddr_t pa; - rtval = 0; + pa = 0; PMAP_LOCK(pmap); - pdep = pmap_pde(pmap, va); - if (pdep != NULL) { - pde = *pdep; - if (pde) { - if ((pde & PG_PS) != 0) - rtval = (pde & PG_PS_FRAME) | (va & PDRMASK); - else { - pte = pmap_pde_to_pte(pdep, va); - rtval = (*pte & PG_FRAME) | (va & PAGE_MASK); + pdpe = pmap_pdpe(pmap, va); + if (pdpe != NULL && (*pdpe & PG_V) != 0) { + if ((*pdpe & PG_PS) != 0) + pa = (*pdpe & PG_PS_FRAME) | (va & PDPMASK); + else { + pde = pmap_pdpe_to_pde(pdpe, va); + if ((*pde & PG_V) != 0) { + if ((*pde & PG_PS) != 0) { + pa = (*pde & PG_PS_FRAME) | + (va & PDRMASK); + } else { + pte = pmap_pde_to_pte(pde, va); + pa = (*pte & PG_FRAME) | + (va & PAGE_MASK); + } } } } PMAP_UNLOCK(pmap); - return (rtval); + return (pa); } /* @@ -4941,6 +4954,54 @@ } /* + * Demotes any mapping within the direct map region that covers more than the + * specified range of physical addresses. This range's size must be a power + * of two and its starting address must be a multiple of its size. Since the + * demotion does not change any attributes of the mapping, a TLB invalidation + * is not mandatory. The caller may, however, request a TLB invalidation. + */ +void +pmap_demote_DMAP(vm_paddr_t base, vm_size_t len, boolean_t invalidate) +{ + pdp_entry_t *pdpe; + pd_entry_t *pde; + vm_offset_t va; + boolean_t changed; + + if (len == 0) + return; + KASSERT(powerof2(len), ("pmap_demote_DMAP: len is not a power of 2")); + KASSERT((base & (len - 1)) == 0, + ("pmap_demote_DMAP: base is not a multiple of len")); + if (len < NBPDP && base < dmaplimit) { + va = PHYS_TO_DMAP(base); + changed = FALSE; + PMAP_LOCK(kernel_pmap); + pdpe = pmap_pdpe(kernel_pmap, va); + if ((*pdpe & PG_V) == 0) + panic("pmap_demote_DMAP: invalid PDPE"); + if ((*pdpe & PG_PS) != 0) { + if (!pmap_demote_pdpe(kernel_pmap, pdpe, va)) + panic("pmap_demote_DMAP: PDPE failed"); + changed = TRUE; + } + if (len < NBPDR) { + pde = pmap_pdpe_to_pde(pdpe, va); + if ((*pde & PG_V) == 0) + panic("pmap_demote_DMAP: invalid PDE"); + if ((*pde & PG_PS) != 0) { + if (!pmap_demote_pde(kernel_pmap, pde, va)) + panic("pmap_demote_DMAP: PDE failed"); + changed = TRUE; + } + } + if (changed && invalidate) + pmap_invalidate_page(kernel_pmap, va); + PMAP_UNLOCK(kernel_pmap); + } +} + +/* * perform the pmap work for mincore */ int ==== //depot/projects/usb/src/sys/amd64/amd64/trap.c#27 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.348 2010/08/25 09:10:32 rpaulo Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.349 2010/11/01 17:40:35 jhb Exp $"); /* * AMD64 Trap and System call handling @@ -83,7 +83,7 @@ #include #include -#include +#include #include #include #ifdef SMP ==== //depot/projects/usb/src/sys/amd64/include/pmap.h#14 (text+ko) ==== @@ -39,7 +39,7 @@ * * from: hp300: @(#)pmap.h 7.2 (Berkeley) 12/16/90 * from: @(#)pmap.h 7.4 (Berkeley) 5/12/91 - * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.154 2010/07/09 20:05:56 kib Exp $ + * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.155 2010/10/27 16:46:37 alc Exp $ */ #ifndef _MACHINE_PMAP_H_ @@ -307,6 +307,7 @@ void pmap_bootstrap(vm_paddr_t *); int pmap_change_attr(vm_offset_t, vm_size_t, int); +void pmap_demote_DMAP(vm_paddr_t base, vm_size_t len, boolean_t invalidate); void pmap_init_pat(void); void pmap_kenter(vm_offset_t va, vm_paddr_t pa); void *pmap_kenter_temporary(vm_paddr_t pa, int i); ==== //depot/projects/usb/src/sys/amd64/include/profile.h#3 (text+ko) ==== @@ -27,7 +27,7 @@ * SUCH DAMAGE. * * @(#)profile.h 8.1 (Berkeley) 6/11/93 - * $FreeBSD: src/sys/amd64/include/profile.h,v 1.48 2006/10/28 13:12:06 bde Exp $ + * $FreeBSD: src/sys/amd64/include/profile.h,v 1.49 2010/10/25 15:28:03 jhb Exp $ >>> TRUNCATED FOR MAIL (1000 lines) <<<