From owner-p4-projects@FreeBSD.ORG Mon Jul 21 08:46:12 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 873CC1065679; Mon, 21 Jul 2008 08:46:12 +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 497641065677 for ; Mon, 21 Jul 2008 08:46:12 +0000 (UTC) (envelope-from zec@tel.fer.hr) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 28D308FC18 for ; Mon, 21 Jul 2008 08:46:12 +0000 (UTC) (envelope-from zec@tel.fer.hr) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m6L8kCt3066932 for ; Mon, 21 Jul 2008 08:46:12 GMT (envelope-from zec@tel.fer.hr) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.2/8.14.1/Submit) id m6L8kBoO066930 for perforce@freebsd.org; Mon, 21 Jul 2008 08:46:11 GMT (envelope-from zec@tel.fer.hr) Date: Mon, 21 Jul 2008 08:46:11 GMT Message-Id: <200807210846.m6L8kBoO066930@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to zec@tel.fer.hr using -f From: Marko Zec To: Perforce Change Reviews Cc: Subject: PERFORCE change 145546 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Jul 2008 08:46:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=145546 Change 145546 by zec@zec_tpx32 on 2008/07/21 08:46:10 IFC @ 145420 Affected files ... .. //depot/projects/vimage-devel/src/sys/Makefile#2 integrate .. //depot/projects/vimage-devel/src/sys/amd64/amd64/busdma_machdep.c#2 integrate .. //depot/projects/vimage-devel/src/sys/amd64/amd64/machdep.c#2 integrate .. //depot/projects/vimage-devel/src/sys/amd64/amd64/minidump_machdep.c#6 integrate .. //depot/projects/vimage-devel/src/sys/amd64/amd64/mp_machdep.c#2 integrate .. //depot/projects/vimage-devel/src/sys/amd64/amd64/pmap.c#4 integrate .. //depot/projects/vimage-devel/src/sys/amd64/conf/GENERIC#3 integrate .. //depot/projects/vimage-devel/src/sys/amd64/conf/GENERIC.hints#2 integrate .. //depot/projects/vimage-devel/src/sys/amd64/include/pmap.h#3 integrate .. //depot/projects/vimage-devel/src/sys/amd64/include/vmparam.h#3 integrate .. //depot/projects/vimage-devel/src/sys/arm/at91/if_atereg.h#2 integrate .. //depot/projects/vimage-devel/src/sys/arm/xscale/i80321/ep80219_machdep.c#2 integrate .. //depot/projects/vimage-devel/src/sys/arm/xscale/i80321/iq31244_machdep.c#2 integrate .. //depot/projects/vimage-devel/src/sys/arm/xscale/i8134x/crb_machdep.c#2 integrate .. //depot/projects/vimage-devel/src/sys/arm/xscale/ixp425/avila_machdep.c#2 integrate .. //depot/projects/vimage-devel/src/sys/arm/xscale/pxa/pxa_machdep.c#2 integrate .. //depot/projects/vimage-devel/src/sys/boot/forth/loader.conf#2 integrate .. //depot/projects/vimage-devel/src/sys/boot/i386/boot2/boot2.c#2 integrate .. //depot/projects/vimage-devel/src/sys/boot/pc98/boot2/README.serial.98#2 delete .. //depot/projects/vimage-devel/src/sys/cam/scsi/scsi_da.c#2 integrate .. //depot/projects/vimage-devel/src/sys/compat/freebsd32/freebsd32_misc.c#2 integrate .. //depot/projects/vimage-devel/src/sys/compat/freebsd32/freebsd32_proto.h#2 integrate .. //depot/projects/vimage-devel/src/sys/compat/freebsd32/freebsd32_syscall.h#2 integrate .. //depot/projects/vimage-devel/src/sys/compat/freebsd32/freebsd32_syscalls.c#2 integrate .. //depot/projects/vimage-devel/src/sys/compat/freebsd32/freebsd32_sysent.c#2 integrate .. //depot/projects/vimage-devel/src/sys/compat/freebsd32/syscalls.master#2 integrate .. //depot/projects/vimage-devel/src/sys/compat/linux/linux_misc.c#4 integrate .. //depot/projects/vimage-devel/src/sys/compat/pecoff/imgact_pecoff.c#2 delete .. //depot/projects/vimage-devel/src/sys/compat/pecoff/imgact_pecoff.h#2 delete .. //depot/projects/vimage-devel/src/sys/compat/svr4/svr4_stat.c#3 integrate .. //depot/projects/vimage-devel/src/sys/conf/NOTES#3 integrate .. //depot/projects/vimage-devel/src/sys/conf/files#5 integrate .. //depot/projects/vimage-devel/src/sys/conf/files.i386#3 integrate .. //depot/projects/vimage-devel/src/sys/conf/files.pc98#3 integrate .. //depot/projects/vimage-devel/src/sys/conf/kern.post.mk#2 integrate .. //depot/projects/vimage-devel/src/sys/conf/newvers.sh#2 integrate .. //depot/projects/vimage-devel/src/sys/contrib/dev/oltr/COPYRIGHT#2 delete .. //depot/projects/vimage-devel/src/sys/contrib/dev/oltr/i386-elf.trlld.o.uu#2 delete .. //depot/projects/vimage-devel/src/sys/contrib/dev/oltr/if_oltr.c#2 delete .. //depot/projects/vimage-devel/src/sys/contrib/dev/oltr/if_oltr_isa.c#2 delete .. //depot/projects/vimage-devel/src/sys/contrib/dev/oltr/if_oltr_pci.c#2 delete .. //depot/projects/vimage-devel/src/sys/contrib/dev/oltr/if_oltrvar.h#2 delete .. //depot/projects/vimage-devel/src/sys/contrib/dev/oltr/trlld.h#2 delete .. //depot/projects/vimage-devel/src/sys/contrib/dev/oltr/trlldbm.c#2 delete .. //depot/projects/vimage-devel/src/sys/contrib/dev/oltr/trlldhm.c#2 delete .. //depot/projects/vimage-devel/src/sys/contrib/dev/oltr/trlldmac.c#2 delete .. //depot/projects/vimage-devel/src/sys/dev/acpi_support/acpi_asus.c#3 integrate .. //depot/projects/vimage-devel/src/sys/dev/age/if_age.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/arl/if_arl.c#2 delete .. //depot/projects/vimage-devel/src/sys/dev/arl/if_arl_isa.c#2 delete .. //depot/projects/vimage-devel/src/sys/dev/arl/if_arlreg.h#2 delete .. //depot/projects/vimage-devel/src/sys/dev/ata/ata-chipset.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/ata/ata-pci.h#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/bm/if_bm.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/bm/if_bmreg.h#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/bm/if_bmvar.h#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/ce/ceddk.h#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/ce/if_ce.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/ciss/ciss.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/ciss/cissio.h#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/ciss/cissreg.h#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/ciss/cissvar.h#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/cnw/if_cnw.c#2 delete .. //depot/projects/vimage-devel/src/sys/dev/cnw/if_cnwioctl.h#2 delete .. //depot/projects/vimage-devel/src/sys/dev/cnw/if_cnwreg.h#2 delete .. //depot/projects/vimage-devel/src/sys/dev/cp/cpddk.h#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/cp/if_cp.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/cs/if_cs.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/cs/if_csreg.h#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/ctau/ctddk.h#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/ctau/if_ct.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/cx/cxddk.h#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/cx/if_cx.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/cxgb/common/cxgb_ael1002.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/cxgb/common/cxgb_common.h#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/cxgb/common/cxgb_mc5.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/cxgb/common/cxgb_mv88e1xxx.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/cxgb/common/cxgb_t3_cpl.h#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/cxgb/common/cxgb_t3_hw.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/cxgb/common/cxgb_tn1010.c#1 branch .. //depot/projects/vimage-devel/src/sys/dev/cxgb/common/cxgb_vsc8211.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/cxgb/common/cxgb_xgmac.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/cxgb/cxgb_adapter.h#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/cxgb/cxgb_main.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/cxgb/cxgb_osdep.h#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/cxgb/cxgb_sge.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c#3 integrate .. //depot/projects/vimage-devel/src/sys/dev/ed/if_ed_pccard.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/et/if_et.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/if_ndis/if_ndis.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/jme/if_jme.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/k8temp/k8temp.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/lmc/if_lmc.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/lmc/if_lmc.h#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/mii/rgephy.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/mii/rgephyreg.h#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/mpt/mpt_pci.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/mpt/mpt_user.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/mxge/if_mxge.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/pccard/pccarddevs#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/re/if_re.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/sbni/if_sbni.c#2 delete .. //depot/projects/vimage-devel/src/sys/dev/sbni/if_sbni_isa.c#2 delete .. //depot/projects/vimage-devel/src/sys/dev/sbni/if_sbni_pci.c#2 delete .. //depot/projects/vimage-devel/src/sys/dev/sbni/if_sbnireg.h#2 delete .. //depot/projects/vimage-devel/src/sys/dev/sbni/if_sbnivar.h#2 delete .. //depot/projects/vimage-devel/src/sys/dev/sbsh/if_sbsh.c#2 delete .. //depot/projects/vimage-devel/src/sys/dev/sbsh/if_sbshreg.h#2 delete .. //depot/projects/vimage-devel/src/sys/dev/sound/pci/atiixp.h#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/sound/pci/hda/hdac.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/syscons/daemon/daemon_saver.c#3 integrate .. //depot/projects/vimage-devel/src/sys/dev/usb/ohci.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/usb/usb_ethersubr.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/vr/if_vr.c#2 integrate .. //depot/projects/vimage-devel/src/sys/dev/vr/if_vrreg.h#2 integrate .. //depot/projects/vimage-devel/src/sys/fs/cd9660/cd9660_rrip.c#3 integrate .. //depot/projects/vimage-devel/src/sys/fs/msdosfs/msdosfs_vnops.c#2 integrate .. //depot/projects/vimage-devel/src/sys/fs/smbfs/smbfs_node.c#2 integrate .. //depot/projects/vimage-devel/src/sys/geom/vinum/geom_vinum_drive.c#2 integrate .. //depot/projects/vimage-devel/src/sys/geom/vinum/geom_vinum_subr.c#2 integrate .. //depot/projects/vimage-devel/src/sys/geom/virstor/g_virstor.c#2 integrate .. //depot/projects/vimage-devel/src/sys/i386/conf/GENERIC#3 integrate .. //depot/projects/vimage-devel/src/sys/i386/conf/GENERIC.hints#2 integrate .. //depot/projects/vimage-devel/src/sys/i386/conf/NOTES#4 integrate .. //depot/projects/vimage-devel/src/sys/i386/i386/busdma_machdep.c#2 integrate .. //depot/projects/vimage-devel/src/sys/i386/i386/mp_machdep.c#2 integrate .. //depot/projects/vimage-devel/src/sys/i386/i386/pmap.c#2 integrate .. //depot/projects/vimage-devel/src/sys/i386/ibcs2/ibcs2_socksys.c#3 integrate .. //depot/projects/vimage-devel/src/sys/ia64/conf/GENERIC#2 integrate .. //depot/projects/vimage-devel/src/sys/ia64/ia64/busdma_machdep.c#2 integrate .. //depot/projects/vimage-devel/src/sys/ia64/ia64/machdep.c#2 integrate .. //depot/projects/vimage-devel/src/sys/ia64/include/ia64_cpu.h#2 integrate .. //depot/projects/vimage-devel/src/sys/kern/kern_alq.c#2 integrate .. //depot/projects/vimage-devel/src/sys/kern/kern_conf.c#4 integrate .. //depot/projects/vimage-devel/src/sys/kern/kern_cpuset.c#3 integrate .. //depot/projects/vimage-devel/src/sys/kern/kern_event.c#2 integrate .. //depot/projects/vimage-devel/src/sys/kern/kern_exec.c#2 integrate .. //depot/projects/vimage-devel/src/sys/kern/kern_fork.c#4 integrate .. //depot/projects/vimage-devel/src/sys/kern/kern_intr.c#3 integrate .. //depot/projects/vimage-devel/src/sys/kern/kern_jail.c#4 integrate .. //depot/projects/vimage-devel/src/sys/kern/kern_malloc.c#2 integrate .. //depot/projects/vimage-devel/src/sys/kern/kern_mib.c#3 integrate .. //depot/projects/vimage-devel/src/sys/kern/kern_poll.c#3 integrate .. //depot/projects/vimage-devel/src/sys/kern/kern_xxx.c#7 integrate .. //depot/projects/vimage-devel/src/sys/kern/link_elf.c#2 integrate .. //depot/projects/vimage-devel/src/sys/kern/link_elf_obj.c#3 integrate .. //depot/projects/vimage-devel/src/sys/kern/subr_param.c#2 integrate .. //depot/projects/vimage-devel/src/sys/kern/subr_stack.c#2 integrate .. //depot/projects/vimage-devel/src/sys/kern/subr_taskqueue.c#2 integrate .. //depot/projects/vimage-devel/src/sys/kern/uipc_debug.c#2 integrate .. //depot/projects/vimage-devel/src/sys/kern/uipc_socket.c#4 integrate .. //depot/projects/vimage-devel/src/sys/kern/uipc_usrreq.c#3 integrate .. //depot/projects/vimage-devel/src/sys/kern/vfs_mount.c#2 integrate .. //depot/projects/vimage-devel/src/sys/libkern/memset.c#2 integrate .. //depot/projects/vimage-devel/src/sys/mips/adm5120/adm5120_machdep.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/adm5120/adm5120reg.h#1 branch .. //depot/projects/vimage-devel/src/sys/mips/adm5120/admpci.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/adm5120/console.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/adm5120/files.adm5120#1 branch .. //depot/projects/vimage-devel/src/sys/mips/adm5120/if_admsw.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/adm5120/if_admswreg.h#1 branch .. //depot/projects/vimage-devel/src/sys/mips/adm5120/if_admswvar.h#1 branch .. //depot/projects/vimage-devel/src/sys/mips/adm5120/obio.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/adm5120/obiovar.h#1 branch .. //depot/projects/vimage-devel/src/sys/mips/adm5120/std.adm5120#1 branch .. //depot/projects/vimage-devel/src/sys/mips/adm5120/uart_bus_adm5120.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/adm5120/uart_cpu_adm5120.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/adm5120/uart_dev_adm5120.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/adm5120/uart_dev_adm5120.h#1 branch .. //depot/projects/vimage-devel/src/sys/mips/idt/files.idt#1 branch .. //depot/projects/vimage-devel/src/sys/mips/idt/idt_machdep.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/idt/idtpci.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/idt/idtreg.h#1 branch .. //depot/projects/vimage-devel/src/sys/mips/idt/if_kr.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/idt/if_krreg.h#1 branch .. //depot/projects/vimage-devel/src/sys/mips/idt/obio.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/idt/obiovar.h#1 branch .. //depot/projects/vimage-devel/src/sys/mips/idt/std.idt#1 branch .. //depot/projects/vimage-devel/src/sys/mips/idt/uart_bus_rc32434.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/idt/uart_cpu_rc32434.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/malta/files.malta#1 branch .. //depot/projects/vimage-devel/src/sys/mips/malta/gt.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/malta/gt_pci.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/malta/gtreg.h#1 branch .. //depot/projects/vimage-devel/src/sys/mips/malta/gtvar.h#1 branch .. //depot/projects/vimage-devel/src/sys/mips/malta/malta_machdep.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/malta/maltareg.h#1 branch .. //depot/projects/vimage-devel/src/sys/mips/malta/obio.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/malta/obiovar.h#1 branch .. //depot/projects/vimage-devel/src/sys/mips/malta/std.malta#1 branch .. //depot/projects/vimage-devel/src/sys/mips/malta/uart_bus_maltausart.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/malta/uart_cpu_maltausart.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/malta/yamon.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/malta/yamon.h#1 branch .. //depot/projects/vimage-devel/src/sys/mips/mips/pmap.c#2 integrate .. //depot/projects/vimage-devel/src/sys/mips/mips32/adm5120/adm5120_machdep.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/adm5120/adm5120reg.h#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/adm5120/admpci.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/adm5120/console.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/adm5120/files.adm5120#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/adm5120/if_admsw.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/adm5120/if_admswreg.h#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/adm5120/if_admswvar.h#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/adm5120/obio.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/adm5120/obiovar.h#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/adm5120/std.adm5120#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/adm5120/uart_bus_adm5120.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/adm5120/uart_cpu_adm5120.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/adm5120/uart_dev_adm5120.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/adm5120/uart_dev_adm5120.h#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/idt/files.idt#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/idt/idt_machdep.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/idt/idtpci.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/idt/idtreg.h#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/idt/if_kr.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/idt/if_krreg.h#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/idt/obio.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/idt/obiovar.h#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/idt/std.idt#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/idt/uart_bus_rc32434.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/idt/uart_cpu_rc32434.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/malta/files.malta#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/malta/gt.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/malta/gt_pci.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/malta/gtreg.h#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/malta/gtvar.h#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/malta/malta_machdep.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/malta/maltareg.h#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/malta/obio.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/malta/obiovar.h#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/malta/std.malta#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/malta/uart_bus_maltausart.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/malta/uart_cpu_maltausart.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/malta/yamon.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/malta/yamon.h#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/sentry5/files.sentry5#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/sentry5/obio.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/sentry5/obiovar.h#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/sentry5/s5_machdep.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/sentry5/s5reg.h#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/sentry5/siba_cc.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/sentry5/siba_mips.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/sentry5/siba_sdram.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/sentry5/uart_bus_sbusart.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/mips32/sentry5/uart_cpu_sbusart.c#2 delete .. //depot/projects/vimage-devel/src/sys/mips/sentry5/files.sentry5#1 branch .. //depot/projects/vimage-devel/src/sys/mips/sentry5/obio.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/sentry5/obiovar.h#1 branch .. //depot/projects/vimage-devel/src/sys/mips/sentry5/s5_machdep.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/sentry5/s5reg.h#1 branch .. //depot/projects/vimage-devel/src/sys/mips/sentry5/siba_cc.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/sentry5/siba_mips.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/sentry5/siba_sdram.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/sentry5/uart_bus_sbusart.c#1 branch .. //depot/projects/vimage-devel/src/sys/mips/sentry5/uart_cpu_sbusart.c#1 branch .. //depot/projects/vimage-devel/src/sys/modules/Makefile#5 integrate .. //depot/projects/vimage-devel/src/sys/modules/arl/Makefile#2 delete .. //depot/projects/vimage-devel/src/sys/modules/cnw/Makefile#2 delete .. //depot/projects/vimage-devel/src/sys/modules/cxgb/cxgb/Makefile#2 integrate .. //depot/projects/vimage-devel/src/sys/modules/oltr/Makefile#2 delete .. //depot/projects/vimage-devel/src/sys/modules/pecoff/Makefile#2 delete .. //depot/projects/vimage-devel/src/sys/modules/sbni/Makefile#2 delete .. //depot/projects/vimage-devel/src/sys/modules/sbsh/Makefile#2 delete .. //depot/projects/vimage-devel/src/sys/net/bpf.c#5 integrate .. //depot/projects/vimage-devel/src/sys/net/bpf.h#3 integrate .. //depot/projects/vimage-devel/src/sys/net/bpf_zerocopy.c#2 integrate .. //depot/projects/vimage-devel/src/sys/net/bpf_zerocopy.h#2 integrate .. //depot/projects/vimage-devel/src/sys/net/if_bridge.c#3 integrate .. //depot/projects/vimage-devel/src/sys/net/if_lagg.c#2 integrate .. //depot/projects/vimage-devel/src/sys/net/if_ppp.c#3 integrate .. //depot/projects/vimage-devel/src/sys/net/if_vlan.c#3 integrate .. //depot/projects/vimage-devel/src/sys/net/netisr.c#3 integrate .. //depot/projects/vimage-devel/src/sys/net/netisr.h#2 integrate .. //depot/projects/vimage-devel/src/sys/net/raw_cb.c#3 integrate .. //depot/projects/vimage-devel/src/sys/net/raw_cb.h#3 integrate .. //depot/projects/vimage-devel/src/sys/net/raw_usrreq.c#3 integrate .. //depot/projects/vimage-devel/src/sys/net/rtsock.c#3 integrate .. //depot/projects/vimage-devel/src/sys/net80211/ieee80211_ht.c#2 integrate .. //depot/projects/vimage-devel/src/sys/net80211/ieee80211_output.c#2 integrate .. //depot/projects/vimage-devel/src/sys/netatalk/ddp_usrreq.c#2 integrate .. //depot/projects/vimage-devel/src/sys/netgraph/bluetooth/common/ng_bluetooth.c#2 integrate .. //depot/projects/vimage-devel/src/sys/netgraph/bluetooth/drivers/ubt/TODO#2 integrate .. //depot/projects/vimage-devel/src/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c#2 integrate .. //depot/projects/vimage-devel/src/sys/netgraph/bluetooth/drivers/ubt/ng_ubt_var.h#2 integrate .. //depot/projects/vimage-devel/src/sys/netgraph/bluetooth/include/ng_bluetooth.h#2 integrate .. //depot/projects/vimage-devel/src/sys/netgraph/bluetooth/include/ng_btsocket.h#2 integrate .. //depot/projects/vimage-devel/src/sys/netgraph/ng_base.c#5 integrate .. //depot/projects/vimage-devel/src/sys/netgraph/ng_iface.c#3 integrate .. //depot/projects/vimage-devel/src/sys/netgraph/ng_ip_input.c#2 integrate .. //depot/projects/vimage-devel/src/sys/netinet/if_ether.c#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet/in_pcb.c#5 integrate .. //depot/projects/vimage-devel/src/sys/netinet/in_pcb.h#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet/ip_carp.c#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet/ip_gre.c#2 integrate .. //depot/projects/vimage-devel/src/sys/netinet/ip_input.c#4 integrate .. //depot/projects/vimage-devel/src/sys/netinet/raw_ip.c#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_asconf.c#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_asconf.h#2 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_bsd_addr.c#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_bsd_addr.h#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_cc_functions.h#2 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_constants.h#2 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_crc32.h#2 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_indata.c#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_indata.h#2 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_input.c#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_input.h#2 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_os_bsd.h#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_output.c#4 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_output.h#2 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_pcb.c#4 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_pcb.h#4 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_sysctl.h#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_timer.c#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_timer.h#2 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_uio.h#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_usrreq.c#4 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctp_var.h#4 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctputil.c#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet/sctputil.h#2 integrate .. //depot/projects/vimage-devel/src/sys/netinet/tcp_output.c#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet/udp_usrreq.c#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet6/frag6.c#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet6/icmp6.c#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet6/in6.c#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet6/in6_ifattach.c#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet6/in6_pcb.c#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet6/in6_pcb.h#2 integrate .. //depot/projects/vimage-devel/src/sys/netinet6/in6_src.c#4 integrate .. //depot/projects/vimage-devel/src/sys/netinet6/ip6_forward.c#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet6/ip6_input.c#4 integrate .. //depot/projects/vimage-devel/src/sys/netinet6/ip6_var.h#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet6/raw_ip6.c#3 integrate .. //depot/projects/vimage-devel/src/sys/netinet6/sctp6_usrreq.c#4 integrate .. //depot/projects/vimage-devel/src/sys/netinet6/sctp6_var.h#2 integrate .. //depot/projects/vimage-devel/src/sys/netinet6/udp6_usrreq.c#3 integrate .. //depot/projects/vimage-devel/src/sys/netipsec/keysock.c#3 integrate .. //depot/projects/vimage-devel/src/sys/netipx/ipx_input.c#2 integrate .. //depot/projects/vimage-devel/src/sys/netnatm/natm_proto.c#2 integrate .. //depot/projects/vimage-devel/src/sys/nfsclient/bootp_subr.c#3 integrate .. //depot/projects/vimage-devel/src/sys/nfsclient/nfs_vfsops.c#4 integrate .. //depot/projects/vimage-devel/src/sys/nfsserver/nfs_syscalls.c#2 integrate .. //depot/projects/vimage-devel/src/sys/nlm/nlm_advlock.c#3 integrate .. //depot/projects/vimage-devel/src/sys/nlm/nlm_prot_impl.c#3 integrate .. //depot/projects/vimage-devel/src/sys/pc98/conf/GENERIC#2 integrate .. //depot/projects/vimage-devel/src/sys/pc98/conf/NOTES#3 integrate .. //depot/projects/vimage-devel/src/sys/pc98/include/bus.h#2 integrate .. //depot/projects/vimage-devel/src/sys/pc98/pc98/busiosubr.c#2 integrate .. //depot/projects/vimage-devel/src/sys/pci/if_rlreg.h#3 integrate .. //depot/projects/vimage-devel/src/sys/powerpc/conf/GENERIC#2 integrate .. //depot/projects/vimage-devel/src/sys/rpc/authunix_prot.c#5 integrate .. //depot/projects/vimage-devel/src/sys/sparc64/conf/GENERIC#2 integrate .. //depot/projects/vimage-devel/src/sys/sparc64/include/in_cksum.h#3 integrate .. //depot/projects/vimage-devel/src/sys/sparc64/sparc64/in_cksum.c#2 integrate .. //depot/projects/vimage-devel/src/sys/sun4v/conf/GENERIC#2 integrate .. //depot/projects/vimage-devel/src/sys/sys/_task.h#2 integrate .. //depot/projects/vimage-devel/src/sys/sys/event.h#2 integrate .. //depot/projects/vimage-devel/src/sys/sys/eventhandler.h#2 integrate .. //depot/projects/vimage-devel/src/sys/sys/imgact.h#2 integrate .. //depot/projects/vimage-devel/src/sys/sys/interrupt.h#2 integrate .. //depot/projects/vimage-devel/src/sys/sys/ioctl_compat.h#3 integrate .. //depot/projects/vimage-devel/src/sys/sys/kernel.h#3 integrate .. //depot/projects/vimage-devel/src/sys/sys/libkern.h#2 integrate .. //depot/projects/vimage-devel/src/sys/sys/link_elf.h#2 integrate .. //depot/projects/vimage-devel/src/sys/sys/socketvar.h#3 integrate .. //depot/projects/vimage-devel/src/sys/sys/taskqueue.h#2 integrate .. //depot/projects/vimage-devel/src/sys/sys/termios.h#2 integrate .. //depot/projects/vimage-devel/src/sys/sys/ttycom.h#2 integrate .. //depot/projects/vimage-devel/src/sys/vm/swap_pager.c#2 integrate .. //depot/projects/vimage-devel/src/sys/vm/vm_kern.h#2 integrate Differences ... ==== //depot/projects/vimage-devel/src/sys/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/Makefile,v 1.49 2008/05/26 10:39:52 bz Exp $ +# $FreeBSD: src/sys/Makefile,v 1.50 2008/07/10 16:03:24 obrien Exp $ .include @@ -12,9 +12,12 @@ gnu isa kern libkern modules net net80211 netatalk \ netgraph netinet netinet6 netipsec netipx netnatm netncp \ netsmb nfs nfs4client nfsclient nfsserver opencrypto pccard \ - pci rpc security sys ufs vm ${ARCHDIR} - -ARCHDIR ?= ${MACHINE} + pci rpc security sys ufs vm ${CSCOPE_ARCHDIR} +.if defined(ALL_ARCH) +CSCOPE_ARCHDIR ?= amd64 arm i386 ia64 mips powerpc sparc64 +.else +CSCOPE_ARCHDIR ?= ${MACHINE} +.endif # Loadable kernel modules ==== //depot/projects/vimage-devel/src/sys/amd64/amd64/busdma_machdep.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/busdma_machdep.c,v 1.85 2008/02/12 16:24:30 scottl Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/busdma_machdep.c,v 1.86 2008/07/15 03:34:49 alc Exp $"); #include #include @@ -480,8 +480,6 @@ mflags = M_NOWAIT; else mflags = M_WAITOK; - if (flags & BUS_DMA_ZERO) - mflags |= M_ZERO; /* If we succeed, no mapping/bouncing will be required */ *mapp = NULL; @@ -489,13 +487,15 @@ if (dmat->segments == NULL) { dmat->segments = (bus_dma_segment_t *)malloc( sizeof(bus_dma_segment_t) * dmat->nsegments, M_DEVBUF, - M_NOWAIT); + mflags); if (dmat->segments == NULL) { CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d", __func__, dmat, dmat->flags, ENOMEM); return (ENOMEM); } } + if (flags & BUS_DMA_ZERO) + mflags |= M_ZERO; /* * XXX: @@ -531,7 +531,7 @@ pmap_change_attr((vm_offset_t)*vaddr, dmat->maxsize, PAT_UNCACHEABLE); CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d", - __func__, dmat, dmat->flags, ENOMEM); + __func__, dmat, dmat->flags, 0); return (0); } ==== //depot/projects/vimage-devel/src/sys/amd64/amd64/machdep.c#2 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.686 2008/04/25 05:18:47 jeff Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.687 2008/07/09 19:44:37 peter Exp $"); #include "opt_atalk.h" #include "opt_atpic.h" @@ -1466,6 +1466,10 @@ _udatasel = GSEL(GUDATA_SEL, SEL_UPL); _ucode32sel = GSEL(GUCODE32_SEL, SEL_UPL); + load_ds(_udatasel); + load_es(_udatasel); + load_fs(_udatasel); + /* setup proc 0's pcb */ thread0.td_pcb->pcb_flags = 0; thread0.td_pcb->pcb_cr3 = KPML4phys; ==== //depot/projects/vimage-devel/src/sys/amd64/amd64/minidump_machdep.c#6 (text) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/minidump_machdep.c,v 1.5 2008/06/20 20:59:31 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/minidump_machdep.c,v 1.6 2008/07/08 04:00:22 alc Exp $"); #include "opt_vimage.h" @@ -209,7 +209,8 @@ /* Walk page table pages, set bits in vm_page_dump */ ptesize = 0; pdp = (uint64_t *)PHYS_TO_DMAP(KPDPphys); - for (va = VM_MIN_KERNEL_ADDRESS; va < kernel_vm_end; va += NBPDR) { + for (va = VM_MIN_KERNEL_ADDRESS; va < MAX(KERNBASE + NKPT * NBPDR, + kernel_vm_end); va += NBPDR) { i = (va >> PDPSHIFT) & ((1ul << NPDPEPGSHIFT) - 1); /* * We always write a page, even if it is zero. Each @@ -315,7 +316,8 @@ /* Dump kernel page table pages */ pdp = (uint64_t *)PHYS_TO_DMAP(KPDPphys); - for (va = VM_MIN_KERNEL_ADDRESS; va < kernel_vm_end; va += NBPDR) { + for (va = VM_MIN_KERNEL_ADDRESS; va < MAX(KERNBASE + NKPT * NBPDR, + kernel_vm_end); va += NBPDR) { i = (va >> PDPSHIFT) & ((1ul << NPDPEPGSHIFT) - 1); /* We always write a page, even if it is zero */ if ((pdp[i] & PG_V) == 0) { ==== //depot/projects/vimage-devel/src/sys/amd64/amd64/mp_machdep.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.289 2008/03/10 01:32:48 jeff Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mp_machdep.c,v 1.291 2008/07/09 19:44:37 peter Exp $"); #include "opt_cpu.h" #include "opt_kstack_pages.h" @@ -79,7 +79,6 @@ int mp_naps; /* # of Applications processors */ int boot_cpu_id = -1; /* designated BSP */ -extern int nkpt; extern struct pcpu __pcpu[]; @@ -99,6 +98,8 @@ /* SMP page table page */ extern pt_entry_t *SMPpt; +extern int _udatasel; + struct pcb stoppcbs[MAXCPU]; /* Variables needed for SMP tlb shootdown. */ @@ -565,7 +566,9 @@ */ load_cr4(rcr4() | CR4_PGE); - + load_ds(_udatasel); + load_es(_udatasel); + load_fs(_udatasel); mtx_unlock_spin(&ap_boot_mtx); /* wait until all the AP's are up */ ==== //depot/projects/vimage-devel/src/sys/amd64/amd64/pmap.c#4 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.623 2008/06/21 19:19:09 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.632 2008/07/13 18:19:53 alc Exp $"); /* * Manages physical address maps. @@ -173,10 +173,9 @@ vm_offset_t virtual_avail; /* VA of first avail page (after kernel bss) */ vm_offset_t virtual_end; /* VA of last avail page (end of kernel AS) */ -static int nkpt; static int ndmpdp; static vm_paddr_t dmaplimit; -vm_offset_t kernel_vm_end; +vm_offset_t kernel_vm_end = VM_MIN_KERNEL_ADDRESS; pt_entry_t pg_nx; SYSCTL_NODE(_vm, OID_AUTO, pmap, CTLFLAG_RD, 0, "VM/pmap parameters"); @@ -227,6 +226,7 @@ vm_prot_t prot); static vm_page_t pmap_enter_quick_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, vm_page_t mpte); +static void pmap_fill_ptp(pt_entry_t *firstpte, pt_entry_t newpte); static void pmap_insert_pt_page(pmap_t pmap, vm_page_t mpte); static boolean_t pmap_is_modified_pvh(struct md_page *pvh); static vm_page_t pmap_lookup_pt_page(pmap_t pmap, vm_offset_t va); @@ -441,10 +441,8 @@ /* Read-only from zero to physfree */ /* XXX not fully used, underneath 2M pages */ for (i = 0; (i << PAGE_SHIFT) < *firstaddr; i++) { - ((pt_entry_t *)KPTphys)[(KERNBASE - VM_MIN_KERNEL_ADDRESS) / - PAGE_SIZE + i] = i << PAGE_SHIFT; - ((pt_entry_t *)KPTphys)[(KERNBASE - VM_MIN_KERNEL_ADDRESS) / - PAGE_SIZE + i] |= PG_RW | PG_V | PG_G; + ((pt_entry_t *)KPTphys)[i] = i << PAGE_SHIFT; + ((pt_entry_t *)KPTphys)[i] |= PG_RW | PG_V | PG_G; } /* Now map the page tables at their location within PTmap */ @@ -456,10 +454,8 @@ /* Map from zero to end of allocations under 2M pages */ /* This replaces some of the KPTphys entries above */ for (i = 0; (i << PDRSHIFT) < *firstaddr; i++) { - ((pd_entry_t *)KPDphys)[(KERNBASE - VM_MIN_KERNEL_ADDRESS) / - NBPDR + i] = i << PDRSHIFT; - ((pd_entry_t *)KPDphys)[(KERNBASE - VM_MIN_KERNEL_ADDRESS) / - NBPDR + i] |= PG_RW | PG_V | PG_PS | PG_G; + ((pd_entry_t *)KPDphys)[i] = i << PDRSHIFT; + ((pd_entry_t *)KPDphys)[i] |= PG_RW | PG_V | PG_PS | PG_G; } /* And connect up the PD to the PDP */ @@ -470,11 +466,12 @@ } /* Now set up the direct map space using either 2MB or 1GB pages */ + /* Preset PG_M and PG_A because demotion expects it */ if ((amd_feature & AMDID_PAGE1GB) == 0) { for (i = 0; i < NPDEPG * ndmpdp; i++) { ((pd_entry_t *)DMPDphys)[i] = (vm_paddr_t)i << PDRSHIFT; ((pd_entry_t *)DMPDphys)[i] |= PG_RW | PG_V | PG_PS | - PG_G; + PG_G | PG_M | PG_A; } /* And the direct map space's PDP */ for (i = 0; i < ndmpdp; i++) { @@ -487,7 +484,7 @@ ((pdp_entry_t *)DMPDPphys)[i] = (vm_paddr_t)i << PDPSHIFT; ((pdp_entry_t *)DMPDPphys)[i] |= PG_RW | PG_V | PG_PS | - PG_G; + PG_G | PG_M | PG_A; } } @@ -543,7 +540,6 @@ kernel_pmap->pm_root = NULL; kernel_pmap->pm_active = -1; /* don't allow deactivation */ TAILQ_INIT(&kernel_pmap->pm_pvchunk); - nkpt = NKPT; /* * Reserve some special page table entries/VA space for temporary @@ -649,15 +645,17 @@ * Initialize the vm page array entries for the kernel pmap's * page table pages. */ - pd = pmap_pde(kernel_pmap, VM_MIN_KERNEL_ADDRESS); - for (i = 0; i < nkpt; i++) { + pd = pmap_pde(kernel_pmap, KERNBASE); + for (i = 0; i < NKPT; i++) { if ((pd[i] & (PG_PS | PG_V)) == (PG_PS | PG_V)) continue; + KASSERT((pd[i] & PG_V) != 0, + ("pmap_init: page table page is missing")); mpte = PHYS_TO_VM_PAGE(pd[i] & PG_FRAME); KASSERT(mpte >= vm_page_array && mpte < &vm_page_array[vm_page_array_size], ("pmap_init: page table page is out of range")); - mpte->pindex = pmap_pde_pindex(VM_MIN_KERNEL_ADDRESS) + i; + mpte->pindex = pmap_pde_pindex(KERNBASE) + i; mpte->phys_addr = pd[i] & PG_FRAME; } @@ -1043,17 +1041,25 @@ vm_paddr_t pmap_kextract(vm_offset_t va) { - pd_entry_t *pde; + pd_entry_t pde; vm_paddr_t pa; if (va >= DMAP_MIN_ADDRESS && va < DMAP_MAX_ADDRESS) { pa = DMAP_TO_PHYS(va); } else { - pde = vtopde(va); - if (*pde & PG_PS) { - pa = (*pde & PG_PS_FRAME) | (va & PDRMASK); + pde = *vtopde(va); + if (pde & PG_PS) { + pa = (pde & PG_PS_FRAME) | (va & PDRMASK); } else { - pa = *vtopte(va); + /* + * Beware of a concurrent promotion that changes the + * PDE at this point! For example, vtopte() must not + * be used to access the PTE because it would use the + * new PDE. It is, however, safe to use the old PDE + * because the page table page is preserved by the + * promotion. + */ + pa = *pmap_pde_to_pte(&pde, va); pa = (pa & PG_FRAME) | (va & PAGE_MASK); } } @@ -1703,41 +1709,50 @@ vm_paddr_t paddr; vm_page_t nkpg; pd_entry_t *pde, newpdir; - pdp_entry_t newpdp; + pdp_entry_t *pdpe; mtx_assert(&kernel_map->system_mtx, MA_OWNED); - if (kernel_vm_end == 0) { - kernel_vm_end = VM_MIN_KERNEL_ADDRESS; - nkpt = 0; - while ((*pmap_pde(kernel_pmap, kernel_vm_end) & PG_V) != 0) { - kernel_vm_end = (kernel_vm_end + PAGE_SIZE * NPTEPG) & ~(PAGE_SIZE * NPTEPG - 1); - nkpt++; - if (kernel_vm_end - 1 >= kernel_map->max_offset) { - kernel_vm_end = kernel_map->max_offset; - break; - } - } - } - addr = roundup2(addr, PAGE_SIZE * NPTEPG); + + /* + * Return if "addr" is within the range of kernel page table pages + * that were preallocated during pmap bootstrap. Moreover, leave + * "kernel_vm_end" and the kernel page table as they were. + * + * The correctness of this action is based on the following + * argument: vm_map_findspace() allocates contiguous ranges of the + * kernel virtual address space. It calls this function if a range + * ends after "kernel_vm_end". If the kernel is mapped between + * "kernel_vm_end" and "addr", then the range cannot begin at + * "kernel_vm_end". In fact, its beginning address cannot be less + * than the kernel. Thus, there is no immediate need to allocate + * any new kernel page table pages between "kernel_vm_end" and + * "KERNBASE". + */ + if (KERNBASE < addr && addr <= KERNBASE + NKPT * NBPDR) + return; + + addr = roundup2(addr, NBPDR); if (addr - 1 >= kernel_map->max_offset) addr = kernel_map->max_offset; while (kernel_vm_end < addr) { - pde = pmap_pde(kernel_pmap, kernel_vm_end); - if (pde == NULL) { + pdpe = pmap_pdpe(kernel_pmap, kernel_vm_end); + if ((*pdpe & PG_V) == 0) { /* We need a new PDP entry */ - nkpg = vm_page_alloc(NULL, nkpt, - VM_ALLOC_NOOBJ | VM_ALLOC_SYSTEM | VM_ALLOC_WIRED); + nkpg = vm_page_alloc(NULL, kernel_vm_end >> PDPSHIFT, + VM_ALLOC_INTERRUPT | VM_ALLOC_NOOBJ | + VM_ALLOC_WIRED | VM_ALLOC_ZERO); if (nkpg == NULL) panic("pmap_growkernel: no memory to grow kernel"); - pmap_zero_page(nkpg); + if ((nkpg->flags & PG_ZERO) == 0) + pmap_zero_page(nkpg); paddr = VM_PAGE_TO_PHYS(nkpg); - newpdp = (pdp_entry_t) + *pdpe = (pdp_entry_t) (paddr | PG_V | PG_RW | PG_A | PG_M); - *pmap_pdpe(kernel_pmap, kernel_vm_end) = newpdp; continue; /* try again */ } + pde = pmap_pdpe_to_pde(pdpe, kernel_vm_end); if ((*pde & PG_V) != 0) { - kernel_vm_end = (kernel_vm_end + PAGE_SIZE * NPTEPG) & ~(PAGE_SIZE * NPTEPG - 1); + kernel_vm_end = (kernel_vm_end + NBPDR) & ~PDRMASK; if (kernel_vm_end - 1 >= kernel_map->max_offset) { kernel_vm_end = kernel_map->max_offset; break; @@ -1746,18 +1761,17 @@ } nkpg = vm_page_alloc(NULL, pmap_pde_pindex(kernel_vm_end), - VM_ALLOC_NOOBJ | VM_ALLOC_SYSTEM | VM_ALLOC_WIRED); + VM_ALLOC_INTERRUPT | VM_ALLOC_NOOBJ | VM_ALLOC_WIRED | + VM_ALLOC_ZERO); if (nkpg == NULL) panic("pmap_growkernel: no memory to grow kernel"); - - nkpt++; - - pmap_zero_page(nkpg); + if ((nkpg->flags & PG_ZERO) == 0) + pmap_zero_page(nkpg); paddr = VM_PAGE_TO_PHYS(nkpg); newpdir = (pd_entry_t) (paddr | PG_V | PG_RW | PG_A | PG_M); - *pmap_pde(kernel_pmap, kernel_vm_end) = newpdir; + pde_store(pde, newpdir); - kernel_vm_end = (kernel_vm_end + PAGE_SIZE * NPTEPG) & ~(PAGE_SIZE * NPTEPG - 1); + kernel_vm_end = (kernel_vm_end + NBPDR) & ~PDRMASK; if (kernel_vm_end - 1 >= kernel_map->max_offset) { kernel_vm_end = kernel_map->max_offset; break; @@ -2193,58 +2207,88 @@ } /* - * Tries to demote a 2MB page mapping. + * Fills a page table page with mappings to consecutive physical pages. + */ +static void +pmap_fill_ptp(pt_entry_t *firstpte, pt_entry_t newpte) +{ + pt_entry_t *pte; + + for (pte = firstpte; pte < firstpte + NPTEPG; pte++) { + *pte = newpte; + newpte += PAGE_SIZE; + } +} + +/* + * Tries to demote a 2MB page mapping. If demotion fails, the 2MB page + * mapping is invalidated. */ static boolean_t pmap_demote_pde(pmap_t pmap, pd_entry_t *pde, vm_offset_t va) { pd_entry_t newpde, oldpde; - pt_entry_t *firstpte, newpte, *pte; + pt_entry_t *firstpte, newpte; vm_paddr_t mptepa; vm_page_t free, mpte; PMAP_LOCK_ASSERT(pmap, MA_OWNED); + oldpde = *pde; + KASSERT((oldpde & (PG_PS | PG_V)) == (PG_PS | PG_V), + ("pmap_demote_pde: oldpde is missing PG_PS and/or PG_V")); mpte = pmap_lookup_pt_page(pmap, va); if (mpte != NULL) pmap_remove_pt_page(pmap, mpte); else { - KASSERT((*pde & PG_W) == 0, + KASSERT((oldpde & PG_W) == 0, ("pmap_demote_pde: page table page for a wired mapping" " is missing")); - free = NULL; - pmap_remove_pde(pmap, pde, trunc_2mpage(va), &free); - pmap_invalidate_page(pmap, trunc_2mpage(va)); - pmap_free_zero_pages(free); - CTR2(KTR_PMAP, "pmap_demote_pde: failure for va %#lx" - " in pmap %p", va, pmap); - return (FALSE); + + /* + * Invalidate the 2MB page mapping and return "failure" if the + * mapping was never accessed or the allocation of the new + * page table page fails. + */ + if ((oldpde & PG_A) == 0 || (mpte = vm_page_alloc(NULL, + pmap_pde_pindex(va), VM_ALLOC_NOOBJ | VM_ALLOC_NORMAL | + VM_ALLOC_WIRED)) == NULL) { + free = NULL; + pmap_remove_pde(pmap, pde, trunc_2mpage(va), &free); + pmap_invalidate_page(pmap, trunc_2mpage(va)); + pmap_free_zero_pages(free); + CTR2(KTR_PMAP, "pmap_demote_pde: failure for va %#lx" + " in pmap %p", va, pmap); + return (FALSE); + } } mptepa = VM_PAGE_TO_PHYS(mpte); firstpte = (pt_entry_t *)PHYS_TO_DMAP(mptepa); - oldpde = *pde; newpde = mptepa | PG_M | PG_A | (oldpde & PG_U) | PG_RW | PG_V; - KASSERT((oldpde & (PG_A | PG_V)) == (PG_A | PG_V), - ("pmap_demote_pde: oldpde is missing PG_A and/or PG_V")); + KASSERT((oldpde & PG_A) != 0, + ("pmap_demote_pde: oldpde is missing PG_A")); KASSERT((oldpde & (PG_M | PG_RW)) != PG_RW, ("pmap_demote_pde: oldpde is missing PG_M")); - KASSERT((oldpde & PG_PS) != 0, - ("pmap_demote_pde: oldpde is missing PG_PS")); newpte = oldpde & ~PG_PS; if ((newpte & PG_PDE_PAT) != 0) newpte ^= PG_PDE_PAT | PG_PTE_PAT; /* - * If the mapping has changed attributes, update the page table - * entries. + * If the page table page is new, initialize it. */ + if (mpte->wire_count == 1) { + mpte->wire_count = NPTEPG; + pmap_fill_ptp(firstpte, newpte); + } KASSERT((*firstpte & PG_FRAME) == (newpte & PG_FRAME), ("pmap_demote_pde: firstpte and newpte map different physical" " addresses")); + + /* + * If the mapping has changed attributes, update the page table + * entries. + */ if ((*firstpte & PG_PTE_PROMOTE) != (newpte & PG_PTE_PROMOTE)) - for (pte = firstpte; pte < firstpte + NPTEPG; pte++) { - *pte = newpte; - newpte += PAGE_SIZE; - } + pmap_fill_ptp(firstpte, newpte); /* * Demote the mapping. This pmap is locked. The old PDE has ==== //depot/projects/vimage-devel/src/sys/amd64/conf/GENERIC#3 (text+ko) ==== @@ -16,7 +16,7 @@ # If you are in doubt as to the purpose or necessity of a line, check first # in NOTES. # -# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.502 2008/06/20 19:28:33 delphij Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.504 2008/07/13 07:20:14 ed Exp $ cpu HAMMER ident GENERIC @@ -64,6 +64,7 @@ options KBD_INSTALL_CDEV # install a CDEV entry in /dev options STOP_NMI # Stop CPUS using NMI instead of IPI options AUDIT # Security event auditing +options HWPMC_HOOKS # Necessary kernel hooks for hwpmc(4) # Debugging for use in -current options KDB # Enable kernel debugger support. @@ -171,7 +172,6 @@ device cardbus # CardBus (32-bit) bus # Serial (COM) ports -device sio # 8250, 16[45]50 based serial ports device uart # Generic UART driver # Parallel port ==== //depot/projects/vimage-devel/src/sys/amd64/conf/GENERIC.hints#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/amd64/conf/GENERIC.hints,v 1.18 2007/10/15 20:00:20 netchild Exp $ +# $FreeBSD: src/sys/amd64/conf/GENERIC.hints,v 1.19 2008/07/13 07:20:14 ed Exp $ hint.fdc.0.at="isa" hint.fdc.0.port="0x3F0" hint.fdc.0.irq="6" @@ -16,20 +16,20 @@ hint.vga.0.at="isa" hint.sc.0.at="isa" hint.sc.0.flags="0x100" -hint.sio.0.at="isa" -hint.sio.0.port="0x3F8" -hint.sio.0.flags="0x10" -hint.sio.0.irq="4" -hint.sio.1.at="isa" -hint.sio.1.port="0x2F8" -hint.sio.1.irq="3" -hint.sio.2.at="isa" -hint.sio.2.disabled="1" -hint.sio.2.port="0x3E8" -hint.sio.2.irq="5" -hint.sio.3.at="isa" -hint.sio.3.disabled="1" -hint.sio.3.port="0x2E8" -hint.sio.3.irq="9" +hint.uart.0.at="isa" +hint.uart.0.port="0x3F8" +hint.uart.0.flags="0x10" +hint.uart.0.irq="4" +hint.uart.1.at="isa" +hint.uart.1.port="0x2F8" +hint.uart.1.irq="3" +hint.uart.2.at="isa" +hint.uart.2.disabled="1" +hint.uart.2.port="0x3E8" +hint.uart.2.irq="5" +hint.uart.3.at="isa" +hint.uart.3.disabled="1" +hint.uart.3.port="0x2E8" +hint.uart.3.irq="9" hint.ppc.0.at="isa" hint.ppc.0.irq="7" ==== //depot/projects/vimage-devel/src/sys/amd64/include/pmap.h#3 (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.142 2008/06/29 19:13:27 alc Exp $ + * $FreeBSD: src/sys/amd64/include/pmap.h,v 1.146 2008/07/08 22:59:17 alc Exp $ */ #ifndef _MACHINE_PMAP_H_ @@ -111,11 +111,11 @@ /* Initial number of kernel page tables. */ #ifndef NKPT -#define NKPT 2288 +#define NKPT 32 #endif #define NKPML4E 1 /* number of kernel PML4 slots */ -#define NKPDPE 5 /* number of kernel PDP slots */ +#define NKPDPE howmany(NKPT, NPDEPG)/* number of kernel PDP slots */ #define NUPML4E (NPML4EPG/2) /* number of userland PML4 pages */ #define NUPDPE (NUPML4E*NPDPEPG)/* number of userland PDP pages */ @@ -131,7 +131,7 @@ #define KPML4I (NPML4EPG-1) /* Top 512GB for KVM */ #define DMPML4I (KPML4I-1) /* Next 512GB down for direct map */ -#define KPDPI (NPDPEPG-6) /* kernel map starts at -6GB */ +#define KPDPI (NPDPEPG-2) /* kernbase at -2GB */ >>> TRUNCATED FOR MAIL (1000 lines) <<<