Date: Mon, 31 Oct 2005 21:30:10 GMT From: John Baldwin <jhb@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 86135 for review Message-ID: <200510312130.j9VLUA4A087319@repoman.freebsd.org>
index | next in thread | raw e-mail
http://perforce.freebsd.org/chv.cgi?CH=86135 Change 86135 by jhb@jhb_slimer on 2005/10/31 21:29:45 IFC @86133. Affected files ... .. //depot/projects/smpng/sys/alpha/alpha/pmap.c#72 integrate .. //depot/projects/smpng/sys/amd64/acpica/madt.c#8 integrate .. //depot/projects/smpng/sys/amd64/amd64/io_apic.c#9 integrate .. //depot/projects/smpng/sys/amd64/amd64/mptable.c#9 integrate .. //depot/projects/smpng/sys/amd64/amd64/pmap.c#47 integrate .. //depot/projects/smpng/sys/amd64/conf/NOTES#25 integrate .. //depot/projects/smpng/sys/arm/arm/vm_machdep.c#16 integrate .. //depot/projects/smpng/sys/boot/forth/beastie.4th#9 integrate .. //depot/projects/smpng/sys/boot/i386/loader/Makefile#20 integrate .. //depot/projects/smpng/sys/boot/pc98/loader/Makefile#16 integrate .. //depot/projects/smpng/sys/coda/coda_vfsops.c#24 integrate .. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#28 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c#2 integrate .. //depot/projects/smpng/sys/dev/aac/aac.c#52 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_pci_link.c#30 integrate .. //depot/projects/smpng/sys/dev/ata/ata-all.c#75 integrate .. //depot/projects/smpng/sys/dev/ata/ata-disk.c#53 integrate .. //depot/projects/smpng/sys/dev/ata/ata-dma.c#46 integrate .. //depot/projects/smpng/sys/dev/ata/ata-pci.c#58 integrate .. //depot/projects/smpng/sys/dev/ata/ata-raid.c#39 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-cam.c#26 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-cd.c#59 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-fd.c#29 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-tape.c#33 integrate .. //depot/projects/smpng/sys/dev/ed/if_ed_pccard.c#36 integrate .. //depot/projects/smpng/sys/dev/em/if_em.c#56 integrate .. //depot/projects/smpng/sys/dev/if_ndis/if_ndis.c#36 integrate .. //depot/projects/smpng/sys/dev/isp/isp.c#36 integrate .. //depot/projects/smpng/sys/dev/isp/isp_freebsd.c#35 integrate .. //depot/projects/smpng/sys/dev/isp/isp_ioctl.h#12 integrate .. //depot/projects/smpng/sys/dev/isp/ispmbox.h#17 integrate .. //depot/projects/smpng/sys/dev/md/md.c#70 integrate .. //depot/projects/smpng/sys/dev/ofw/ofw_disk.c#16 integrate .. //depot/projects/smpng/sys/dev/pccard/pccarddevs#53 integrate .. //depot/projects/smpng/sys/dev/pccbb/pccbb.c#53 integrate .. //depot/projects/smpng/sys/dev/pci/pci.c#64 integrate .. //depot/projects/smpng/sys/dev/pci/pcireg.h#12 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/dsp.c#29 integrate .. //depot/projects/smpng/sys/dev/tdfx/tdfx_pci.c#19 integrate .. //depot/projects/smpng/sys/dev/twa/tw_osl_freebsd.c#3 integrate .. //depot/projects/smpng/sys/dev/twe/twe_freebsd.c#24 integrate .. //depot/projects/smpng/sys/dev/txp/if_txp.c#30 integrate .. //depot/projects/smpng/sys/fs/fdescfs/fdesc_vfsops.c#20 integrate .. //depot/projects/smpng/sys/fs/hpfs/hpfs_vfsops.c#30 integrate .. //depot/projects/smpng/sys/fs/msdosfs/msdosfs_denode.c#25 integrate .. //depot/projects/smpng/sys/fs/msdosfs/msdosfs_fileno.c#2 integrate .. //depot/projects/smpng/sys/fs/msdosfs/msdosfs_vfsops.c#44 integrate .. //depot/projects/smpng/sys/fs/ntfs/ntfs_ihash.c#8 integrate .. //depot/projects/smpng/sys/fs/ntfs/ntfs_subr.c#21 integrate .. //depot/projects/smpng/sys/fs/ntfs/ntfs_vfsops.c#31 integrate .. //depot/projects/smpng/sys/fs/nullfs/null_subr.c#14 integrate .. //depot/projects/smpng/sys/fs/nullfs/null_vfsops.c#21 integrate .. //depot/projects/smpng/sys/fs/nwfs/nwfs_node.c#17 integrate .. //depot/projects/smpng/sys/fs/nwfs/nwfs_subr.c#8 integrate .. //depot/projects/smpng/sys/fs/portalfs/portal_vfsops.c#19 integrate .. //depot/projects/smpng/sys/fs/smbfs/smbfs_node.c#22 integrate .. //depot/projects/smpng/sys/fs/smbfs/smbfs_subr.c#7 integrate .. //depot/projects/smpng/sys/fs/smbfs/smbfs_vfsops.c#31 integrate .. //depot/projects/smpng/sys/fs/udf/udf_vfsops.c#25 integrate .. //depot/projects/smpng/sys/fs/udf/udf_vnops.c#32 integrate .. //depot/projects/smpng/sys/fs/umapfs/umap_vfsops.c#23 integrate .. //depot/projects/smpng/sys/fs/unionfs/union_vfsops.c#28 integrate .. //depot/projects/smpng/sys/geom/bde/g_bde_work.c#15 integrate .. //depot/projects/smpng/sys/geom/concat/g_concat.c#14 integrate .. //depot/projects/smpng/sys/geom/gate/g_gate.c#13 integrate .. //depot/projects/smpng/sys/geom/mirror/g_mirror.c#21 integrate .. //depot/projects/smpng/sys/geom/raid3/g_raid3.c#18 integrate .. //depot/projects/smpng/sys/geom/shsec/g_shsec.c#3 integrate .. //depot/projects/smpng/sys/geom/stripe/g_stripe.c#14 integrate .. //depot/projects/smpng/sys/geom/uzip/g_uzip.c#6 integrate .. //depot/projects/smpng/sys/gnu/fs/ext2fs/ext2_vfsops.c#4 integrate .. //depot/projects/smpng/sys/gnu/fs/reiserfs/reiserfs_namei.c#3 integrate .. //depot/projects/smpng/sys/gnu/fs/reiserfs/reiserfs_vfsops.c#3 integrate .. //depot/projects/smpng/sys/i386/acpica/madt.c#14 integrate .. //depot/projects/smpng/sys/i386/conf/NOTES#110 integrate .. //depot/projects/smpng/sys/i386/i386/io_apic.c#13 integrate .. //depot/projects/smpng/sys/i386/i386/mptable.c#17 integrate .. //depot/projects/smpng/sys/i386/i386/pmap.c#87 integrate .. //depot/projects/smpng/sys/ia64/ia64/interrupt.c#33 integrate .. //depot/projects/smpng/sys/ia64/ia64/sscdisk.c#18 integrate .. //depot/projects/smpng/sys/isofs/cd9660/cd9660_vfsops.c#40 integrate .. //depot/projects/smpng/sys/kern/inflate.c#6 integrate .. //depot/projects/smpng/sys/kern/init_sysent.c#62 integrate .. //depot/projects/smpng/sys/kern/kern_descrip.c#84 integrate .. //depot/projects/smpng/sys/kern/kern_sig.c#111 integrate .. //depot/projects/smpng/sys/kern/kern_time.c#37 integrate .. //depot/projects/smpng/sys/kern/link_elf.c#30 integrate .. //depot/projects/smpng/sys/kern/subr_sleepqueue.c#19 integrate .. //depot/projects/smpng/sys/kern/syscalls.c#62 integrate .. //depot/projects/smpng/sys/kern/syscalls.master#64 integrate .. //depot/projects/smpng/sys/kern/uipc_socket.c#76 integrate .. //depot/projects/smpng/sys/kern/uipc_socket2.c#46 integrate .. //depot/projects/smpng/sys/kern/uipc_syscalls.c#71 integrate .. //depot/projects/smpng/sys/kern/uipc_usrreq.c#50 integrate .. //depot/projects/smpng/sys/kern/vfs_aio.c#61 integrate .. //depot/projects/smpng/sys/kern/vfs_bio.c#85 integrate .. //depot/projects/smpng/sys/kern/vfs_cluster.c#42 integrate .. //depot/projects/smpng/sys/kern/vfs_export.c#21 integrate .. //depot/projects/smpng/sys/kern/vfs_hash.c#4 integrate .. //depot/projects/smpng/sys/kern/vfs_subr.c#114 integrate .. //depot/projects/smpng/sys/libkern/iconv.c#11 integrate .. //depot/projects/smpng/sys/netatm/atm_aal5.c#13 integrate .. //depot/projects/smpng/sys/netatm/atm_cm.c#15 integrate .. //depot/projects/smpng/sys/netatm/atm_socket.c#16 integrate .. //depot/projects/smpng/sys/netatm/atm_var.h#15 integrate .. //depot/projects/smpng/sys/netatm/ipatm/ipatm_if.c#10 integrate .. //depot/projects/smpng/sys/netatm/ipatm/ipatm_load.c#10 integrate .. //depot/projects/smpng/sys/netgraph/atm/uni/ng_uni.c#6 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/include/ng_btsocket_l2cap.h#5 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/include/ng_btsocket_rfcomm.h#5 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c#15 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c#11 integrate .. //depot/projects/smpng/sys/netgraph/netflow/netflow.c#9 integrate .. //depot/projects/smpng/sys/netinet/in.c#31 integrate .. //depot/projects/smpng/sys/netinet/ip_encap.c#14 integrate .. //depot/projects/smpng/sys/netinet/tcp_usrreq.c#45 integrate .. //depot/projects/smpng/sys/netipx/spx_usrreq.c#22 integrate .. //depot/projects/smpng/sys/netkey/keydb.c#6 integrate .. //depot/projects/smpng/sys/netncp/ncp_conn.c#12 integrate .. //depot/projects/smpng/sys/netsmb/smb_conn.c#15 integrate .. //depot/projects/smpng/sys/nfs4client/nfs4_dev.c#7 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_lock.c#31 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_nfsiod.c#17 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_vfsops.c#51 integrate .. //depot/projects/smpng/sys/nfsserver/nfs_syscalls.c#26 integrate .. //depot/projects/smpng/sys/pci/viapm.c#10 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/db_trace.c#13 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/locore.S#9 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/ofw_machdep.c#11 integrate .. //depot/projects/smpng/sys/security/mac_lomac/mac_lomac.c#29 integrate .. //depot/projects/smpng/sys/security/mac_portacl/mac_portacl.c#7 integrate .. //depot/projects/smpng/sys/sys/aio.h#6 integrate .. //depot/projects/smpng/sys/sys/param.h#88 integrate .. //depot/projects/smpng/sys/sys/protosw.h#15 integrate .. //depot/projects/smpng/sys/sys/signal.h#19 integrate .. //depot/projects/smpng/sys/sys/signalvar.h#26 integrate .. //depot/projects/smpng/sys/sys/socketvar.h#46 integrate .. //depot/projects/smpng/sys/sys/syscall.h#61 integrate .. //depot/projects/smpng/sys/sys/syscall.mk#61 integrate .. //depot/projects/smpng/sys/sys/syscallsubr.h#24 integrate .. //depot/projects/smpng/sys/sys/sysproto.h#63 integrate .. //depot/projects/smpng/sys/sys/timers.h#4 integrate .. //depot/projects/smpng/sys/sys/unistd.h#14 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_alloc.c#39 integrate .. //depot/projects/smpng/sys/ufs/ufs/ufs_dirhash.c#23 integrate .. //depot/projects/smpng/sys/ufs/ufs/ufs_quota.c#28 integrate .. //depot/projects/smpng/sys/ufs/ufs/ufs_vfsops.c#21 integrate .. //depot/projects/smpng/sys/vm/vm_pager.c#24 integrate Differences ... ==== //depot/projects/smpng/sys/alpha/alpha/pmap.c#72 (text+ko) ==== @@ -148,7 +148,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.180 2005/10/21 19:42:42 ade Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.181 2005/10/31 16:14:07 alc Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -2172,13 +2172,6 @@ continue; } -#if defined(PMAP_DIAGNOSTIC) - if (!pv->pv_pmap) { - printf("Null pmap (cb) at va: 0x%lx\n", pv->pv_va); - continue; - } -#endif - PMAP_LOCK(pv->pv_pmap); pte = pmap_lev3pte(pv->pv_pmap, pv->pv_va); ==== //depot/projects/smpng/sys/amd64/acpica/madt.c#8 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/acpica/madt.c,v 1.17 2005/09/11 18:39:00 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/acpica/madt.c,v 1.18 2005/10/31 15:41:17 rwatson Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -74,7 +74,7 @@ static vm_paddr_t madt_physaddr; static vm_offset_t madt_length; -MALLOC_DEFINE(M_MADT, "MADT Table", "ACPI MADT Table Items"); +MALLOC_DEFINE(M_MADT, "madt_table", "ACPI MADT Table Items"); static enum intr_polarity interrupt_polarity(UINT16 Polarity, UINT8 Source); static enum intr_trigger interrupt_trigger(UINT16 TriggerMode, UINT8 Source); ==== //depot/projects/smpng/sys/amd64/amd64/io_apic.c#9 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.16 2005/10/26 22:32:30 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.17 2005/10/31 15:41:17 rwatson Exp $"); #include "opt_atpic.h" #include "opt_isa.h" @@ -65,7 +65,7 @@ #define TODO printf("%s: not implemented!\n", __func__) -static MALLOC_DEFINE(M_IOAPIC, "I/O APIC", "I/O APIC structures"); +static MALLOC_DEFINE(M_IOAPIC, "ioapic", "I/O APIC structures"); /* * New interrupt support code.. ==== //depot/projects/smpng/sys/amd64/amd64/mptable.c#9 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mptable.c,v 1.236 2005/04/15 18:44:53 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mptable.c,v 1.237 2005/10/31 15:41:17 rwatson Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -141,7 +141,7 @@ static int mptable_nioapics, mptable_nbusses, mptable_maxbusid; static int pci0 = -1; -static MALLOC_DEFINE(M_MPTABLE, "MP Table", "MP Table Items"); +static MALLOC_DEFINE(M_MPTABLE, "mptable", "MP Table Items"); static enum intr_polarity conforming_polarity(u_char src_bus, u_char src_bus_irq); ==== //depot/projects/smpng/sys/amd64/amd64/pmap.c#47 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.529 2005/10/21 19:42:42 ade Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.530 2005/10/30 20:47:42 alc Exp $"); /* * Manages physical address maps. @@ -597,28 +597,8 @@ * Low level helper routines..... ***************************************************/ -#if defined(PMAP_DIAGNOSTIC) /* - * This code checks for non-writeable/modified pages. - * This should be an invalid condition. - */ -static int -pmap_nw_modified(pt_entry_t ptea) -{ - int pte; - - pte = (int) ptea; - - if ((pte & (PG_M|PG_RW)) == PG_M) - return 1; - else - return 0; -} -#endif - - -/* * this routine defines the region(s) of memory that should * not be tested for the modified bit. */ @@ -1543,13 +1523,9 @@ if (oldpte & PG_MANAGED) { m = PHYS_TO_VM_PAGE(oldpte & PG_FRAME); if (oldpte & PG_M) { -#if defined(PMAP_DIAGNOSTIC) - if (pmap_nw_modified((pt_entry_t) oldpte)) { - printf( - "pmap_remove: modified page not writable: va: 0x%lx, pte: 0x%lx\n", - va, oldpte); - } -#endif + KASSERT((oldpte & PG_RW), + ("pmap_remove_pte: modified page not writable: va: 0x%lx, pte: 0x%lx", + va, oldpte)); if (pmap_track_modified(va)) vm_page_dirty(m); } @@ -1728,13 +1704,9 @@ * Update the vm_page_t clean and reference bits. */ if (tpte & PG_M) { -#if defined(PMAP_DIAGNOSTIC) - if (pmap_nw_modified((pt_entry_t) tpte)) { - printf( - "pmap_remove_all: modified page not writable: va: 0x%lx, pte: 0x%lx\n", - pv->pv_va, tpte); - } -#endif + KASSERT((tpte & PG_RW), + ("pmap_remove_all: modified page not writable: va: 0x%lx, pte: 0x%lx", + pv->pv_va, tpte)); if (pmap_track_modified(pv->pv_va)) vm_page_dirty(m); } @@ -2021,8 +1993,8 @@ } if (origpte & PG_M) { KASSERT((origpte & PG_RW), - ("pmap_enter: modified page not writable:" - " va: 0x%lx, pte: 0x%lx", va, origpte)); + ("pmap_enter: modified page not writable: va: 0x%lx, pte: 0x%lx", + va, origpte)); if ((origpte & PG_MANAGED) && pmap_track_modified(va)) vm_page_dirty(om); ==== //depot/projects/smpng/sys/amd64/conf/NOTES#25 (text+ko) ==== @@ -4,7 +4,7 @@ # This file contains machine dependent kernel configuration notes. For # machine independent notes, look in /sys/conf/NOTES. # -# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.46 2005/10/24 21:04:17 jhb Exp $ +# $FreeBSD: src/sys/amd64/conf/NOTES,v 1.47 2005/10/31 20:45:37 jhb Exp $ # # @@ -225,6 +225,7 @@ # (requires miibus) # lnc: Lance/PCnet cards (Isolan, Novell NE2100, NE32-VL, AMD Am7990 and # Am79C960) +# nve: nVidia nForce MCP on-board Ethernet Networking device ed options ED_3C503 @@ -232,6 +233,7 @@ options ED_SIC #XXX# still calls MD i386 kvtop function instead of vtophys etc #XXX#device lnc +device nve # nVidia nForce MCP on-board Ethernet Networking device ath device ath_hal # Atheros HAL (includes binary component) ==== //depot/projects/smpng/sys/arm/arm/vm_machdep.c#16 (text+ko) ==== @@ -41,7 +41,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/arm/arm/vm_machdep.c,v 1.18 2005/10/03 14:16:41 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/vm_machdep.c,v 1.19 2005/10/31 15:41:17 rwatson Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -378,7 +378,7 @@ struct mtx smallalloc_mtx; -MALLOC_DEFINE(M_VMSMALLALLOC, "VM Small alloc", "VM Small alloc data"); +MALLOC_DEFINE(M_VMSMALLALLOC, "vm_small_alloc", "VM Small alloc data"); vm_offset_t alloc_curaddr; vm_offset_t alloc_firstaddr; ==== //depot/projects/smpng/sys/boot/forth/beastie.4th#9 (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/boot/forth/beastie.4th,v 1.10 2004/12/01 07:17:57 scottl Exp $ +\ $FreeBSD: src/sys/boot/forth/beastie.4th,v 1.11 2005/10/30 05:36:23 scottl Exp $ marker task-beastie.4th @@ -50,7 +50,7 @@ 46 constant dot \ The BSD Daemon. He is 19 rows high and 34 columns wide -: technicolor-beastie ( x y -- ) +: beastie-logo ( x y -- ) 2dup at-xy ." [1;31m, ," 1+ 2dup at-xy ." /( )`" 1+ 2dup at-xy ." \ \___ / |" 1+ @@ -72,7 +72,7 @@ at-xy ." `--{__________) [0m" ; -: boring-beastie ( x y -- ) +: beastiebw-logo ( x y -- ) 2dup at-xy ." , ," 1+ 2dup at-xy ." /( )`" 1+ 2dup at-xy ." \ \___ / |" 1+ @@ -94,18 +94,51 @@ at-xy ." `--{__________)" ; -: print-beastie ( x y -- ) - s" loader_color" getenv +: fbsdbw-logo ( x y -- ) + 2dup at-xy ." ______" 1+ + 2dup at-xy ." | ____| __ ___ ___ " 1+ + 2dup at-xy ." | |__ | '__/ _ \/ _ \" 1+ + 2dup at-xy ." | __|| | | __/ __/" 1+ + 2dup at-xy ." | | | | | | |" 1+ + 2dup at-xy ." |_| |_| \___|\___|" 1+ + 2dup at-xy ." ____ _____ _____" 1+ + 2dup at-xy ." | _ \ / ____| __ \" 1+ + 2dup at-xy ." | |_) | (___ | | | |" 1+ + 2dup at-xy ." | _ < \___ \| | | |" 1+ + 2dup at-xy ." | |_) |____) | |__| |" 1+ + 2dup at-xy ." | | | |" 1+ + at-xy ." |____/|_____/|_____/" +; + +: print-logo ( x y -- ) + s" loader_logo" getenv dup -1 = if drop - boring-beastie + fbsdbw-logo + exit + then + 2dup s" fbsdbw" compare-insensitive 0= if + 2drop + fbsdbw-logo + exit + then + 2dup s" beastiebw" compare-insensitive 0= if + 2drop + beastiebw-logo + exit + then + 2dup s" beastie" compare-insensitive 0= if + 2drop + beastie-logo exit then - s" YES" compare-insensitive 0<> if - boring-beastie + 2dup s" none" compare-insensitive 0= if + 2drop + \ no logo exit then - technicolor-beastie + 2drop + fbsdbw-logo ; : acpienabled? ( -- flag ) @@ -144,7 +177,7 @@ 8 menuY ! 5 menuX ! clear - 46 4 print-beastie + 46 4 print-logo 42 20 2 2 box 13 6 at-xy ." Welcome to FreeBSD!" printmenuitem ." Boot FreeBSD [default]" bootkey ! ==== //depot/projects/smpng/sys/boot/i386/loader/Makefile#20 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/boot/i386/loader/Makefile,v 1.81 2005/06/01 15:32:57 obrien Exp $ +# $FreeBSD: src/sys/boot/i386/loader/Makefile,v 1.82 2005/10/30 05:41:42 scottl Exp $ PROG= loader.sym INTERNALPROG= @@ -73,7 +73,7 @@ .PATH: ${.CURDIR}/../../forth FILES= loader loader.help loader.4th support.4th loader.conf -FILES+= screen.4th frames.4th +FILES+= screen.4th frames.4th beastie.4th # XXX INSTALLFLAGS_loader= -b FILESMODE_loader= ${BINMODE} -b FILESDIR_loader.conf= /boot/defaults ==== //depot/projects/smpng/sys/boot/pc98/loader/Makefile#16 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/boot/pc98/loader/Makefile,v 1.38 2005/05/08 14:17:28 nyan Exp $ +# $FreeBSD: src/sys/boot/pc98/loader/Makefile,v 1.39 2005/10/30 15:59:08 nyan Exp $ PROG= loader.sym INTERNALPROG= @@ -75,13 +75,13 @@ .PATH: ${.CURDIR}/../../forth FILES= loader loader.help loader.4th support.4th loader.conf -FILES+= screen.4th frames.4th +FILES+= screen.4th frames.4th beastie.4th # XXX INSTALLFLAGS_loader= -b FILESMODE_loader= ${BINMODE} -b FILESDIR_loader.conf= /boot/defaults .if !exists(${DESTDIR}/boot/loader.rc) -FILES+= loader.rc +FILES+= ${.CURDIR}/../../i386/loader/loader.rc .endif # XXX crt0.o needs to be first for pxeboot(8) to work ==== //depot/projects/smpng/sys/coda/coda_vfsops.c#24 (text+ko) ==== @@ -41,7 +41,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/coda/coda_vfsops.c,v 1.59 2005/03/24 07:39:03 jeff Exp $"); +__FBSDID("$FreeBSD: src/sys/coda/coda_vfsops.c,v 1.60 2005/10/31 15:41:17 rwatson Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -60,7 +60,7 @@ #include <coda/coda_subr.h> #include <coda/coda_opstats.h> -MALLOC_DEFINE(M_CODA, "CODA storage", "Various Coda Structures"); +MALLOC_DEFINE(M_CODA, "coda", "Various Coda Structures"); int codadebug = 0; int coda_vfsop_print_entry = 0; ==== //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#28 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.45 2005/10/26 22:19:51 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.46 2005/10/31 21:09:56 ps Exp $"); #include "opt_compat.h" @@ -41,6 +41,7 @@ #include <sys/lock.h> #include <sys/malloc.h> #include <sys/file.h> /* Must come after sys/malloc.h */ +#include <sys/mbuf.h> #include <sys/mman.h> #include <sys/module.h> #include <sys/mount.h> @@ -800,32 +801,52 @@ } static int -freebsd32_copyiniov(struct iovec32 *iovp, u_int iovcnt, struct iovec **iov, +freebsd32_copyiniov(struct iovec32 *iovp32, u_int iovcnt, struct iovec **iovp, int error) { struct iovec32 iov32; + struct iovec *iov; + u_int iovlen; int i; - u_int iovlen; - - *iov = NULL; + *iovp = NULL; if (iovcnt > UIO_MAXIOV) return (error); iovlen = iovcnt * sizeof(struct iovec); - *iov = malloc(iovlen, M_IOV, M_WAITOK); + iov = malloc(iovlen, M_IOV, M_WAITOK); for (i = 0; i < iovcnt; i++) { - error = copyin(&iovp[i], &iov32, sizeof(struct iovec32)); + error = copyin(&iovp32[i], &iov32, sizeof(struct iovec32)); if (error) { - free(*iov, M_IOV); - *iov = NULL; + free(iov, M_IOV); return (error); } - iov[i]->iov_base = PTRIN(iov32.iov_base); - iov[i]->iov_len = iov32.iov_len; + iov[i].iov_base = PTRIN(iov32.iov_base); + iov[i].iov_len = iov32.iov_len; + } + *iovp = iov; + return (0); +} + +static int +freebsd32_copyoutiov(struct iovec *iov, u_int iovcnt, struct iovec32 *iovp, + int error) +{ + struct iovec32 iov32; + int i; + + if (iovcnt > UIO_MAXIOV) + return (error); + for (i = 0; i < iovcnt; i++) { + iov32.iov_base = PTROUT(iov[i].iov_base); + iov32.iov_len = iov[i].iov_len; + error = copyout(&iov32, &iovp[i], sizeof(iov32)); + if (error) + return (error); } return (0); } + struct msghdr32 { u_int32_t msg_name; socklen_t msg_namelen; @@ -853,8 +874,7 @@ msg->msg_control = PTRIN(m32.msg_control); msg->msg_controllen = m32.msg_controllen; msg->msg_flags = m32.msg_flags; - return (freebsd32_copyiniov((struct iovec32 *)(uintptr_t)m32.msg_iov, m32.msg_iovlen, &msg->msg_iov, - EMSGSIZE)); + return (0); } static int @@ -874,6 +894,103 @@ return (error); } +#define FREEBSD32_ALIGNBYTES (sizeof(int) - 1) +#define FREEBSD32_ALIGN(p) \ + (((u_long)(p) + FREEBSD32_ALIGNBYTES) & ~FREEBSD32_ALIGNBYTES) +#define FREEBSD32_CMSG_SPACE(l) \ + (FREEBSD32_ALIGN(sizeof(struct cmsghdr)) + FREEBSD32_ALIGN(l)) + +#define FREEBSD32_CMSG_DATA(cmsg) ((unsigned char *)(cmsg) + \ + FREEBSD32_ALIGN(sizeof(struct cmsghdr))) +static int +freebsd32_copy_msg_out(struct msghdr *msg, struct mbuf *control) +{ + struct cmsghdr *cm; + void *data; + socklen_t clen, datalen; + int error; + caddr_t ctlbuf; + int len, maxlen, copylen; + struct mbuf *m; + error = 0; + + len = msg->msg_controllen; + maxlen = msg->msg_controllen; + msg->msg_controllen = 0; + + m = control; + ctlbuf = msg->msg_control; + + while (m && len > 0) { + cm = mtod(m, struct cmsghdr *); + clen = m->m_len; + + while (cm != NULL) { + + if (sizeof(struct cmsghdr) > clen || + cm->cmsg_len > clen) { + error = EINVAL; + break; + } + + data = CMSG_DATA(cm); + datalen = (caddr_t)cm + cm->cmsg_len - (caddr_t)data; + + /* Adjust message length */ + cm->cmsg_len = FREEBSD32_ALIGN(sizeof(struct cmsghdr)) + + datalen; + + + /* Copy cmsghdr */ + copylen = sizeof(struct cmsghdr); + if (len < copylen) { + msg->msg_flags |= MSG_CTRUNC; + copylen = len; + } + + error = copyout(cm,ctlbuf,copylen); + if (error) + goto exit; + + ctlbuf += FREEBSD32_ALIGN(copylen); + len -= FREEBSD32_ALIGN(copylen); + + if (len <= 0) + break; + + /* Copy data */ + copylen = datalen; + if (len < copylen) { + msg->msg_flags |= MSG_CTRUNC; + copylen = len; + } + + error = copyout(data,ctlbuf,copylen); + if (error) + goto exit; + + ctlbuf += FREEBSD32_ALIGN(copylen); + len -= FREEBSD32_ALIGN(copylen); + + if (CMSG_SPACE(datalen) < clen) { + clen -= CMSG_SPACE(datalen); + cm = (struct cmsghdr *) + ((caddr_t)cm + CMSG_SPACE(datalen)); + } else { + clen = 0; + cm = NULL; + } + } + m = m->m_next; + } + + msg->msg_controllen = (len <= 0) ? maxlen : ctlbuf - (caddr_t)msg->msg_control; + +exit: + return (error); + +} + int freebsd32_recvmsg(td, uap) struct thread *td; @@ -886,8 +1003,10 @@ struct msghdr msg; struct msghdr32 m32; struct iovec *uiov, *iov; + struct mbuf *control = NULL; + struct mbuf **controlp; + int error; - error = copyin(uap->msg, &m32, sizeof(m32)); if (error) return (error); @@ -901,16 +1020,71 @@ msg.msg_flags = uap->flags; uiov = msg.msg_iov; msg.msg_iov = iov; - error = kern_recvit(td, uap->s, &msg, NULL, UIO_SYSSPACE); + + controlp = (msg.msg_control != NULL) ? &control : NULL; + error = kern_recvit(td, uap->s, &msg, NULL, UIO_USERSPACE, controlp); if (error == 0) { msg.msg_iov = uiov; - error = freebsd32_copyoutmsghdr(&msg, uap->msg); + + if (control != NULL) + error = freebsd32_copy_msg_out(&msg, control); + + if (error == 0) + error = freebsd32_copyoutmsghdr(&msg, uap->msg); + + if (error == 0) + error = freebsd32_copyoutiov(iov, iov->iov_len, + (struct iovec32 *)(uintptr_t)m32.msg_iov, EMSGSIZE); } free(iov, M_IOV); - free(uiov, M_IOV); + + if (control != NULL) + m_freem(control); + + return (error); +} + + +static int +freebsd32_convert_msg_in(struct mbuf **controlp) +{ + struct mbuf *control = *controlp; + struct cmsghdr *cm = mtod(control, struct cmsghdr *); + void *data; + socklen_t clen = control->m_len, datalen; + int error; + + error = 0; + *controlp = NULL; + + while (cm != NULL) { + if (sizeof(struct cmsghdr) > clen || cm->cmsg_len > clen) { + error = EINVAL; + break; + } + + data = FREEBSD32_CMSG_DATA(cm); + datalen = (caddr_t)cm + cm->cmsg_len - (caddr_t)data; + + *controlp = sbcreatecontrol(data, datalen, cm->cmsg_type, + cm->cmsg_level); + controlp = &(*controlp)->m_next; + + if (FREEBSD32_CMSG_SPACE(datalen) < clen) { + clen -= FREEBSD32_CMSG_SPACE(datalen); + cm = (struct cmsghdr *) + ((caddr_t)cm + FREEBSD32_CMSG_SPACE(datalen)); + } else { + clen = 0; + cm = NULL; + } + } + + m_freem(control); return (error); } + int freebsd32_sendmsg(struct thread *td, struct freebsd32_sendmsg_args *uap) @@ -918,6 +1092,8 @@ struct msghdr msg; struct msghdr32 m32; struct iovec *iov; + struct mbuf *control = NULL; + struct sockaddr *to = NULL; int error; error = copyin(uap->msg, &m32, sizeof(m32)); @@ -931,8 +1107,38 @@ if (error) return (error); msg.msg_iov = iov; - error = kern_sendit(td, uap->s, &msg, uap->flags, NULL, UIO_SYSSPACE); + if (msg.msg_name != NULL) { + error = getsockaddr(&to, msg.msg_name, msg.msg_namelen); + if (error) { + to = NULL; + goto out; + } + msg.msg_name = to; + } + + if (msg.msg_control) { + if (msg.msg_controllen < sizeof(struct cmsghdr)) { + error = EINVAL; + goto out; + } + + error = sockargs(&control, msg.msg_control, + msg.msg_controllen, MT_CONTROL); + if (error) + goto out; + + error = freebsd32_convert_msg_in(&control); + if (error) + goto out; + } + + error = kern_sendit(td, uap->s, &msg, uap->flags, control, + UIO_USERSPACE); + +out: free(iov, M_IOV); + if (to) + free(to, M_SONAME); return (error); } @@ -960,7 +1166,8 @@ aiov.iov_len = uap->len; msg.msg_control = 0; msg.msg_flags = uap->flags; - error = kern_recvit(td, uap->s, &msg, (void *)(uintptr_t)uap->fromlenaddr, UIO_USERSPACE); + error = kern_recvit(td, uap->s, &msg, + (void *)(uintptr_t)uap->fromlenaddr, UIO_USERSPACE, NULL); return (error); } ==== //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c,v 1.1.1.1 2005/04/25 18:15:15 darrenr Exp $ */ +/* $FreeBSD: src/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c,v 1.2 2005/10/31 15:41:17 rwatson Exp $ */ /* * Copyright (C) 1993-2003 by Darren Reed. @@ -112,7 +112,7 @@ #endif # ifdef IPFILTER_M_IPFILTER -MALLOC_DEFINE(M_IPFILTER, "IP Filter", "IP Filter packet filter data structures"); +MALLOC_DEFINE(M_IPFILTER, "ipfilter", "IP Filter packet filter data structures"); # endif ==== //depot/projects/smpng/sys/dev/aac/aac.c#52 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/dev/aac/aac.c,v 1.114 2005/10/14 16:22:45 scottl Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/aac/aac.c,v 1.115 2005/10/31 00:12:19 csjp Exp $"); /* * Driver for the Adaptec 'FSA' family of PCI/SCSI RAID adapters. @@ -3428,6 +3428,7 @@ device_t child; int i, found, error; + mtx_lock(&sc->aac_io_lock); aac_alloc_sync_fib(sc, &fib); c_cmd = (struct aac_ctcfg *)&fib->data[0]; bzero(c_cmd, sizeof(struct aac_ctcfg)); @@ -3442,6 +3443,7 @@ device_printf(sc->aac_dev, "Error %d sending " "VM_ContainerConfig command\n", error); aac_release_sync_fib(sc); + mtx_unlock(&sc->aac_io_lock); return; } @@ -3450,6 +3452,7 @@ device_printf(sc->aac_dev, "VM_ContainerConfig returned 0x%x\n", c_resp->Status); aac_release_sync_fib(sc); + mtx_unlock(&sc->aac_io_lock); return; } @@ -3470,6 +3473,7 @@ device_printf(sc->aac_dev, "Error %d sending VMIoctl command\n", error); aac_release_sync_fib(sc); + mtx_unlock(&sc->aac_io_lock); return; } @@ -3478,11 +3482,13 @@ device_printf(sc->aac_dev, "VM_Ioctl returned %d\n", vmi_resp->Status); aac_release_sync_fib(sc); + mtx_unlock(&sc->aac_io_lock); return; } bcopy(&vmi_resp->BusInf, &businfo, sizeof(struct aac_getbusinf)); aac_release_sync_fib(sc); + mtx_unlock(&sc->aac_io_lock); found = 0; for (i = 0; i < businfo.BusCount; i++) { ==== //depot/projects/smpng/sys/dev/acpica/acpi_pci_link.c#30 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.46 2005/09/11 18:39:01 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.47 2005/10/31 15:41:18 rwatson Exp $"); #include "opt_acpi.h" #include <sys/param.h> @@ -119,7 +119,7 @@ int link_index; }; -MALLOC_DEFINE(M_PCI_LINK, "PCI Link", "ACPI PCI Link structures"); +MALLOC_DEFINE(M_PCI_LINK, "pci_link", "ACPI PCI Link structures"); static int pci_link_interrupt_weights[NUM_ACPI_INTERRUPTS]; static int pci_link_bios_isa_irqs; ==== //depot/projects/smpng/sys/dev/ata/ata-all.c#75 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-all.c,v 1.258 2005/10/27 16:32:39 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-all.c,v 1.259 2005/10/31 15:41:18 rwatson Exp $"); #include "opt_ata.h" #include <sys/param.h> @@ -73,7 +73,7 @@ static void bpack(int8_t *, int8_t *, int); /* global vars */ -MALLOC_DEFINE(M_ATA, "ATA generic", "ATA driver generic layer"); +MALLOC_DEFINE(M_ATA, "ata_generic", "ATA driver generic layer"); int (*ata_raid_ioctl_func)(u_long cmd, caddr_t data) = NULL; >>> TRUNCATED FOR MAIL (1000 lines) <<<help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200510312130.j9VLUA4A087319>
