PERFORCE change 58667 for review
Robert Watson
rwatson at FreeBSD.org
Sun Aug 1 18:20:51 PDT 2004
http://perforce.freebsd.org/chv.cgi?CH=58667
Change 58667 by rwatson at rwatson_paprika on 2004/08/02 01:20:00
Integrate netperf_socket from FreeBSD CVS:
/dev/mem, /dev/io, etc, rototilled and refrabricated, modularized,
and made more MI.
More VM locking activities. Giant pushed off parts of vmspace
work. kmem_alloc_pageable() removed. Use sx locks instead of
lockmgr for maps.
Slight optimization of cpu_critical_enter() to avoid curthread
overuse.
suser_cred() flag modifications: PRISON_ROOT -> SUSER_ALLOWJAIL,
and SUSER_CHECKRUID added.
cpu_rootconf() removed from MD bits; 'ndp' container argument for
file system mount removed. *_mount() renamed to _omount().
kernel_vmount() added so in-kernel code can mount without messing
with vfs_nmount(), iovec's, etc. *_nmount() -> *_mount(). rootvp
eliminated. Related cleanup. vfs_byname() added. vfs_donmount(),
etc.
PREEMPTION disabled by default.
memcpy() not bcopy() in the boot loader.
More ndismania. Can load firmware via loader preloading, etc.
ADAPTIVE_GIANT now an option (looped back from rwatson_netperf).
geom_mirror is now pjd's geom_mirror.
Missing if_arl copyrights added.
ATAPI dma turned on more often now.
More USB2 hub support.
Netatalk locks in WITNESS lock order (looped back from
rwatson_netperf).
Accept filter registration locking (looped back from
rwatson_netperf).
IFF_NEEDSGIANT allows ifp->if_start to run in a task queue for
increased compatibility with non-MPSAFE interfaces when running
debug.mpsafenet=1. (Looped back from rwatson_netperf).
Various SACK fixes.
IPv6 in6pcb locking (looped back from rwatson_netperf).
A broad variety of gcc 3.4 fixes.
UMA slab math fix.
Affected files ...
.. //depot/projects/netperf_socket/sys/alpha/alpha/autoconf.c#3 integrate
.. //depot/projects/netperf_socket/sys/alpha/alpha/mem.c#6 integrate
.. //depot/projects/netperf_socket/sys/alpha/alpha/pmap.c#15 integrate
.. //depot/projects/netperf_socket/sys/alpha/conf/GENERIC#6 integrate
.. //depot/projects/netperf_socket/sys/alpha/include/critical.h#3 integrate
.. //depot/projects/netperf_socket/sys/alpha/include/memdev.h#1 branch
.. //depot/projects/netperf_socket/sys/alpha/include/param.h#4 integrate
.. //depot/projects/netperf_socket/sys/alpha/osf1/osf1_misc.c#4 integrate
.. //depot/projects/netperf_socket/sys/amd64/amd64/autoconf.c#4 integrate
.. //depot/projects/netperf_socket/sys/amd64/amd64/io.c#1 branch
.. //depot/projects/netperf_socket/sys/amd64/amd64/machdep.c#12 integrate
.. //depot/projects/netperf_socket/sys/amd64/amd64/mem.c#6 integrate
.. //depot/projects/netperf_socket/sys/amd64/amd64/pmap.c#22 integrate
.. //depot/projects/netperf_socket/sys/amd64/conf/GENERIC#12 integrate
.. //depot/projects/netperf_socket/sys/amd64/conf/NOTES#7 integrate
.. //depot/projects/netperf_socket/sys/amd64/include/cpufunc.h#7 integrate
.. //depot/projects/netperf_socket/sys/amd64/include/critical.h#3 integrate
.. //depot/projects/netperf_socket/sys/amd64/include/iodev.h#1 branch
.. //depot/projects/netperf_socket/sys/amd64/include/memdev.h#1 branch
.. //depot/projects/netperf_socket/sys/amd64/include/param.h#4 integrate
.. //depot/projects/netperf_socket/sys/amd64/include/profile.h#5 integrate
.. //depot/projects/netperf_socket/sys/arm/arm/machdep.c#4 integrate
.. //depot/projects/netperf_socket/sys/arm/arm/pmap.c#6 integrate
.. //depot/projects/netperf_socket/sys/arm/include/critical.h#2 integrate
.. //depot/projects/netperf_socket/sys/boot/common/help.common#3 integrate
.. //depot/projects/netperf_socket/sys/boot/forth/loader.conf#10 integrate
.. //depot/projects/netperf_socket/sys/boot/i386/boot2/Makefile#3 integrate
.. //depot/projects/netperf_socket/sys/boot/i386/boot2/boot2.c#3 integrate
.. //depot/projects/netperf_socket/sys/boot/pc98/boot2/boot.h#2 integrate
.. //depot/projects/netperf_socket/sys/boot/pc98/boot2/disk.c#2 integrate
.. //depot/projects/netperf_socket/sys/boot/pc98/boot2/io.c#2 integrate
.. //depot/projects/netperf_socket/sys/boot/pc98/boot2/sys.c#2 integrate
.. //depot/projects/netperf_socket/sys/coda/coda_vfsops.c#4 integrate
.. //depot/projects/netperf_socket/sys/coda/coda_vnops.c#3 integrate
.. //depot/projects/netperf_socket/sys/compat/linux/linux_file.c#3 integrate
.. //depot/projects/netperf_socket/sys/compat/linux/linux_misc.c#5 integrate
.. //depot/projects/netperf_socket/sys/compat/linux/linux_uid16.c#3 integrate
.. //depot/projects/netperf_socket/sys/compat/ndis/hal_var.h#3 integrate
.. //depot/projects/netperf_socket/sys/compat/ndis/kern_ndis.c#17 integrate
.. //depot/projects/netperf_socket/sys/compat/ndis/ndis_var.h#9 integrate
.. //depot/projects/netperf_socket/sys/compat/ndis/ntoskrnl_var.h#9 integrate
.. //depot/projects/netperf_socket/sys/compat/ndis/pe_var.h#3 integrate
.. //depot/projects/netperf_socket/sys/compat/ndis/subr_hal.c#5 integrate
.. //depot/projects/netperf_socket/sys/compat/ndis/subr_ndis.c#13 integrate
.. //depot/projects/netperf_socket/sys/compat/ndis/subr_ntoskrnl.c#16 integrate
.. //depot/projects/netperf_socket/sys/conf/NOTES#31 integrate
.. //depot/projects/netperf_socket/sys/conf/files#42 integrate
.. //depot/projects/netperf_socket/sys/conf/files.alpha#7 integrate
.. //depot/projects/netperf_socket/sys/conf/files.amd64#13 integrate
.. //depot/projects/netperf_socket/sys/conf/files.i386#24 integrate
.. //depot/projects/netperf_socket/sys/conf/files.ia64#6 integrate
.. //depot/projects/netperf_socket/sys/conf/files.pc98#13 integrate
.. //depot/projects/netperf_socket/sys/conf/files.sparc64#7 integrate
.. //depot/projects/netperf_socket/sys/conf/kern.pre.mk#13 integrate
.. //depot/projects/netperf_socket/sys/conf/options#23 integrate
.. //depot/projects/netperf_socket/sys/contrib/pf/net/if_pfsync.c#9 integrate
.. //depot/projects/netperf_socket/sys/contrib/pf/net/pf.c#12 integrate
.. //depot/projects/netperf_socket/sys/contrib/pf/net/pf_norm.c#6 integrate
.. //depot/projects/netperf_socket/sys/contrib/pf/net/pf_table.c#4 integrate
.. //depot/projects/netperf_socket/sys/ddb/db_main.c#2 integrate
.. //depot/projects/netperf_socket/sys/dev/aac/aac.c#8 integrate
.. //depot/projects/netperf_socket/sys/dev/aac/aac_disk.c#5 integrate
.. //depot/projects/netperf_socket/sys/dev/acpica/acpi.c#33 integrate
.. //depot/projects/netperf_socket/sys/dev/arl/if_arl.c#6 integrate
.. //depot/projects/netperf_socket/sys/dev/arl/if_arl_isa.c#3 integrate
.. //depot/projects/netperf_socket/sys/dev/arl/if_arlreg.h#4 integrate
.. //depot/projects/netperf_socket/sys/dev/ata/ata-all.c#11 integrate
.. //depot/projects/netperf_socket/sys/dev/ata/ata-chipset.c#12 integrate
.. //depot/projects/netperf_socket/sys/dev/ciss/ciss.c#13 integrate
.. //depot/projects/netperf_socket/sys/dev/ciss/cissio.h#2 integrate
.. //depot/projects/netperf_socket/sys/dev/ciss/cissreg.h#8 integrate
.. //depot/projects/netperf_socket/sys/dev/digi/digi.c#14 integrate
.. //depot/projects/netperf_socket/sys/dev/fdc/fdc_acpi.c#2 integrate
.. //depot/projects/netperf_socket/sys/dev/firewire/firewire.c#8 integrate
.. //depot/projects/netperf_socket/sys/dev/if_ndis/if_ndis.c#15 integrate
.. //depot/projects/netperf_socket/sys/dev/io/iodev.c#1 branch
.. //depot/projects/netperf_socket/sys/dev/mem/memdev.c#1 branch
.. //depot/projects/netperf_socket/sys/dev/null/null.c#6 integrate
.. //depot/projects/netperf_socket/sys/dev/scd/scd.c#4 integrate
.. //depot/projects/netperf_socket/sys/dev/si/si.c#11 integrate
.. //depot/projects/netperf_socket/sys/dev/syscons/syscons.c#10 integrate
.. //depot/projects/netperf_socket/sys/dev/syscons/syscons.h#4 integrate
.. //depot/projects/netperf_socket/sys/dev/uart/uart_dev_ns8250.c#5 integrate
.. //depot/projects/netperf_socket/sys/dev/usb/ehci.c#7 integrate
.. //depot/projects/netperf_socket/sys/dev/usb/ehcivar.h#2 integrate
.. //depot/projects/netperf_socket/sys/fs/devfs/devfs_vfsops.c#3 integrate
.. //depot/projects/netperf_socket/sys/fs/devfs/devfs_vnops.c#5 integrate
.. //depot/projects/netperf_socket/sys/fs/fdescfs/fdesc_vfsops.c#6 integrate
.. //depot/projects/netperf_socket/sys/fs/hpfs/hpfs_vfsops.c#4 integrate
.. //depot/projects/netperf_socket/sys/fs/hpfs/hpfs_vnops.c#2 integrate
.. //depot/projects/netperf_socket/sys/fs/msdosfs/msdosfs_vfsops.c#7 integrate
.. //depot/projects/netperf_socket/sys/fs/msdosfs/msdosfs_vnops.c#4 integrate
.. //depot/projects/netperf_socket/sys/fs/ntfs/ntfs_subr.c#2 integrate
.. //depot/projects/netperf_socket/sys/fs/ntfs/ntfs_vfsops.c#4 integrate
.. //depot/projects/netperf_socket/sys/fs/nullfs/null_vfsops.c#5 integrate
.. //depot/projects/netperf_socket/sys/fs/nwfs/nwfs_vfsops.c#3 integrate
.. //depot/projects/netperf_socket/sys/fs/portalfs/portal_vfsops.c#5 integrate
.. //depot/projects/netperf_socket/sys/fs/pseudofs/pseudofs.c#4 integrate
.. //depot/projects/netperf_socket/sys/fs/pseudofs/pseudofs.h#3 integrate
.. //depot/projects/netperf_socket/sys/fs/smbfs/smbfs_vfsops.c#4 integrate
.. //depot/projects/netperf_socket/sys/fs/smbfs/smbfs_vnops.c#3 integrate
.. //depot/projects/netperf_socket/sys/fs/udf/udf_vfsops.c#5 integrate
.. //depot/projects/netperf_socket/sys/fs/umapfs/umap_vfsops.c#4 integrate
.. //depot/projects/netperf_socket/sys/fs/unionfs/union_vfsops.c#4 integrate
.. //depot/projects/netperf_socket/sys/geom/concat/g_concat.c#11 integrate
.. //depot/projects/netperf_socket/sys/geom/concat/g_concat.h#8 integrate
.. //depot/projects/netperf_socket/sys/geom/geom_mbr.c#3 integrate
.. //depot/projects/netperf_socket/sys/geom/geom_mirror.c#3 delete
.. //depot/projects/netperf_socket/sys/geom/mirror/g_mirror.c#1 branch
.. //depot/projects/netperf_socket/sys/geom/mirror/g_mirror.h#1 branch
.. //depot/projects/netperf_socket/sys/geom/mirror/g_mirror_ctl.c#1 branch
.. //depot/projects/netperf_socket/sys/geom/nop/g_nop.c#4 integrate
.. //depot/projects/netperf_socket/sys/geom/nop/g_nop.h#3 integrate
.. //depot/projects/netperf_socket/sys/geom/stripe/g_stripe.c#5 integrate
.. //depot/projects/netperf_socket/sys/geom/stripe/g_stripe.h#4 integrate
.. //depot/projects/netperf_socket/sys/geom/vinum/geom_vinum.c#7 integrate
.. //depot/projects/netperf_socket/sys/geom/vinum/geom_vinum.h#2 integrate
.. //depot/projects/netperf_socket/sys/geom/vinum/geom_vinum_drive.c#7 integrate
.. //depot/projects/netperf_socket/sys/geom/vinum/geom_vinum_init.c#2 integrate
.. //depot/projects/netperf_socket/sys/geom/vinum/geom_vinum_plex.c#5 integrate
.. //depot/projects/netperf_socket/sys/geom/vinum/geom_vinum_subr.c#4 integrate
.. //depot/projects/netperf_socket/sys/gnu/ext2fs/ext2_vfsops.c#8 integrate
.. //depot/projects/netperf_socket/sys/gnu/ext2fs/ext2_vnops.c#4 integrate
.. //depot/projects/netperf_socket/sys/i386/acpica/acpi_wakeup.c#6 integrate
.. //depot/projects/netperf_socket/sys/i386/acpica/genwakecode.sh#2 integrate
.. //depot/projects/netperf_socket/sys/i386/conf/GENERIC#10 integrate
.. //depot/projects/netperf_socket/sys/i386/conf/NOTES#24 integrate
.. //depot/projects/netperf_socket/sys/i386/i386/autoconf.c#4 integrate
.. //depot/projects/netperf_socket/sys/i386/i386/io.c#1 branch
.. //depot/projects/netperf_socket/sys/i386/i386/mem.c#8 integrate
.. //depot/projects/netperf_socket/sys/i386/i386/pmap.c#21 integrate
.. //depot/projects/netperf_socket/sys/i386/include/critical.h#4 integrate
.. //depot/projects/netperf_socket/sys/i386/include/iodev.h#1 branch
.. //depot/projects/netperf_socket/sys/i386/include/memdev.h#1 branch
.. //depot/projects/netperf_socket/sys/i386/include/param.h#4 integrate
.. //depot/projects/netperf_socket/sys/ia64/conf/GENERIC#5 integrate
.. //depot/projects/netperf_socket/sys/ia64/ia64/autoconf.c#3 integrate
.. //depot/projects/netperf_socket/sys/ia64/ia64/mem.c#6 integrate
.. //depot/projects/netperf_socket/sys/ia64/ia64/pmap.c#15 integrate
.. //depot/projects/netperf_socket/sys/ia64/include/cpufunc.h#3 integrate
.. //depot/projects/netperf_socket/sys/ia64/include/critical.h#3 integrate
.. //depot/projects/netperf_socket/sys/ia64/include/memdev.h#1 branch
.. //depot/projects/netperf_socket/sys/isa/psm.c#8 integrate
.. //depot/projects/netperf_socket/sys/isofs/cd9660/cd9660_vfsops.c#7 integrate
.. //depot/projects/netperf_socket/sys/kern/init_main.c#6 integrate
.. //depot/projects/netperf_socket/sys/kern/kern_acl.c#3 integrate
.. //depot/projects/netperf_socket/sys/kern/kern_exec.c#13 integrate
.. //depot/projects/netperf_socket/sys/kern/kern_exit.c#17 integrate
.. //depot/projects/netperf_socket/sys/kern/kern_fork.c#14 integrate
.. //depot/projects/netperf_socket/sys/kern/kern_idle.c#5 integrate
.. //depot/projects/netperf_socket/sys/kern/kern_ktrace.c#5 integrate
.. //depot/projects/netperf_socket/sys/kern/kern_mutex.c#8 integrate
.. //depot/projects/netperf_socket/sys/kern/kern_proc.c#12 integrate
.. //depot/projects/netperf_socket/sys/kern/kern_prot.c#9 integrate
.. //depot/projects/netperf_socket/sys/kern/kern_resource.c#9 integrate
.. //depot/projects/netperf_socket/sys/kern/kern_shutdown.c#11 integrate
.. //depot/projects/netperf_socket/sys/kern/kern_sig.c#16 integrate
.. //depot/projects/netperf_socket/sys/kern/kern_switch.c#7 integrate
.. //depot/projects/netperf_socket/sys/kern/kern_synch.c#13 integrate
.. //depot/projects/netperf_socket/sys/kern/kern_sysctl.c#8 integrate
.. //depot/projects/netperf_socket/sys/kern/kern_xxx.c#4 integrate
.. //depot/projects/netperf_socket/sys/kern/sched_ule.c#16 integrate
.. //depot/projects/netperf_socket/sys/kern/subr_turnstile.c#6 integrate
.. //depot/projects/netperf_socket/sys/kern/subr_witness.c#8 integrate
.. //depot/projects/netperf_socket/sys/kern/sys_process.c#10 integrate
.. //depot/projects/netperf_socket/sys/kern/sysv_shm.c#6 integrate
.. //depot/projects/netperf_socket/sys/kern/uipc_socket.c#35 integrate
.. //depot/projects/netperf_socket/sys/kern/uipc_usrreq.c#21 integrate
.. //depot/projects/netperf_socket/sys/kern/vfs_aio.c#5 integrate
.. //depot/projects/netperf_socket/sys/kern/vfs_bio.c#10 integrate
.. //depot/projects/netperf_socket/sys/kern/vfs_cluster.c#3 integrate
.. //depot/projects/netperf_socket/sys/kern/vfs_init.c#6 integrate
.. //depot/projects/netperf_socket/sys/kern/vfs_mount.c#13 integrate
.. //depot/projects/netperf_socket/sys/kern/vfs_subr.c#17 integrate
.. //depot/projects/netperf_socket/sys/kern/vfs_syscalls.c#14 integrate
.. //depot/projects/netperf_socket/sys/libkern/iconv.c#2 integrate
.. //depot/projects/netperf_socket/sys/modules/Makefile#13 integrate
.. //depot/projects/netperf_socket/sys/modules/geom/Makefile#6 integrate
.. //depot/projects/netperf_socket/sys/modules/geom/geom_mirror/Makefile#1 branch
.. //depot/projects/netperf_socket/sys/modules/io/Makefile#1 branch
.. //depot/projects/netperf_socket/sys/modules/mem/Makefile#1 branch
.. //depot/projects/netperf_socket/sys/net/if.c#14 integrate
.. //depot/projects/netperf_socket/sys/net/if.h#6 integrate
.. //depot/projects/netperf_socket/sys/net/if_ef.c#5 integrate
.. //depot/projects/netperf_socket/sys/net/if_ethersubr.c#19 integrate
.. //depot/projects/netperf_socket/sys/net/if_loop.c#8 integrate
.. //depot/projects/netperf_socket/sys/net/if_var.h#17 integrate
.. //depot/projects/netperf_socket/sys/net/if_vlan.c#12 integrate
.. //depot/projects/netperf_socket/sys/net/route.c#10 integrate
.. //depot/projects/netperf_socket/sys/net/route.h#10 integrate
.. //depot/projects/netperf_socket/sys/net80211/ieee80211_output.c#3 integrate
.. //depot/projects/netperf_socket/sys/net80211/ieee80211_proto.c#4 integrate
.. //depot/projects/netperf_socket/sys/netatm/spans/spans_kxdr.c#2 integrate
.. //depot/projects/netperf_socket/sys/netgraph/atm/ng_atm.c#5 integrate
.. //depot/projects/netperf_socket/sys/netgraph/netgraph.h#7 integrate
.. //depot/projects/netperf_socket/sys/netgraph/ng_base.c#11 integrate
.. //depot/projects/netperf_socket/sys/netgraph/ng_ether.c#8 integrate
.. //depot/projects/netperf_socket/sys/netgraph/ng_fec.c#7 integrate
.. //depot/projects/netperf_socket/sys/netgraph/ng_gif.c#6 integrate
.. //depot/projects/netperf_socket/sys/netgraph/ng_parse.c#5 integrate
.. //depot/projects/netperf_socket/sys/netgraph/ng_pppoe.c#6 integrate
.. //depot/projects/netperf_socket/sys/netgraph/ng_pppoe.h#4 integrate
.. //depot/projects/netperf_socket/sys/netgraph/ng_sample.c#5 integrate
.. //depot/projects/netperf_socket/sys/netgraph/ng_socket.c#6 integrate
.. //depot/projects/netperf_socket/sys/netinet/in_pcb.c#13 integrate
.. //depot/projects/netperf_socket/sys/netinet/raw_ip.c#10 integrate
.. //depot/projects/netperf_socket/sys/netinet/tcp_output.c#9 integrate
.. //depot/projects/netperf_socket/sys/netinet/tcp_subr.c#13 integrate
.. //depot/projects/netperf_socket/sys/netinet/tcp_usrreq.c#12 integrate
.. //depot/projects/netperf_socket/sys/netinet/udp_usrreq.c#9 integrate
.. //depot/projects/netperf_socket/sys/netinet6/in6_pcb.c#7 integrate
.. //depot/projects/netperf_socket/sys/netinet6/raw_ip6.c#5 integrate
.. //depot/projects/netperf_socket/sys/netinet6/udp6_usrreq.c#6 integrate
.. //depot/projects/netperf_socket/sys/netipx/ipx_cksum.c#2 integrate
.. //depot/projects/netperf_socket/sys/netsmb/smb_conn.c#5 integrate
.. //depot/projects/netperf_socket/sys/nfs4client/nfs4_vfsops.c#7 integrate
.. //depot/projects/netperf_socket/sys/nfs4client/nfs4_vnops.c#5 integrate
.. //depot/projects/netperf_socket/sys/nfsclient/bootp_subr.c#6 integrate
.. //depot/projects/netperf_socket/sys/nfsclient/nfs_diskless.c#3 integrate
.. //depot/projects/netperf_socket/sys/nfsclient/nfs_vfsops.c#8 integrate
.. //depot/projects/netperf_socket/sys/nfsclient/nfs_vnops.c#6 integrate
.. //depot/projects/netperf_socket/sys/pc98/conf/GENERIC#10 integrate
.. //depot/projects/netperf_socket/sys/pc98/conf/NOTES#16 integrate
.. //depot/projects/netperf_socket/sys/powerpc/conf/GENERIC#6 integrate
.. //depot/projects/netperf_socket/sys/powerpc/include/critical.h#3 integrate
.. //depot/projects/netperf_socket/sys/powerpc/include/kdb.h#2 integrate
.. //depot/projects/netperf_socket/sys/powerpc/include/reg.h#2 integrate
.. //depot/projects/netperf_socket/sys/powerpc/powerpc/db_interface.c#3 integrate
.. //depot/projects/netperf_socket/sys/powerpc/powerpc/machdep.c#6 integrate
.. //depot/projects/netperf_socket/sys/powerpc/powerpc/pmap.c#12 integrate
.. //depot/projects/netperf_socket/sys/powerpc/powerpc/trap_subr.S#5 integrate
.. //depot/projects/netperf_socket/sys/security/mac_biba/mac_biba.c#6 integrate
.. //depot/projects/netperf_socket/sys/security/mac_lomac/mac_lomac.c#5 integrate
.. //depot/projects/netperf_socket/sys/security/mac_mls/mac_mls.c#6 integrate
.. //depot/projects/netperf_socket/sys/sparc64/conf/GENERIC#8 integrate
.. //depot/projects/netperf_socket/sys/sparc64/include/critical.h#3 integrate
.. //depot/projects/netperf_socket/sys/sparc64/include/memdev.h#1 branch
.. //depot/projects/netperf_socket/sys/sparc64/sparc64/mem.c#6 integrate
.. //depot/projects/netperf_socket/sys/sparc64/sparc64/pmap.c#10 integrate
.. //depot/projects/netperf_socket/sys/sys/_task.h#2 integrate
.. //depot/projects/netperf_socket/sys/sys/buf.h#4 integrate
.. //depot/projects/netperf_socket/sys/sys/cdefs.h#5 integrate
.. //depot/projects/netperf_socket/sys/sys/linker_set.h#3 integrate
.. //depot/projects/netperf_socket/sys/sys/mount.h#12 integrate
.. //depot/projects/netperf_socket/sys/sys/mouse.h#2 integrate
.. //depot/projects/netperf_socket/sys/sys/param.h#21 integrate
.. //depot/projects/netperf_socket/sys/sys/proc.h#20 integrate
.. //depot/projects/netperf_socket/sys/sys/sysctl.h#8 integrate
.. //depot/projects/netperf_socket/sys/sys/systm.h#8 integrate
.. //depot/projects/netperf_socket/sys/ufs/ffs/ffs_alloc.c#6 integrate
.. //depot/projects/netperf_socket/sys/ufs/ffs/ffs_extern.h#3 integrate
.. //depot/projects/netperf_socket/sys/ufs/ffs/ffs_inode.c#3 integrate
.. //depot/projects/netperf_socket/sys/ufs/ffs/ffs_snapshot.c#7 integrate
.. //depot/projects/netperf_socket/sys/ufs/ffs/ffs_softdep.c#6 integrate
.. //depot/projects/netperf_socket/sys/ufs/ffs/ffs_vfsops.c#9 integrate
.. //depot/projects/netperf_socket/sys/ufs/ffs/ffs_vnops.c#6 integrate
.. //depot/projects/netperf_socket/sys/ufs/ufs/inode.h#3 integrate
.. //depot/projects/netperf_socket/sys/ufs/ufs/ufs_acl.c#2 integrate
.. //depot/projects/netperf_socket/sys/ufs/ufs/ufs_inode.c#3 integrate
.. //depot/projects/netperf_socket/sys/ufs/ufs/ufs_lookup.c#4 integrate
.. //depot/projects/netperf_socket/sys/ufs/ufs/ufs_quota.c#4 integrate
.. //depot/projects/netperf_socket/sys/ufs/ufs/ufs_vnops.c#5 integrate
.. //depot/projects/netperf_socket/sys/vm/device_pager.c#5 integrate
.. //depot/projects/netperf_socket/sys/vm/uma_core.c#11 integrate
.. //depot/projects/netperf_socket/sys/vm/uma_int.h#3 integrate
.. //depot/projects/netperf_socket/sys/vm/vm_extern.h#7 integrate
.. //depot/projects/netperf_socket/sys/vm/vm_glue.c#11 integrate
.. //depot/projects/netperf_socket/sys/vm/vm_kern.c#6 integrate
.. //depot/projects/netperf_socket/sys/vm/vm_map.c#15 integrate
.. //depot/projects/netperf_socket/sys/vm/vm_map.h#8 integrate
.. //depot/projects/netperf_socket/sys/vm/vm_object.c#9 integrate
.. //depot/projects/netperf_socket/sys/vm/vm_page.c#13 integrate
Differences ...
==== //depot/projects/netperf_socket/sys/alpha/alpha/autoconf.c#3 (text+ko) ====
@@ -25,12 +25,10 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/alpha/alpha/autoconf.c,v 1.59 2004/07/08 22:35:33 brian Exp $");
+__FBSDID("$FreeBSD: src/sys/alpha/alpha/autoconf.c,v 1.60 2004/07/28 21:54:56 phk Exp $");
#include "opt_bootp.h"
#include "opt_isa.h"
-#include "opt_nfs.h"
-#include "opt_nfsroot.h"
#include <sys/param.h>
#include <sys/systm.h>
@@ -67,8 +65,6 @@
device_t isa_bus_device = 0;
#endif
-extern int nfs_diskless_valid; /* XXX use include file */
-
static void
configure_start()
{
@@ -194,20 +190,3 @@
cold = 0;
}
-
-/*
- * Do legacy root filesystem discovery. This isn't really
- * needed on the Alpha, which has always used the loader.
- */
-void
-cpu_rootconf()
-{
-#if defined(NFSCLIENT) && defined(NFS_ROOT)
- int order = 0;
-#if !defined(BOOTP_NFSROOT)
- if (nfs_diskless_valid)
-#endif
- rootdevnames[order++] = "nfs:";
-#endif
-}
-SYSINIT(cpu_rootconf, SI_SUB_ROOT_CONF, SI_ORDER_FIRST, cpu_rootconf, NULL)
==== //depot/projects/netperf_socket/sys/alpha/alpha/mem.c#6 (text+ko) ====
@@ -37,7 +37,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/alpha/alpha/mem.c,v 1.50 2004/06/16 09:46:26 phk Exp $");
+__FBSDID("$FreeBSD: src/sys/alpha/alpha/mem.c,v 1.51 2004/08/01 11:40:50 markm Exp $");
/*
* Memory special file
@@ -59,85 +59,19 @@
#include <sys/uio.h>
#include <machine/md_var.h>
-#ifdef PERFMON
-#include <machine/perfmon.h>
-#endif
#include <vm/vm.h>
#include <vm/pmap.h>
#include <vm/vm_extern.h>
-static struct cdev *memdev, *kmemdev;
-#ifdef PERFMON
-static struct cdev *perfdev;
-#endif /* PERFMON */
-
-static d_open_t mmopen;
-static d_close_t mmclose;
-static d_read_t mmrw;
-static d_ioctl_t mmioctl;
-static d_mmap_t memmmap;
+#include <machine/memdev.h>
-#define CDEV_MAJOR 2
-static struct cdevsw mem_cdevsw = {
- .d_version = D_VERSION,
- .d_open = mmopen,
- .d_close = mmclose,
- .d_read = mmrw,
- .d_write = mmrw,
- .d_ioctl = mmioctl,
- .d_mmap = memmmap,
- .d_name = "mem",
- .d_maj = CDEV_MAJOR,
- .d_flags = D_MEM | D_NEEDGIANT,
-};
-
struct mem_range_softc mem_range_softc;
-static int
-mmclose(struct cdev *dev, int flags, int fmt, struct thread *td)
+/* ARGSUSED */
+int
+memrw(struct cdev *dev, struct uio *uio, int flags)
{
- switch (minor(dev)) {
-#ifdef PERFMON
- case 32:
- return perfmon_close(dev, flags, fmt, td);
-#endif
- default:
- break;
- }
- return (0);
-}
-
-static int
-mmopen(struct cdev *dev, int flags, int fmt, struct thread *td)
-{
- int error;
-
- switch (minor(dev)) {
- case 0:
- case 1:
- if (flags & FWRITE) {
- error = securelevel_gt(td->td_ucred, 0);
- if (error)
- return (error);
- }
- break;
- case 32:
-#ifdef PERFMON
- return perfmon_open(dev, flags, fmt, td);
-#else
- return ENODEV;
-#endif
- default:
- break;
- }
- return (0);
-}
-
-/*ARGSUSED*/
-static int
-mmrw(struct cdev *dev, struct uio *uio, int flags)
-{
vm_offset_t o, v;
int c = 0;
struct iovec *iov;
@@ -152,13 +86,10 @@
uio->uio_iov++;
uio->uio_iovcnt--;
if (uio->uio_iovcnt < 0)
- panic("mmrw");
+ panic("memrw");
continue;
}
- switch (minor(dev)) {
-
-/* minor device 0 is physical memory */
- case 0:
+ if (minor(dev) == CDEV_MINOR_MEM) {
v = uio->uio_offset;
kmemphys:
/* Allow reads only in RAM. */
@@ -174,9 +105,8 @@
error =
uiomove((caddr_t)ALPHA_PHYS_TO_K0SEG(v), c, uio);
continue;
-
-/* minor device 1 is kernel memory */
- case 1:
+ }
+ else if (minor(dev) == CDEV_MINOR_KMEM) {
v = uio->uio_offset;
if (v >= ALPHA_K0SEG_BASE && v <= ALPHA_K0SEG_END) {
@@ -186,8 +116,9 @@
c = min(iov->iov_len, MAXPHYS);
/*
- * Make sure that all of the pages are currently resident so
- * that we don't create any zero-fill pages.
+ * Make sure that all of the pages are currently
+ * resident so that we don't create any zero-fill
+ * pages.
*/
addr = trunc_page(v);
eaddr = round_page(v + c);
@@ -203,22 +134,16 @@
error = uiomove((caddr_t)v, c, uio);
continue;
}
-
- if (error)
- break;
- iov->iov_base = (char *)iov->iov_base + c;
- iov->iov_len -= c;
- uio->uio_offset += c;
- uio->uio_resid -= c;
+ /* else panic! */
}
return (error);
}
-/*******************************************************\
-* allow user processes to MMAP some memory sections *
-* instead of going through read/write *
-\*******************************************************/
-static int
+/*
+ * allow user processes to MMAP some memory sections
+ * instead of going through read/write
+ */
+int
memmmap(struct cdev *dev, vm_offset_t offset, vm_paddr_t *paddr, int prot)
{
/*
@@ -227,7 +152,7 @@
* could be transient and hence incorrect or invalid at
* a later time.
*/
- if (minor(dev) != 0)
+ if (minor(dev) != CDEV_MINOR_MEM)
return (-1);
/*
@@ -239,59 +164,7 @@
return (0);
}
-static int
-mmioctl(struct cdev *dev, u_long cmd, caddr_t cmdarg, int flags, struct thread *td)
-{
- switch(minor(dev)) {
-#ifdef PERFMON
- case 32:
- return perfmon_ioctl(dev, cmd, cmdarg, flags, td);
-#endif
- default:
- return ENODEV;
- }
-
- return (0);
-}
-
-static int
-mem_modevent(module_t mod, int type, void *data)
+void
+dev_mem_md_init(void)
{
- switch(type) {
- case MOD_LOAD:
- if (bootverbose)
- printf("mem: <memory & I/O>\n");
-/* XXX - ??? */
-#if 0
- /* Initialise memory range handling */
- if (mem_range_softc.mr_op != NULL)
- mem_range_softc.mr_op->init(&mem_range_softc);
-#endif
-
- memdev = make_dev(&mem_cdevsw, 0, UID_ROOT, GID_KMEM,
- 0640, "mem");
- kmemdev = make_dev(&mem_cdevsw, 1, UID_ROOT, GID_KMEM,
- 0640, "kmem");
-#ifdef PERFMON
- perfdev = make_dev(&mem_cdevsw, 32, UID_ROOT, GID_KMEM,
- 0640, "perfmon");
-#endif /* PERFMON */
- return 0;
-
- case MOD_UNLOAD:
- destroy_dev(memdev);
- destroy_dev(kmemdev);
-#ifdef PERFMON
- destroy_dev(perfdev);
-#endif /* PERFMON */
- return 0;
-
- case MOD_SHUTDOWN:
- return 0;
-
- default:
- return EOPNOTSUPP;
- }
}
-
-DEV_MODULE(mem, mem_modevent, NULL);
==== //depot/projects/netperf_socket/sys/alpha/alpha/pmap.c#15 (text+ko) ====
@@ -148,7 +148,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.163 2004/07/21 03:38:46 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.164 2004/07/29 18:56:30 alc Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -1070,7 +1070,11 @@
*/
if ((m = vm_page_alloc(NULL, ptepindex, VM_ALLOC_NOOBJ |
VM_ALLOC_WIRED | VM_ALLOC_ZERO)) == NULL) {
+ PMAP_UNLOCK(pmap);
+ vm_page_unlock_queues();
VM_WAIT;
+ vm_page_lock_queues();
+ PMAP_LOCK(pmap);
/*
* Indicate the need to retry. While waiting, the page table
@@ -1107,10 +1111,8 @@
pt_entry_t* l2map;
if (!pmap_pte_v(l1pte)) {
if (_pmap_allocpte(pmap, NUSERLEV3MAPS + l1index) == NULL) {
- vm_page_lock_queues();
vm_page_unhold(m);
vm_page_free(m);
- vm_page_unlock_queues();
return (NULL);
}
} else {
@@ -1402,11 +1404,11 @@
pv->pv_pmap = pmap;
pv->pv_ptem = mpte;
- vm_page_lock_queues();
+ PMAP_LOCK_ASSERT(pmap, MA_OWNED);
+ mtx_assert(&vm_page_queue_mtx, MA_OWNED);
TAILQ_INSERT_TAIL(&pmap->pm_pvlist, pv, pv_plist);
TAILQ_INSERT_TAIL(&m->md.pv_list, pv, pv_list);
m->md.pv_list_count++;
- vm_page_unlock_queues();
}
/*
@@ -1697,6 +1699,10 @@
#endif
mpte = NULL;
+
+ vm_page_lock_queues();
+ PMAP_LOCK(pmap);
+
/*
* In the case that a page table page is not
* resident, we are creating it here.
@@ -1762,11 +1768,7 @@
*/
if (opa) {
int err;
- vm_page_lock_queues();
- PMAP_LOCK(pmap);
err = pmap_remove_pte(pmap, pte, va);
- PMAP_UNLOCK(pmap);
- vm_page_unlock_queues();
if (err)
panic("pmap_enter: pte vanished, va: 0x%lx", va);
}
@@ -1820,6 +1822,8 @@
if (prot & VM_PROT_EXECUTE)
alpha_pal_imb();
}
+ vm_page_unlock_queues();
+ PMAP_UNLOCK(pmap);
}
/*
@@ -1839,6 +1843,9 @@
register pt_entry_t *pte;
int managed;
+ vm_page_lock_queues();
+ PMAP_LOCK(pmap);
+
/*
* In the case that a page table page is not
* resident, we are creating it here.
@@ -1892,12 +1899,10 @@
pte = vtopte(va);
if (*pte) {
if (mpte != NULL) {
- vm_page_lock_queues();
pmap_unwire_pte_hold(pmap, va, mpte);
- vm_page_unlock_queues();
+ mpte = NULL;
}
- alpha_pal_imb(); /* XXX overkill? */
- return 0;
+ goto out;
}
/*
@@ -1920,8 +1925,10 @@
* Now validate mapping with RO protection
*/
*pte = pmap_phys_to_pte(VM_PAGE_TO_PHYS(m)) | PG_V | PG_KRE | PG_URE | managed;
-
+out:
alpha_pal_imb(); /* XXX overkill? */
+ vm_page_unlock_queues();
+ PMAP_UNLOCK(pmap);
return mpte;
}
==== //depot/projects/netperf_socket/sys/alpha/conf/GENERIC#6 (text+ko) ====
@@ -18,7 +18,7 @@
#
# For hardware specific information check HARDWARE.TXT
#
-# $FreeBSD: src/sys/alpha/conf/GENERIC,v 1.172 2004/07/18 09:03:11 maxim Exp $
+# $FreeBSD: src/sys/alpha/conf/GENERIC,v 1.173 2004/08/01 11:40:50 markm Exp $
machine alpha
cpu EV4
@@ -171,8 +171,10 @@
device xl # 3Com 3c90x (``Boomerang'', ``Cyclone'')
# Pseudo devices.
+device loop # Network loopback
+device mem # Memory and kernel memory devices
+device null # Null and zero devices
device random # Entropy device
-device loop # Network loopback
device ether # Ethernet support
device sl # Kernel SLIP
device ppp # Kernel PPP
==== //depot/projects/netperf_socket/sys/alpha/include/critical.h#3 (text+ko) ====
@@ -33,7 +33,7 @@
* related support functions residing
* in <arch>/<arch>/critical.c - prototyped
*
- * $FreeBSD: src/sys/alpha/include/critical.h,v 1.4 2004/03/05 09:19:59 le Exp $
+ * $FreeBSD: src/sys/alpha/include/critical.h,v 1.5 2004/07/27 16:41:00 rwatson Exp $
*/
#ifndef _MACHINE_CRITICAL_H_
@@ -55,11 +55,9 @@
* of td_critnest, prior to it being incremented to 1.
*/
static __inline void
-cpu_critical_enter(void)
+cpu_critical_enter(struct thread *td)
{
- struct thread *td;
- td = curthread;
td->td_md.md_savecrit = intr_disable();
}
@@ -71,18 +69,16 @@
* exiting the last critical section.
*/
static __inline void
-cpu_critical_exit(void)
+cpu_critical_exit(struct thread *td)
{
- struct thread *td;
- td = curthread;
intr_restore(td->td_md.md_savecrit);
}
#else /* !__GNUC__ */
-void cpu_critical_enter(void);
-void cpu_critical_exit(void);
+void cpu_critical_enter(struct thread *td);
+void cpu_critical_exit(struct thread *td);
#endif /* __GNUC__ */
==== //depot/projects/netperf_socket/sys/alpha/include/param.h#4 (text+ko) ====
@@ -1,4 +1,4 @@
-/* $FreeBSD: src/sys/alpha/include/param.h,v 1.34 2004/07/02 20:21:41 jhb Exp $ */
+/* $FreeBSD: src/sys/alpha/include/param.h,v 1.35 2004/08/01 14:31:45 scottl Exp $ */
/* From: NetBSD: param.h,v 1.20 1997/09/19 13:52:53 leo Exp */
/*
@@ -113,7 +113,10 @@
#define SSIZE 1 /* initial stack size/NBPG */
#define SINCR 1 /* increment of stack/NBPG */
+/* PREEMPTION exposes scheduler bugs that need to be fixed. */
+#if 0
#define PREEMPTION
+#endif
#ifndef KSTACK_PAGES
#define KSTACK_PAGES 2 /* pages of kstack (with pcb) */
==== //depot/projects/netperf_socket/sys/alpha/osf1/osf1_misc.c#4 (text+ko) ====
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/alpha/osf1/osf1_misc.c,v 1.46 2004/03/17 19:59:59 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/alpha/osf1/osf1_misc.c,v 1.47 2004/07/26 07:24:01 cperciva Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -1048,7 +1048,7 @@
PROC_LOCK(p);
oldcred = p->p_ucred;
- if ((error = suser_cred(p->p_ucred, PRISON_ROOT)) != 0 &&
+ if ((error = suser_cred(p->p_ucred, SUSER_ALLOWJAIL)) != 0 &&
uid != oldcred->cr_ruid && uid != oldcred->cr_svuid) {
PROC_UNLOCK(p);
uifree(uip);
@@ -1102,7 +1102,7 @@
PROC_LOCK(p);
oldcred = p->p_ucred;
- if (((error = suser_cred(p->p_ucred, PRISON_ROOT)) != 0 ) &&
+ if (((error = suser_cred(p->p_ucred, SUSER_ALLOWJAIL)) != 0 ) &&
gid != oldcred->cr_rgid && gid != oldcred->cr_svgid) {
PROC_UNLOCK(p);
crfree(newcred);
==== //depot/projects/netperf_socket/sys/amd64/amd64/autoconf.c#4 (text+ko) ====
@@ -33,7 +33,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/autoconf.c,v 1.180 2004/07/08 22:35:33 brian Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/autoconf.c,v 1.181 2004/07/28 21:54:56 phk Exp $");
/*
* Setup the system to run on the current machine.
@@ -45,8 +45,6 @@
*/
#include "opt_bootp.h"
#include "opt_isa.h"
-#include "opt_nfs.h"
-#include "opt_nfsroot.h"
#include "opt_bus.h"
#include <sys/param.h>
@@ -66,10 +64,6 @@
#include <net/if_var.h>
#include <net/ethernet.h>
#include <netinet/in.h>
-#include <nfs/rpcv2.h>
-#include <nfs/nfsproto.h>
-#include <nfsclient/nfs.h>
-#include <nfsclient/nfsdiskless.h>
#include <machine/md_var.h>
@@ -136,22 +130,3 @@
printf("Device configuration finished.\n");
cold = 0;
}
-
-/*
- * Do legacy root filesystem discovery.
- */
-void
-cpu_rootconf()
-{
-#ifdef BOOTP
- bootpc_init();
-#endif
-#if defined(NFSCLIENT) && defined(NFS_ROOT)
-#if !defined(BOOTP_NFSROOT)
- nfs_setup_diskless();
- if (nfs_diskless_valid)
-#endif
- rootdevnames[0] = "nfs:";
-#endif
-}
-SYSINIT(cpu_rootconf, SI_SUB_ROOT_CONF, SI_ORDER_FIRST, cpu_rootconf, NULL)
==== //depot/projects/netperf_socket/sys/amd64/amd64/machdep.c#12 (text+ko) ====
@@ -39,7 +39,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.614 2004/07/13 07:22:54 davidxu Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.615 2004/07/31 14:02:29 davidxu Exp $");
#include "opt_atalk.h"
#include "opt_atpic.h"
@@ -1533,6 +1533,7 @@
tp->tf_rflags = rflags;
tp->tf_rsp = mcp->mc_rsp;
tp->tf_ss = mcp->mc_ss;
+ td->td_pcb->pcb_flags |= PCB_FULLCTX;
return (0);
}
==== //depot/projects/netperf_socket/sys/amd64/amd64/mem.c#6 (text+ko) ====
@@ -37,7 +37,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/mem.c,v 1.116 2004/06/16 09:46:27 phk Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/mem.c,v 1.117 2004/08/01 11:40:50 markm Exp $");
/*
* Memory special file
@@ -47,7 +47,6 @@
#include <sys/conf.h>
#include <sys/fcntl.h>
#include <sys/ioccom.h>
-#include <sys/kernel.h>
#include <sys/lock.h>
#include <sys/malloc.h>
#include <sys/memrange.h>
@@ -58,83 +57,20 @@
#include <sys/systm.h>
#include <sys/uio.h>
-#include <machine/db_machdep.h>
-#include <machine/frame.h>
-#include <machine/psl.h>
#include <machine/specialreg.h>
-#include <machine/vmparam.h>
#include <vm/vm.h>
#include <vm/pmap.h>
#include <vm/vm_extern.h>
-static struct cdev *memdev, *kmemdev, *iodev;
-
-static d_open_t mmopen;
-static d_close_t mmclose;
-static d_read_t mmrw;
-static d_ioctl_t mmioctl;
-static d_mmap_t memmmap;
+#include <machine/memdev.h>
-#define CDEV_MAJOR 2
-static struct cdevsw mem_cdevsw = {
- .d_version = D_VERSION,
- .d_open = mmopen,
- .d_close = mmclose,
- .d_read = mmrw,
- .d_write = mmrw,
- .d_ioctl = mmioctl,
- .d_mmap = memmmap,
- .d_name = "mem",
- .d_maj = CDEV_MAJOR,
- .d_flags = D_MEM | D_NEEDGIANT,
-};
-
-MALLOC_DEFINE(M_MEMDESC, "memdesc", "memory range descriptors");
-
struct mem_range_softc mem_range_softc;
-static int
-mmclose(struct cdev *dev, int flags, int fmt, struct thread *td)
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list