svn commit: r184395 - in user/kmacy/HEAD_fast_xmit/sys: amd64/amd64 amd64/include amd64/linux32 arm/arm arm/at91 arm/conf cam/scsi compat/freebsd32 compat/linux conf contrib/altq/altq contrib/ipfil...

Kip Macy kmacy at FreeBSD.org
Tue Oct 28 06:26:10 UTC 2008


Author: kmacy
Date: Tue Oct 28 06:26:08 2008
New Revision: 184395
URL: http://svn.freebsd.org/changeset/base/184395

Log:
  IF_HEAD_ECMP part2 184390:184393

Added:
  user/kmacy/HEAD_fast_xmit/sys/arm/conf/DEFAULTS
  user/kmacy/HEAD_fast_xmit/sys/mips/conf/DEFAULTS
  user/kmacy/HEAD_fast_xmit/sys/modules/sdhci/
  user/kmacy/HEAD_fast_xmit/sys/modules/sdhci/Makefile
  user/kmacy/HEAD_fast_xmit/sys/security/mac_bsdextended/ugidfw_internal.h
  user/kmacy/HEAD_fast_xmit/sys/security/mac_bsdextended/ugidfw_system.c
  user/kmacy/HEAD_fast_xmit/sys/security/mac_bsdextended/ugidfw_vnode.c
  user/kmacy/HEAD_fast_xmit/sys/sys/cfictl.h
Modified:
  user/kmacy/HEAD_fast_xmit/sys/amd64/amd64/identcpu.c
  user/kmacy/HEAD_fast_xmit/sys/amd64/amd64/initcpu.c
  user/kmacy/HEAD_fast_xmit/sys/amd64/amd64/local_apic.c
  user/kmacy/HEAD_fast_xmit/sys/amd64/amd64/prof_machdep.c
  user/kmacy/HEAD_fast_xmit/sys/amd64/amd64/tsc.c
  user/kmacy/HEAD_fast_xmit/sys/amd64/include/clock.h
  user/kmacy/HEAD_fast_xmit/sys/amd64/include/md_var.h
  user/kmacy/HEAD_fast_xmit/sys/amd64/include/specialreg.h
  user/kmacy/HEAD_fast_xmit/sys/amd64/linux32/linux.h
  user/kmacy/HEAD_fast_xmit/sys/amd64/linux32/linux32_sysvec.c
  user/kmacy/HEAD_fast_xmit/sys/arm/arm/undefined.c
  user/kmacy/HEAD_fast_xmit/sys/arm/at91/at91.c
  user/kmacy/HEAD_fast_xmit/sys/arm/conf/AVILA
  user/kmacy/HEAD_fast_xmit/sys/arm/conf/BWCT
  user/kmacy/HEAD_fast_xmit/sys/arm/conf/CRB
  user/kmacy/HEAD_fast_xmit/sys/arm/conf/DB-78XXX
  user/kmacy/HEAD_fast_xmit/sys/arm/conf/DB-88F5XXX
  user/kmacy/HEAD_fast_xmit/sys/arm/conf/DB-88F6XXX
  user/kmacy/HEAD_fast_xmit/sys/arm/conf/EP80219
  user/kmacy/HEAD_fast_xmit/sys/arm/conf/GUMSTIX
  user/kmacy/HEAD_fast_xmit/sys/arm/conf/HL200
  user/kmacy/HEAD_fast_xmit/sys/arm/conf/IQ31244
  user/kmacy/HEAD_fast_xmit/sys/arm/conf/KB920X
  user/kmacy/HEAD_fast_xmit/sys/arm/conf/NSLU
  user/kmacy/HEAD_fast_xmit/sys/arm/conf/SIMICS
  user/kmacy/HEAD_fast_xmit/sys/arm/conf/SKYEYE
  user/kmacy/HEAD_fast_xmit/sys/cam/scsi/scsi_target.c
  user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/freebsd32_misc.c
  user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/freebsd32_proto.h
  user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/freebsd32_syscall.h
  user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/freebsd32_syscalls.c
  user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/freebsd32_sysent.c
  user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/syscalls.master
  user/kmacy/HEAD_fast_xmit/sys/compat/linux/linux_ioctl.c
  user/kmacy/HEAD_fast_xmit/sys/compat/linux/linux_signal.c
  user/kmacy/HEAD_fast_xmit/sys/compat/linux/linux_signal.h
  user/kmacy/HEAD_fast_xmit/sys/compat/linux/linux_socket.c
  user/kmacy/HEAD_fast_xmit/sys/compat/linux/linux_util.c
  user/kmacy/HEAD_fast_xmit/sys/conf/NOTES
  user/kmacy/HEAD_fast_xmit/sys/conf/files
  user/kmacy/HEAD_fast_xmit/sys/conf/files.arm
  user/kmacy/HEAD_fast_xmit/sys/conf/files.mips
  user/kmacy/HEAD_fast_xmit/sys/conf/files.powerpc
  user/kmacy/HEAD_fast_xmit/sys/conf/options
  user/kmacy/HEAD_fast_xmit/sys/contrib/altq/altq/altq_cbq.c
  user/kmacy/HEAD_fast_xmit/sys/contrib/altq/altq/altq_cdnr.c
  user/kmacy/HEAD_fast_xmit/sys/contrib/altq/altq/altq_hfsc.c
  user/kmacy/HEAD_fast_xmit/sys/contrib/altq/altq/altq_priq.c
  user/kmacy/HEAD_fast_xmit/sys/contrib/altq/altq/altq_red.c
  user/kmacy/HEAD_fast_xmit/sys/contrib/altq/altq/altq_rio.c
  user/kmacy/HEAD_fast_xmit/sys/contrib/altq/altq/altq_rmclass.c
  user/kmacy/HEAD_fast_xmit/sys/contrib/altq/altq/altq_subr.c
  user/kmacy/HEAD_fast_xmit/sys/contrib/ipfilter/netinet/ip_compat.h
  user/kmacy/HEAD_fast_xmit/sys/fs/cd9660/cd9660_node.c
  user/kmacy/HEAD_fast_xmit/sys/fs/cd9660/cd9660_vfsops.c
  user/kmacy/HEAD_fast_xmit/sys/fs/cd9660/cd9660_vnops.c
  user/kmacy/HEAD_fast_xmit/sys/fs/fdescfs/fdesc_vfsops.c
  user/kmacy/HEAD_fast_xmit/sys/fs/fdescfs/fdesc_vnops.c
  user/kmacy/HEAD_fast_xmit/sys/fs/fifofs/fifo_vnops.c
  user/kmacy/HEAD_fast_xmit/sys/fs/hpfs/hpfs_subr.c
  user/kmacy/HEAD_fast_xmit/sys/fs/hpfs/hpfs_vfsops.c
  user/kmacy/HEAD_fast_xmit/sys/fs/hpfs/hpfs_vnops.c
  user/kmacy/HEAD_fast_xmit/sys/fs/msdosfs/msdosfs_denode.c
  user/kmacy/HEAD_fast_xmit/sys/fs/msdosfs/msdosfs_vnops.c
  user/kmacy/HEAD_fast_xmit/sys/fs/ntfs/ntfs_subr.c
  user/kmacy/HEAD_fast_xmit/sys/fs/ntfs/ntfs_vfsops.c
  user/kmacy/HEAD_fast_xmit/sys/fs/ntfs/ntfs_vnops.c
  user/kmacy/HEAD_fast_xmit/sys/fs/nullfs/null_subr.c
  user/kmacy/HEAD_fast_xmit/sys/fs/nullfs/null_vnops.c
  user/kmacy/HEAD_fast_xmit/sys/fs/nwfs/nwfs_node.c
  user/kmacy/HEAD_fast_xmit/sys/fs/nwfs/nwfs_vfsops.c
  user/kmacy/HEAD_fast_xmit/sys/fs/portalfs/portal_vfsops.c
  user/kmacy/HEAD_fast_xmit/sys/fs/portalfs/portal_vnops.c
  user/kmacy/HEAD_fast_xmit/sys/fs/pseudofs/pseudofs.c
  user/kmacy/HEAD_fast_xmit/sys/fs/pseudofs/pseudofs_vncache.c
  user/kmacy/HEAD_fast_xmit/sys/fs/smbfs/smbfs_node.c
  user/kmacy/HEAD_fast_xmit/sys/fs/smbfs/smbfs_vfsops.c
  user/kmacy/HEAD_fast_xmit/sys/fs/udf/udf_vfsops.c
  user/kmacy/HEAD_fast_xmit/sys/fs/udf/udf_vnops.c
  user/kmacy/HEAD_fast_xmit/sys/fs/unionfs/union_subr.c
  user/kmacy/HEAD_fast_xmit/sys/geom/geom_disk.c
  user/kmacy/HEAD_fast_xmit/sys/geom/part/g_part_bsd.c
  user/kmacy/HEAD_fast_xmit/sys/geom/part/g_part_pc98.c
  user/kmacy/HEAD_fast_xmit/sys/geom/part/g_part_vtoc8.c
  user/kmacy/HEAD_fast_xmit/sys/geom/vinum/geom_vinum.c
  user/kmacy/HEAD_fast_xmit/sys/geom/vinum/geom_vinum.h
  user/kmacy/HEAD_fast_xmit/sys/geom/vinum/geom_vinum_drive.c
  user/kmacy/HEAD_fast_xmit/sys/geom/vinum/geom_vinum_init.c
  user/kmacy/HEAD_fast_xmit/sys/geom/vinum/geom_vinum_plex.c
  user/kmacy/HEAD_fast_xmit/sys/geom/vinum/geom_vinum_raid5.c
  user/kmacy/HEAD_fast_xmit/sys/geom/vinum/geom_vinum_rm.c
  user/kmacy/HEAD_fast_xmit/sys/geom/vinum/geom_vinum_state.c
  user/kmacy/HEAD_fast_xmit/sys/geom/vinum/geom_vinum_subr.c
  user/kmacy/HEAD_fast_xmit/sys/geom/vinum/geom_vinum_volume.c
  user/kmacy/HEAD_fast_xmit/sys/gnu/fs/ext2fs/ext2_inode.c
  user/kmacy/HEAD_fast_xmit/sys/gnu/fs/ext2fs/ext2_lookup.c
  user/kmacy/HEAD_fast_xmit/sys/gnu/fs/ext2fs/ext2_vfsops.c
  user/kmacy/HEAD_fast_xmit/sys/gnu/fs/reiserfs/reiserfs_inode.c
  user/kmacy/HEAD_fast_xmit/sys/gnu/fs/reiserfs/reiserfs_vfsops.c
  user/kmacy/HEAD_fast_xmit/sys/i386/conf/NOTES
  user/kmacy/HEAD_fast_xmit/sys/i386/cpufreq/powernow.c
  user/kmacy/HEAD_fast_xmit/sys/i386/i386/apic_vector.s
  user/kmacy/HEAD_fast_xmit/sys/i386/i386/identcpu.c
  user/kmacy/HEAD_fast_xmit/sys/i386/i386/initcpu.c
  user/kmacy/HEAD_fast_xmit/sys/i386/i386/local_apic.c
  user/kmacy/HEAD_fast_xmit/sys/i386/i386/sys_machdep.c
  user/kmacy/HEAD_fast_xmit/sys/i386/i386/trap.c
  user/kmacy/HEAD_fast_xmit/sys/i386/i386/tsc.c
  user/kmacy/HEAD_fast_xmit/sys/i386/include/apicvar.h
  user/kmacy/HEAD_fast_xmit/sys/i386/include/clock.h
  user/kmacy/HEAD_fast_xmit/sys/i386/include/md_var.h
  user/kmacy/HEAD_fast_xmit/sys/i386/include/pcpu.h
  user/kmacy/HEAD_fast_xmit/sys/i386/include/smp.h
  user/kmacy/HEAD_fast_xmit/sys/i386/include/specialreg.h
  user/kmacy/HEAD_fast_xmit/sys/i386/include/xen/evtchn.h
  user/kmacy/HEAD_fast_xmit/sys/i386/include/xen/xen-os.h
  user/kmacy/HEAD_fast_xmit/sys/i386/include/xen/xen_intr.h
  user/kmacy/HEAD_fast_xmit/sys/i386/include/xen/xenfunc.h
  user/kmacy/HEAD_fast_xmit/sys/i386/isa/pmtimer.c
  user/kmacy/HEAD_fast_xmit/sys/i386/isa/prof_machdep.c
  user/kmacy/HEAD_fast_xmit/sys/i386/linux/linux.h
  user/kmacy/HEAD_fast_xmit/sys/i386/linux/linux_sysvec.c
  user/kmacy/HEAD_fast_xmit/sys/i386/xen/clock.c
  user/kmacy/HEAD_fast_xmit/sys/i386/xen/exception.s
  user/kmacy/HEAD_fast_xmit/sys/i386/xen/mp_machdep.c
  user/kmacy/HEAD_fast_xmit/sys/i386/xen/xen_machdep.c
  user/kmacy/HEAD_fast_xmit/sys/ia64/ia64/mp_machdep.c
  user/kmacy/HEAD_fast_xmit/sys/ia64/ia64/sscdisk.c
  user/kmacy/HEAD_fast_xmit/sys/kern/kern_descrip.c
  user/kmacy/HEAD_fast_xmit/sys/kern/kern_event.c
  user/kmacy/HEAD_fast_xmit/sys/kern/kern_jail.c
  user/kmacy/HEAD_fast_xmit/sys/kern/kern_linker.c
  user/kmacy/HEAD_fast_xmit/sys/kern/kern_lockf.c
  user/kmacy/HEAD_fast_xmit/sys/kern/kern_malloc.c
  user/kmacy/HEAD_fast_xmit/sys/kern/kern_mtxpool.c
  user/kmacy/HEAD_fast_xmit/sys/kern/kern_proc.c
  user/kmacy/HEAD_fast_xmit/sys/kern/kern_prot.c
  user/kmacy/HEAD_fast_xmit/sys/kern/kern_resource.c
  user/kmacy/HEAD_fast_xmit/sys/kern/kern_sig.c
  user/kmacy/HEAD_fast_xmit/sys/kern/kern_thr.c
  user/kmacy/HEAD_fast_xmit/sys/kern/kern_thread.c
  user/kmacy/HEAD_fast_xmit/sys/kern/kern_time.c
  user/kmacy/HEAD_fast_xmit/sys/kern/kern_timeout.c
  user/kmacy/HEAD_fast_xmit/sys/kern/subr_blist.c
  user/kmacy/HEAD_fast_xmit/sys/kern/subr_param.c
  user/kmacy/HEAD_fast_xmit/sys/kern/subr_rman.c
  user/kmacy/HEAD_fast_xmit/sys/kern/subr_sleepqueue.c
  user/kmacy/HEAD_fast_xmit/sys/kern/subr_stack.c
  user/kmacy/HEAD_fast_xmit/sys/kern/subr_witness.c
  user/kmacy/HEAD_fast_xmit/sys/kern/sys_process.c
  user/kmacy/HEAD_fast_xmit/sys/kern/tty.c
  user/kmacy/HEAD_fast_xmit/sys/kern/uipc_accf.c
  user/kmacy/HEAD_fast_xmit/sys/kern/uipc_mqueue.c
  user/kmacy/HEAD_fast_xmit/sys/kern/uipc_syscalls.c
  user/kmacy/HEAD_fast_xmit/sys/kern/uipc_usrreq.c
  user/kmacy/HEAD_fast_xmit/sys/kern/vfs_export.c
  user/kmacy/HEAD_fast_xmit/sys/kern/vfs_subr.c
  user/kmacy/HEAD_fast_xmit/sys/kern/vfs_syscalls.c
  user/kmacy/HEAD_fast_xmit/sys/kern/vfs_vnops.c
  user/kmacy/HEAD_fast_xmit/sys/kern/vnode_if.src
  user/kmacy/HEAD_fast_xmit/sys/mips/conf/ADM5120
  user/kmacy/HEAD_fast_xmit/sys/mips/conf/IDT
  user/kmacy/HEAD_fast_xmit/sys/mips/conf/MALTA
  user/kmacy/HEAD_fast_xmit/sys/mips/conf/QEMU
  user/kmacy/HEAD_fast_xmit/sys/mips/conf/SENTRY5
  user/kmacy/HEAD_fast_xmit/sys/modules/Makefile
  user/kmacy/HEAD_fast_xmit/sys/modules/mac_bsdextended/Makefile
  user/kmacy/HEAD_fast_xmit/sys/modules/u3g/Makefile
  user/kmacy/HEAD_fast_xmit/sys/net/bpf.c
  user/kmacy/HEAD_fast_xmit/sys/net/bsd_comp.c
  user/kmacy/HEAD_fast_xmit/sys/net/if.c
  user/kmacy/HEAD_fast_xmit/sys/net/if_arcsubr.c
  user/kmacy/HEAD_fast_xmit/sys/net/if_ethersubr.c
  user/kmacy/HEAD_fast_xmit/sys/net/if_fddisubr.c
  user/kmacy/HEAD_fast_xmit/sys/net/if_iso88025subr.c
  user/kmacy/HEAD_fast_xmit/sys/net/if_ppp.c
  user/kmacy/HEAD_fast_xmit/sys/net/if_sl.c
  user/kmacy/HEAD_fast_xmit/sys/net/if_tap.c
  user/kmacy/HEAD_fast_xmit/sys/net/if_tun.c
  user/kmacy/HEAD_fast_xmit/sys/net/ppp_deflate.c
  user/kmacy/HEAD_fast_xmit/sys/net/rtsock.c
  user/kmacy/HEAD_fast_xmit/sys/net80211/_ieee80211.h
  user/kmacy/HEAD_fast_xmit/sys/net80211/ieee80211.c
  user/kmacy/HEAD_fast_xmit/sys/net80211/ieee80211_adhoc.c
  user/kmacy/HEAD_fast_xmit/sys/net80211/ieee80211_crypto.c
  user/kmacy/HEAD_fast_xmit/sys/net80211/ieee80211_freebsd.h
  user/kmacy/HEAD_fast_xmit/sys/net80211/ieee80211_hostap.c
  user/kmacy/HEAD_fast_xmit/sys/net80211/ieee80211_ht.c
  user/kmacy/HEAD_fast_xmit/sys/net80211/ieee80211_ht.h
  user/kmacy/HEAD_fast_xmit/sys/net80211/ieee80211_input.c
  user/kmacy/HEAD_fast_xmit/sys/net80211/ieee80211_ioctl.c
  user/kmacy/HEAD_fast_xmit/sys/net80211/ieee80211_node.c
  user/kmacy/HEAD_fast_xmit/sys/net80211/ieee80211_node.h
  user/kmacy/HEAD_fast_xmit/sys/net80211/ieee80211_output.c
  user/kmacy/HEAD_fast_xmit/sys/net80211/ieee80211_power.c
  user/kmacy/HEAD_fast_xmit/sys/net80211/ieee80211_power.h
  user/kmacy/HEAD_fast_xmit/sys/net80211/ieee80211_proto.h
  user/kmacy/HEAD_fast_xmit/sys/net80211/ieee80211_regdomain.c
  user/kmacy/HEAD_fast_xmit/sys/net80211/ieee80211_scan_sta.c
  user/kmacy/HEAD_fast_xmit/sys/net80211/ieee80211_sta.c
  user/kmacy/HEAD_fast_xmit/sys/net80211/ieee80211_var.h
  user/kmacy/HEAD_fast_xmit/sys/netatalk/ddp_pcb.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/atm/sscfu/ng_sscfu_cust.h
  user/kmacy/HEAD_fast_xmit/sys/netgraph/bluetooth/drivers/h4/ng_h4.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/bluetooth/hci/ng_hci_main.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/bluetooth/hci/ng_hci_misc.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/bluetooth/l2cap/ng_l2cap_main.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/bluetooth/l2cap/ng_l2cap_misc.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/bluetooth/l2cap/ng_l2cap_misc.h
  user/kmacy/HEAD_fast_xmit/sys/netgraph/bluetooth/socket/ng_btsocket_hci_raw.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap_raw.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/bluetooth/socket/ng_btsocket_sco.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/netflow/netflow.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/netflow/ng_netflow.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/netgraph.h
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_UI.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_async.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_atmllc.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_base.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_bpf.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_bridge.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_cisco.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_device.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_eiface.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_etf.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_ether.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_fec.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_frame_relay.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_gif.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_gif_demux.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_hole.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_iface.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_ipfw.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_ksocket.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_l2tp.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_lmi.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_message.h
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_mppc.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_nat.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_one2many.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_parse.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_pipe.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_ppp.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_pptpgre.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_rfc1490.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_sample.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_split.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_sppp.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_tag.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_tcpmss.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_tee.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_tty.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_vjc.c
  user/kmacy/HEAD_fast_xmit/sys/netgraph/ng_vlan.c
  user/kmacy/HEAD_fast_xmit/sys/netinet/igmp.c
  user/kmacy/HEAD_fast_xmit/sys/netinet/in.c
  user/kmacy/HEAD_fast_xmit/sys/netinet/in_mcast.c
  user/kmacy/HEAD_fast_xmit/sys/netinet/in_pcb.c
  user/kmacy/HEAD_fast_xmit/sys/netinet/in_pcb.h
  user/kmacy/HEAD_fast_xmit/sys/netinet/ip_carp.c
  user/kmacy/HEAD_fast_xmit/sys/netinet/sctp_os_bsd.h
  user/kmacy/HEAD_fast_xmit/sys/netinet/sctp_output.c
  user/kmacy/HEAD_fast_xmit/sys/netinet/sctp_timer.c
  user/kmacy/HEAD_fast_xmit/sys/netinet/sctp_timer.h
  user/kmacy/HEAD_fast_xmit/sys/netinet/tcp_input.c
  user/kmacy/HEAD_fast_xmit/sys/netinet/tcp_sack.c
  user/kmacy/HEAD_fast_xmit/sys/netinet/tcp_syncache.c
  user/kmacy/HEAD_fast_xmit/sys/netinet6/frag6.c
  user/kmacy/HEAD_fast_xmit/sys/netinet6/in6.c
  user/kmacy/HEAD_fast_xmit/sys/netinet6/in6_pcb.c
  user/kmacy/HEAD_fast_xmit/sys/netinet6/in6_src.c
  user/kmacy/HEAD_fast_xmit/sys/netinet6/ip6_var.h
  user/kmacy/HEAD_fast_xmit/sys/netinet6/raw_ip6.c
  user/kmacy/HEAD_fast_xmit/sys/netipsec/keysock.c
  user/kmacy/HEAD_fast_xmit/sys/netipsec/xform_ah.c
  user/kmacy/HEAD_fast_xmit/sys/netipx/ipx_pcb.c
  user/kmacy/HEAD_fast_xmit/sys/netipx/spx_usrreq.c
  user/kmacy/HEAD_fast_xmit/sys/netnatm/natm.c
  user/kmacy/HEAD_fast_xmit/sys/netnatm/natm_pcb.c
  user/kmacy/HEAD_fast_xmit/sys/netncp/ncp_conn.c
  user/kmacy/HEAD_fast_xmit/sys/netncp/ncp_rq.c
  user/kmacy/HEAD_fast_xmit/sys/netncp/ncp_sock.c
  user/kmacy/HEAD_fast_xmit/sys/netncp/ncp_subr.c
  user/kmacy/HEAD_fast_xmit/sys/netsmb/smb_rq.c
  user/kmacy/HEAD_fast_xmit/sys/netsmb/smb_trantcp.c
  user/kmacy/HEAD_fast_xmit/sys/nfs4client/nfs4_dev.c
  user/kmacy/HEAD_fast_xmit/sys/nfs4client/nfs4_idmap.c
  user/kmacy/HEAD_fast_xmit/sys/nfs4client/nfs4_socket.c
  user/kmacy/HEAD_fast_xmit/sys/nfs4client/nfs4_vfsops.c
  user/kmacy/HEAD_fast_xmit/sys/nfs4client/nfs4_vn_subs.c
  user/kmacy/HEAD_fast_xmit/sys/nfs4client/nfs4_vnops.c
  user/kmacy/HEAD_fast_xmit/sys/nfsclient/krpc_subr.c
  user/kmacy/HEAD_fast_xmit/sys/nfsclient/nfs_lock.c
  user/kmacy/HEAD_fast_xmit/sys/nfsclient/nfs_node.c
  user/kmacy/HEAD_fast_xmit/sys/nfsclient/nfs_socket.c
  user/kmacy/HEAD_fast_xmit/sys/nfsclient/nfs_subs.c
  user/kmacy/HEAD_fast_xmit/sys/nfsclient/nfs_vfsops.c
  user/kmacy/HEAD_fast_xmit/sys/nfsclient/nfs_vnops.c
  user/kmacy/HEAD_fast_xmit/sys/nfsserver/nfs_serv.c
  user/kmacy/HEAD_fast_xmit/sys/nfsserver/nfs_srvcache.c
  user/kmacy/HEAD_fast_xmit/sys/nfsserver/nfs_srvsock.c
  user/kmacy/HEAD_fast_xmit/sys/nfsserver/nfs_syscalls.c
  user/kmacy/HEAD_fast_xmit/sys/opencrypto/cryptodev.c
  user/kmacy/HEAD_fast_xmit/sys/opencrypto/cryptosoft.c
  user/kmacy/HEAD_fast_xmit/sys/opencrypto/deflate.c
  user/kmacy/HEAD_fast_xmit/sys/opencrypto/xform.c
  user/kmacy/HEAD_fast_xmit/sys/pc98/pc98/pc98_machdep.c
  user/kmacy/HEAD_fast_xmit/sys/pc98/pc98/pc98_machdep.h
  user/kmacy/HEAD_fast_xmit/sys/pci/if_rl.c
  user/kmacy/HEAD_fast_xmit/sys/pci/if_rlreg.h
  user/kmacy/HEAD_fast_xmit/sys/rpc/rpcclnt.c
  user/kmacy/HEAD_fast_xmit/sys/security/mac/mac_framework.h
  user/kmacy/HEAD_fast_xmit/sys/security/mac/mac_inet6.c
  user/kmacy/HEAD_fast_xmit/sys/security/mac/mac_policy.h
  user/kmacy/HEAD_fast_xmit/sys/security/mac_biba/mac_biba.c
  user/kmacy/HEAD_fast_xmit/sys/security/mac_bsdextended/mac_bsdextended.c
  user/kmacy/HEAD_fast_xmit/sys/security/mac_lomac/mac_lomac.c
  user/kmacy/HEAD_fast_xmit/sys/security/mac_mls/mac_mls.c
  user/kmacy/HEAD_fast_xmit/sys/security/mac_stub/mac_stub.c
  user/kmacy/HEAD_fast_xmit/sys/security/mac_test/mac_test.c
  user/kmacy/HEAD_fast_xmit/sys/sparc64/sparc64/db_trace.c
  user/kmacy/HEAD_fast_xmit/sys/sparc64/sparc64/stack_machdep.c
  user/kmacy/HEAD_fast_xmit/sys/sun4v/sun4v/db_trace.c
  user/kmacy/HEAD_fast_xmit/sys/sun4v/sun4v/stack_machdep.c
  user/kmacy/HEAD_fast_xmit/sys/sys/cdefs.h
  user/kmacy/HEAD_fast_xmit/sys/sys/cons.h
  user/kmacy/HEAD_fast_xmit/sys/sys/param.h
  user/kmacy/HEAD_fast_xmit/sys/sys/proc.h
  user/kmacy/HEAD_fast_xmit/sys/sys/syscallsubr.h
  user/kmacy/HEAD_fast_xmit/sys/ufs/ffs/ffs_inode.c
  user/kmacy/HEAD_fast_xmit/sys/ufs/ffs/ffs_snapshot.c
  user/kmacy/HEAD_fast_xmit/sys/ufs/ffs/ffs_softdep.c
  user/kmacy/HEAD_fast_xmit/sys/ufs/ffs/ffs_vfsops.c
  user/kmacy/HEAD_fast_xmit/sys/ufs/ffs/ffs_vnops.c
  user/kmacy/HEAD_fast_xmit/sys/ufs/ufs/ufs_dirhash.c
  user/kmacy/HEAD_fast_xmit/sys/ufs/ufs/ufs_extattr.c
  user/kmacy/HEAD_fast_xmit/sys/ufs/ufs/ufs_vnops.c
  user/kmacy/HEAD_fast_xmit/sys/vm/vm_mmap.c
  user/kmacy/HEAD_fast_xmit/sys/xen/evtchn/evtchn.c

Modified: user/kmacy/HEAD_fast_xmit/sys/amd64/amd64/identcpu.c
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/amd64/amd64/identcpu.c	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/amd64/amd64/identcpu.c	Tue Oct 28 06:26:08 2008	(r184395)
@@ -348,6 +348,19 @@ printcpuinfo(void)
 				cpu_feature &= ~CPUID_HTT;
 
 			/*
+			 * If this CPU supports P-state invariant TSC then
+			 * mention the capability.
+			 */
+			if (!tsc_is_invariant &&
+			    (strcmp(cpu_vendor, "AuthenticAMD") == 0 &&
+			    ((amd_pminfo & AMDPM_TSC_INVARIANT) != 0 ||
+			    AMD64_CPU_FAMILY(cpu_id) >= 0x10 ||
+			    cpu_id == 0x60fb2))) {
+				tsc_is_invariant = 1;
+				printf("\n  TSC: P-state invariant");
+			}
+
+			/*
 			 * If this CPU supports HTT or CMP then mention the
 			 * number of physical/logical cores it contains.
 			 */
@@ -409,8 +422,11 @@ panicifcpuunsupported(void)
 static void
 tsc_freq_changed(void *arg, const struct cf_level *level, int status)
 {
-	/* If there was an error during the transition, don't do anything. */
-	if (status != 0)
+	/*
+	 * If there was an error during the transition or
+	 * TSC is P-state invariant, don't do anything.
+	 */
+	if (status != 0 || tsc_is_invariant)
 		return;
 
 	/* Total setting for this level gives the new frequency in MHz. */
@@ -451,6 +467,10 @@ identify_cpu(void)
 		amd_feature = regs[3] & ~(cpu_feature & 0x0183f3ff);
 		amd_feature2 = regs[2];
 	}
+	if (cpu_exthigh >= 0x80000007) {
+		do_cpuid(0x80000007, regs);
+		amd_pminfo = regs[3];
+	}
 	if (cpu_exthigh >= 0x80000008) {
 		do_cpuid(0x80000008, regs);
 		cpu_procinfo2 = regs[2];

Modified: user/kmacy/HEAD_fast_xmit/sys/amd64/amd64/initcpu.c
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/amd64/amd64/initcpu.c	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/amd64/amd64/initcpu.c	Tue Oct 28 06:26:08 2008	(r184395)
@@ -53,6 +53,7 @@ u_int	cpu_feature;		/* Feature flags */
 u_int	cpu_feature2;		/* Feature flags */
 u_int	amd_feature;		/* AMD feature flags */
 u_int	amd_feature2;		/* AMD feature flags */
+u_int	amd_pminfo;		/* AMD advanced power management info */
 u_int	cpu_high;		/* Highest arg to CPUID */
 u_int	cpu_exthigh;		/* Highest arg to extended CPUID */
 u_int	cpu_id;			/* Stepping ID */

Modified: user/kmacy/HEAD_fast_xmit/sys/amd64/amd64/local_apic.c
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/amd64/amd64/local_apic.c	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/amd64/amd64/local_apic.c	Tue Oct 28 06:26:08 2008	(r184395)
@@ -401,7 +401,10 @@ lapic_setup_clock(void)
 		lapic_timer_hz = hz * 2;
 	else
 		lapic_timer_hz = hz * 4;
-	stathz = lapic_timer_hz / (lapic_timer_hz / 128);
+	if (lapic_timer_hz < 128)
+		stathz = lapic_timer_hz;
+	else
+		stathz = lapic_timer_hz / (lapic_timer_hz / 128);
 	profhz = lapic_timer_hz;
 	lapic_timer_period = value / lapic_timer_hz;
 

Modified: user/kmacy/HEAD_fast_xmit/sys/amd64/amd64/prof_machdep.c
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/amd64/amd64/prof_machdep.c	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/amd64/amd64/prof_machdep.c	Tue Oct 28 06:26:08 2008	(r184395)
@@ -383,8 +383,11 @@ static void
 tsc_freq_changed(void *arg, const struct cf_level *level, int status)
 {
 
-	/* If there was an error during the transition, don't do anything. */
-	if (status != 0)
+	/*
+	 * If there was an error during the transition or
+	 * TSC is P-state invariant, don't do anything.
+	 */
+	if (status != 0 || tsc_is_invariant)
 		return;
 	if (cputime_prof_active && cputime_clock == CPUTIME_CLOCK_TSC)
 		printf("warning: cpu freq changed while profiling active\n");

Modified: user/kmacy/HEAD_fast_xmit/sys/amd64/amd64/tsc.c
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/amd64/amd64/tsc.c	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/amd64/amd64/tsc.c	Tue Oct 28 06:26:08 2008	(r184395)
@@ -48,8 +48,13 @@ __FBSDID("$FreeBSD$");
 
 uint64_t	tsc_freq;
 int		tsc_is_broken;
+int		tsc_is_invariant;
 static eventhandler_tag tsc_levels_tag, tsc_pre_tag, tsc_post_tag;
 
+SYSCTL_INT(_kern_timecounter, OID_AUTO, invariant_tsc, CTLFLAG_RDTUN,
+    &tsc_is_invariant, 0, "Indicates whether the TSC is P-state invariant");
+TUNABLE_INT("kern.timecounter.invariant_tsc", &tsc_is_invariant);
+
 #ifdef SMP
 static int	smp_tsc;
 SYSCTL_INT(_kern_timecounter, OID_AUTO, smp_tsc, CTLFLAG_RDTUN, &smp_tsc, 0,
@@ -174,11 +179,12 @@ static void
 tsc_freq_changing(void *arg, const struct cf_level *level, int *status)
 {
 
-	if (*status != 0 || timecounter != &tsc_timecounter)
+	if (*status != 0 || timecounter != &tsc_timecounter ||
+	    tsc_is_invariant)
 		return;
 
 	printf("timecounter TSC must not be in use when "
-	     "changing frequencies; change denied\n");
+	    "changing frequencies; change denied\n");
 	*status = EBUSY;
 }
 
@@ -186,8 +192,11 @@ tsc_freq_changing(void *arg, const struc
 static void
 tsc_freq_changed(void *arg, const struct cf_level *level, int status)
 {
-	/* If there was an error during the transition, don't do anything. */
-	if (status != 0)
+	/*
+	 * If there was an error during the transition or
+	 * TSC is P-state invariant, don't do anything.
+	 */
+	if (status != 0 || tsc_is_invariant)
 		return;
 
 	/* Total setting for this level gives the new frequency in MHz. */

Modified: user/kmacy/HEAD_fast_xmit/sys/amd64/include/clock.h
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/amd64/include/clock.h	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/amd64/include/clock.h	Tue Oct 28 06:26:08 2008	(r184395)
@@ -20,6 +20,7 @@ extern u_int	i8254_freq;
 extern int	i8254_max_count;
 extern uint64_t	tsc_freq;
 extern int	tsc_is_broken;
+extern int	tsc_is_invariant;
 
 void	i8254_init(void);
 

Modified: user/kmacy/HEAD_fast_xmit/sys/amd64/include/md_var.h
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/amd64/include/md_var.h	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/amd64/include/md_var.h	Tue Oct 28 06:26:08 2008	(r184395)
@@ -44,6 +44,7 @@ extern	u_int	cpu_feature;
 extern	u_int	cpu_feature2;
 extern	u_int	amd_feature;
 extern	u_int	amd_feature2;
+extern	u_int	amd_pminfo;
 extern	u_int	cpu_fxsr;
 extern	u_int	cpu_high;
 extern	u_int	cpu_id;

Modified: user/kmacy/HEAD_fast_xmit/sys/amd64/include/specialreg.h
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/amd64/include/specialreg.h	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/amd64/include/specialreg.h	Tue Oct 28 06:26:08 2008	(r184395)
@@ -153,6 +153,21 @@
 #define	AMDID2_PREFETCH	0x00000100
 
 /*
+ * CPUID instruction 1 eax info
+ */
+#define	CPUID_STEPPING		0x0000000f
+#define	CPUID_MODEL		0x000000f0
+#define	CPUID_FAMILY		0x00000f00
+#define	CPUID_EXT_MODEL		0x000f0000
+#define	CPUID_EXT_FAMILY	0x0ff00000
+#define	AMD64_CPU_MODEL(id) \
+    ((((id) & CPUID_MODEL) >> 4) | \
+    (((id) & CPUID_EXT_MODEL) >> 12))
+#define	AMD64_CPU_FAMILY(id) \
+    ((((id) & CPUID_FAMILY) >> 8) + \
+    (((id) & CPUID_EXT_FAMILY) >> 20))
+
+/*
  * CPUID instruction 1 ebx info
  */
 #define	CPUID_BRAND_INDEX	0x000000ff
@@ -161,6 +176,19 @@
 #define	CPUID_LOCAL_APIC_ID	0xff000000
 
 /*
+ * AMD extended function 8000_0007h edx info
+ */
+#define	AMDPM_TS		0x00000001
+#define	AMDPM_FID		0x00000002
+#define	AMDPM_VID		0x00000004
+#define	AMDPM_TTP		0x00000008
+#define	AMDPM_TM		0x00000010
+#define	AMDPM_STC		0x00000020
+#define	AMDPM_100MHZ_STEPS	0x00000040
+#define	AMDPM_HW_PSTATE		0x00000080
+#define	AMDPM_TSC_INVARIANT	0x00000100
+
+/*
  * AMD extended function 8000_0008h ecx info
  */
 #define	AMDID_CMP_CORES		0x000000ff

Modified: user/kmacy/HEAD_fast_xmit/sys/amd64/linux32/linux.h
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/amd64/linux32/linux.h	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/amd64/linux32/linux.h	Tue Oct 28 06:26:08 2008	(r184395)
@@ -86,6 +86,8 @@ typedef l_long		l_suseconds_t;
 typedef l_long		l_time_t;
 typedef l_uint		l_uid_t;
 typedef l_ushort	l_uid16_t;
+typedef l_int		l_timer_t;
+typedef l_int		l_mqd_t;
 
 typedef struct {
 	l_int		val[2];
@@ -399,10 +401,10 @@ struct l_ucontext {
 #define	LINUX_SI_MAX_SIZE	128
 #define	LINUX_SI_PAD_SIZE	((LINUX_SI_MAX_SIZE/sizeof(l_int)) - 3)
 
-union l_sigval {
+typedef union l_sigval {
 	l_int		sival_int;
 	l_uintptr_t	sival_ptr;
-};
+} l_sigval_t;
 
 typedef struct l_siginfo {
 	l_int		lsi_signo;
@@ -413,23 +415,26 @@ typedef struct l_siginfo {
 
 		struct {
 			l_pid_t		_pid;
-			l_uid16_t	_uid;
+			l_uid_t		_uid;
 		} __packed _kill;
 
 		struct {
-			l_uint		_timer1;
-			l_uint		_timer2;
+			l_timer_t	_tid;
+			l_int		_overrun;
+			char		_pad[sizeof(l_uid_t) - sizeof(l_int)];
+			l_sigval_t	_sigval;
+			l_int		_sys_private;
 		} __packed _timer;
 
 		struct {
 			l_pid_t		_pid;		/* sender's pid */
-			l_uid16_t	_uid;		/* sender's uid */
-			union l_sigval _sigval;
+			l_uid_t		_uid;		/* sender's uid */
+			l_sigval_t	_sigval;
 		} __packed _rt;
 
 		struct {
 			l_pid_t		_pid;		/* which child */
-			l_uid16_t	_uid;		/* sender's uid */
+			l_uid_t		_uid;		/* sender's uid */
 			l_int		_status;	/* exit code */
 			l_clock_t	_utime;
 			l_clock_t	_stime;
@@ -440,7 +445,7 @@ typedef struct l_siginfo {
 		} __packed _sigfault;
 
 		struct {
-			l_int		_band;	/* POLL_IN,POLL_OUT,POLL_MSG */
+			l_long		_band;	/* POLL_IN,POLL_OUT,POLL_MSG */
 			l_int		_fd;
 		} __packed _sigpoll;
 	} _sifields;
@@ -448,6 +453,9 @@ typedef struct l_siginfo {
 
 #define	lsi_pid		_sifields._kill._pid
 #define	lsi_uid		_sifields._kill._uid
+#define	lsi_tid		_sifields._timer._tid
+#define	lsi_overrun	_sifields._timer._overrun
+#define	lsi_sys_private	_sifields._timer._sys_private
 #define	lsi_status	_sifields._sigchld._status
 #define	lsi_utime	_sifields._sigchld._utime
 #define	lsi_stime	_sifields._sigchld._stime
@@ -860,9 +868,6 @@ struct l_user_desc {
 #define	LINUX_CLOCK_REALTIME_HR		4
 #define	LINUX_CLOCK_MONOTONIC_HR	5
 
-typedef int l_timer_t;
-typedef int l_mqd_t;
-
 #define	LINUX_CLONE_VM			0x00000100
 #define	LINUX_CLONE_FS			0x00000200
 #define	LINUX_CLONE_FILES		0x00000400

Modified: user/kmacy/HEAD_fast_xmit/sys/amd64/linux32/linux32_sysvec.c
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/amd64/linux32/linux32_sysvec.c	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/amd64/linux32/linux32_sysvec.c	Tue Oct 28 06:26:08 2008	(r184395)
@@ -334,9 +334,7 @@ linux_rt_sendsig(sig_t catcher, ksiginfo
 	frame.sf_ucontext = PTROUT(&fp->sf_sc);
 
 	/* Fill in POSIX parts */
-	frame.sf_si.lsi_signo = sig;
-	frame.sf_si.lsi_code = code;
-	frame.sf_si.lsi_addr = PTROUT(ksi->ksi_addr);
+	ksiginfo_to_lsiginfo(ksi, &frame.sf_si, sig);
 
 	/*
 	 * Build the signal context to be used by sigreturn.

Modified: user/kmacy/HEAD_fast_xmit/sys/arm/arm/undefined.c
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/arm/arm/undefined.c	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/arm/arm/undefined.c	Tue Oct 28 06:26:08 2008	(r184395)
@@ -106,7 +106,7 @@ install_coproc_handler(int coproc, undef
 	KASSERT(handler != NULL, ("handler is NULL")); /* Used to be legal. */
 
 	/* XXX: M_TEMP??? */
-	MALLOC(uh, struct undefined_handler *, sizeof(*uh), M_TEMP, M_WAITOK);
+	uh = malloc(sizeof(*uh), M_TEMP, M_WAITOK);
 	uh->uh_handler = handler;
 	install_coproc_handler_static(coproc, uh);
 	return uh;
@@ -125,7 +125,7 @@ remove_coproc_handler(void *cookie)
 	struct undefined_handler *uh = cookie;
 
 	LIST_REMOVE(uh, uh_link);
-	FREE(uh, M_TEMP);
+	free(uh, M_TEMP);
 }
 
 

Modified: user/kmacy/HEAD_fast_xmit/sys/arm/at91/at91.c
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/arm/at91/at91.c	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/arm/at91/at91.c	Tue Oct 28 06:26:08 2008	(r184395)
@@ -168,6 +168,42 @@ struct bus_space at91_bs_tag = {
 	generic_armv4_bs_c_2,
 	NULL,
 	NULL,
+
+	/* read (single) stream */
+	generic_bs_r_1,
+	generic_armv4_bs_r_2,
+	generic_bs_r_4,
+	NULL,
+
+	/* read multiple stream */
+	generic_bs_rm_1,
+	generic_armv4_bs_rm_2,
+	generic_bs_rm_4,
+	NULL,
+
+	/* read region stream */
+	generic_bs_rr_1,
+	generic_armv4_bs_rr_2,
+	generic_bs_rr_4,
+	NULL,
+
+	/* write (single) stream */
+	generic_bs_w_1,
+	generic_armv4_bs_w_2,
+	generic_bs_w_4,
+	NULL,
+
+	/* write multiple stream */
+	generic_bs_wm_1,
+	generic_armv4_bs_wm_2,
+	generic_bs_wm_4,
+	NULL,
+
+	/* write region stream */
+	NULL,
+	generic_armv4_bs_wr_2,
+	generic_bs_wr_4,
+	NULL,
 };
 
 static int
@@ -534,8 +570,10 @@ at91_alloc_resource(device_t dev, device
 	case SYS_RES_MEMORY:
 		rle->res = rman_reserve_resource(&sc->sc_mem_rman,
 		    start, end, count, flags, child);
-		rman_set_bustag(rle->res, &at91_bs_tag);
-		rman_set_bushandle(rle->res, start);
+		if (rle->res != NULL) {
+			rman_set_bustag(rle->res, &at91_bs_tag);
+			rman_set_bushandle(rle->res, start);
+		}
 		break;
 	}
 	if (rle->res) {

Modified: user/kmacy/HEAD_fast_xmit/sys/arm/conf/AVILA
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/arm/conf/AVILA	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/arm/conf/AVILA	Tue Oct 28 06:26:08 2008	(r184395)
@@ -18,7 +18,6 @@
 #
 # $FreeBSD$
 
-machine		arm
 ident		AVILA
 
 options 	PHYSADDR=0x10000000
@@ -80,7 +79,6 @@ options 	BOOTP_COMPAT
 #options 	PREEMPTION
 #options 	VERBOSE_SYSINIT
 
-device		mem			# Memory and kernel memory devices
 #device		saarm
 
 device		pci

Modified: user/kmacy/HEAD_fast_xmit/sys/arm/conf/BWCT
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/arm/conf/BWCT	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/arm/conf/BWCT	Tue Oct 28 06:26:08 2008	(r184395)
@@ -17,7 +17,6 @@
 #
 # $FreeBSD$
 
-machine		arm
 ident		BWCT
 
 options	VERBOSE_INIT_ARM
@@ -85,7 +84,6 @@ device		rlswitch
 #options 	WITNESS_SKIPSPIN	#Don't run witness on spinlocks for speed
 #options		DIAGNOSTIC
 
-device		mem			# Memory and kernel memory devices
 device		md
 device		at91_twi		# TWI: Two Wire Interface
 device		at91_spi		# SPI:

Modified: user/kmacy/HEAD_fast_xmit/sys/arm/conf/CRB
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/arm/conf/CRB	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/arm/conf/CRB	Tue Oct 28 06:26:08 2008	(r184395)
@@ -17,7 +17,6 @@
 #
 # $FreeBSD$
 
-machine		arm
 ident		CRB
 
 options 	PHYSADDR=0x00000000
@@ -67,7 +66,6 @@ options		BOOTP_COMPAT
 #options		PREEMPTION
 device		loop
 device		ether
-device		mem			# Memory and kernel memory devices
 #device		saarm
 device		miibus
 device		rl

Modified: user/kmacy/HEAD_fast_xmit/sys/arm/conf/DB-78XXX
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/arm/conf/DB-78XXX	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/arm/conf/DB-78XXX	Tue Oct 28 06:26:08 2008	(r184395)
@@ -4,7 +4,6 @@
 # $FreeBSD$
 #
 
-machine		arm
 ident		DB-88F78XX
 include		"../mv/discovery/std.db78xxx"
 
@@ -49,7 +48,6 @@ options 	WITNESS_SKIPSPIN	#Don't run wit
 
 # Pseudo devices
 device		loop
-device		mem
 device		md
 device		pty
 device		random

Modified: user/kmacy/HEAD_fast_xmit/sys/arm/conf/DB-88F5XXX
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/arm/conf/DB-88F5XXX	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/arm/conf/DB-88F5XXX	Tue Oct 28 06:26:08 2008	(r184395)
@@ -4,7 +4,6 @@
 # $FreeBSD$
 #
 
-machine		arm
 ident		DB-88F5XXX
 include		"../mv/orion/std.db88f5xxx"
 
@@ -48,7 +47,6 @@ options 	WITNESS_SKIPSPIN	#Don't run wit
 #options		WITNESS_KDB
 
 # Pseudo devices
-device		mem
 device		md
 device		loop
 device		pty

Modified: user/kmacy/HEAD_fast_xmit/sys/arm/conf/DB-88F6XXX
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/arm/conf/DB-88F6XXX	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/arm/conf/DB-88F6XXX	Tue Oct 28 06:26:08 2008	(r184395)
@@ -4,7 +4,6 @@
 # $FreeBSD$
 #
 
-machine		arm
 ident		DB-88F6XXX
 include		"../mv/kirkwood/std.db88f6xxx"
 
@@ -49,7 +48,6 @@ options 	WITNESS_SKIPSPIN	#Don't run wit
 
 # Pseudo devices
 device		loop
-device		mem
 device		md
 device		pty
 device		random

Added: user/kmacy/HEAD_fast_xmit/sys/arm/conf/DEFAULTS
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ user/kmacy/HEAD_fast_xmit/sys/arm/conf/DEFAULTS	Tue Oct 28 06:26:08 2008	(r184395)
@@ -0,0 +1,11 @@
+#
+# DEFAULTS -- Default kernel configuration file for FreeBSD/arm
+#
+# $FreeBSD$
+
+machine 	arm
+
+device		mem
+
+options 	GEOM_BSD
+options 	GEOM_MBR

Modified: user/kmacy/HEAD_fast_xmit/sys/arm/conf/EP80219
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/arm/conf/EP80219	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/arm/conf/EP80219	Tue Oct 28 06:26:08 2008	(r184395)
@@ -17,7 +17,6 @@
 #
 # $FreeBSD$
 
-machine	arm
 ident		EP80219
 
 options 	PHYSADDR=0xa0000000
@@ -69,7 +68,6 @@ options	BOOTP_COMPAT
 #options	PREEMPTION
 device		loop
 device		ether
-device		mem			# Memory and kernel memory devices
 #device		saarm
 device		miibus
 device		fxp

Modified: user/kmacy/HEAD_fast_xmit/sys/arm/conf/GUMSTIX
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/arm/conf/GUMSTIX	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/arm/conf/GUMSTIX	Tue Oct 28 06:26:08 2008	(r184395)
@@ -18,7 +18,6 @@
 #
 # $FreeBSD$
 
-machine		arm
 ident		GUMSTIX
 cpu		CPU_XSCALE_PXA2X0
 
@@ -71,7 +70,6 @@ options		BOOTP_BLOCKSIZE=4096
 options		PREEMPTION
 device		loop
 device		ether
-device		mem			# Memory and kernel memory devices
 device		mii
 device		smc
 device		smcphy

Modified: user/kmacy/HEAD_fast_xmit/sys/arm/conf/HL200
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/arm/conf/HL200	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/arm/conf/HL200	Tue Oct 28 06:26:08 2008	(r184395)
@@ -18,7 +18,6 @@
 #
 # $FreeBSD$
 
-machine		arm
 ident		HL200
 
 include "../at91/std.at91"
@@ -89,7 +88,6 @@ device		lxtphy
 #options 	WITNESS			#Enable checks to detect deadlocks and cycles
 #options 	WITNESS_SKIPSPIN	#Don't run witness on spinlocks for speed
 
-device		mem			# Memory and kernel memory devices
 device		md
 device		at91_twi		# TWI: Two Wire Interface
 device		at91_spi		# SPI:

Modified: user/kmacy/HEAD_fast_xmit/sys/arm/conf/IQ31244
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/arm/conf/IQ31244	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/arm/conf/IQ31244	Tue Oct 28 06:26:08 2008	(r184395)
@@ -17,7 +17,6 @@
 #
 # $FreeBSD$
 
-machine		arm
 ident		IQ31244
 
 options 	PHYSADDR=0xa0000000
@@ -66,7 +65,6 @@ options		BOOTP_COMPAT
 #options		PREEMPTION
 device		loop
 device		ether
-device		mem			# Memory and kernel memory devices
 #device		saarm
 device		miibus
 device		rl

Modified: user/kmacy/HEAD_fast_xmit/sys/arm/conf/KB920X
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/arm/conf/KB920X	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/arm/conf/KB920X	Tue Oct 28 06:26:08 2008	(r184395)
@@ -18,7 +18,6 @@
 #
 # $FreeBSD$
 
-machine		arm
 ident		KB920X
 
 include		"../at91/std.kb920x"
@@ -80,7 +79,6 @@ device		lxtphy
 #options 	WITNESS			#Enable checks to detect deadlocks and cycles
 #options 	WITNESS_SKIPSPIN	#Don't run witness on spinlocks for speed
 
-device		mem			# Memory and kernel memory devices
 device		md
 device		at91_twi		# TWI: Two Wire Interface
 device		at91_spi		# SPI:

Modified: user/kmacy/HEAD_fast_xmit/sys/arm/conf/NSLU
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/arm/conf/NSLU	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/arm/conf/NSLU	Tue Oct 28 06:26:08 2008	(r184395)
@@ -17,7 +17,6 @@
 #
 # $FreeBSD$
 
-machine		arm
 ident		NSLU
 
 options 	PHYSADDR=0x10000000
@@ -76,7 +75,6 @@ options 	BOOTP_NFSV3
 options 	BOOTP_WIRED_TO=npe0
 options 	BOOTP_COMPAT
 
-device		mem			# Memory and kernel memory devices
 device		pci
 device		uart
 

Modified: user/kmacy/HEAD_fast_xmit/sys/arm/conf/SIMICS
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/arm/conf/SIMICS	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/arm/conf/SIMICS	Tue Oct 28 06:26:08 2008	(r184395)
@@ -17,7 +17,6 @@
 #
 # $FreeBSD$
 
-machine		arm
 ident		SIMICS
 
 options KERNPHYSADDR=0xc0000000
@@ -68,5 +67,4 @@ device		uart
 #options 	WITNESS			#Enable checks to detect deadlocks and cycles
 #options 	WITNESS_SKIPSPIN	#Don't run witness on spinlocks for speed
 
-device		mem			# Memory and kernel memory devices
 device md

Modified: user/kmacy/HEAD_fast_xmit/sys/arm/conf/SKYEYE
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/arm/conf/SKYEYE	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/arm/conf/SKYEYE	Tue Oct 28 06:26:08 2008	(r184395)
@@ -18,7 +18,6 @@
 #
 # $FreeBSD$
 
-machine		arm
 ident		KB920X
 
 options		KERNPHYSADDR=0xc0000000	
@@ -79,7 +78,6 @@ device		uart
 #options 	SMP			# Symmetric MultiProcessor Kernel
 #options 	APIC_IO			# Symmetric (APIC) I/O
 
-device		mem			# Memory and kernel memory devices
 device md
 options		SKYEYE_WORKAROUNDS
 # Floppy drives

Modified: user/kmacy/HEAD_fast_xmit/sys/cam/scsi/scsi_target.c
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/cam/scsi/scsi_target.c	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/cam/scsi/scsi_target.c	Tue Oct 28 06:26:08 2008	(r184395)
@@ -183,7 +183,7 @@ targopen(struct cdev *dev, int flags, in
 		make_dev(&targ_cdevsw, dev2unit(dev), UID_ROOT, GID_WHEEL, 0600,
 			 "targ%d", dev2unit(dev));
 	}
-	MALLOC(softc, struct targ_softc *, sizeof(*softc), M_TARG,
+	softc = malloc(sizeof(*softc), M_TARG,
 	       M_WAITOK | M_ZERO);
 	dev->si_drv1 = softc;
 	softc->state = TARG_STATE_OPENED;
@@ -211,7 +211,7 @@ targclose(struct cdev *dev, int flag, in
 	if ((softc->periph == NULL) ||
 	    (softc->state & TARG_STATE_LUN_ENABLED) == 0) {
 		destroy_dev(dev);
-		FREE(softc, M_TARG);
+		free(softc, M_TARG);
 		return (0);
 	}
 
@@ -230,7 +230,7 @@ targclose(struct cdev *dev, int flag, in
 			softc->periph = NULL;
 		}
 		destroy_dev(dev);
-		FREE(softc, M_TARG);
+		free(softc, M_TARG);
 	}
 	cam_periph_unlock(periph);
 	cam_periph_release(periph);
@@ -531,7 +531,7 @@ targdtor(struct cam_periph *periph)
 	}
 	while ((descr = TAILQ_FIRST(&softc->abort_queue)) != NULL) {
 		TAILQ_REMOVE(&softc->abort_queue, descr, tqe);
-		FREE(descr, M_TARG);
+		free(descr, M_TARG);
 	}
 
 	softc->periph = NULL;
@@ -966,7 +966,7 @@ targgetccb(struct targ_softc *softc, xpt
 	int ccb_len;
 
 	ccb_len = targccblen(type);
-	MALLOC(ccb, union ccb *, ccb_len, M_TARG, M_WAITOK);
+	ccb = malloc(ccb_len, M_TARG, M_WAITOK);
 	CAM_DEBUG(softc->path, CAM_DEBUG_PERIPH, ("getccb %p\n", ccb));
 
 	xpt_setup_ccb(&ccb->ccb_h, softc->path, priority);
@@ -981,13 +981,13 @@ targfreeccb(struct targ_softc *softc, un
 {
 	CAM_DEBUG_PRINT(CAM_DEBUG_PERIPH, ("targfreeccb descr %p and\n",
 			ccb->ccb_h.targ_descr));
-	FREE(ccb->ccb_h.targ_descr, M_TARG);
+	free(ccb->ccb_h.targ_descr, M_TARG);
 
 	switch (ccb->ccb_h.func_code) {
 	case XPT_ACCEPT_TARGET_IO:
 	case XPT_IMMED_NOTIFY:
 		CAM_DEBUG_PRINT(CAM_DEBUG_PERIPH, ("freeing ccb %p\n", ccb));
-		FREE(ccb, M_TARG);
+		free(ccb, M_TARG);
 		break;
 	default:
 		/* Send back CCB if we got it from the periph */
@@ -998,7 +998,7 @@ targfreeccb(struct targ_softc *softc, un
 		} else {
 			CAM_DEBUG_PRINT(CAM_DEBUG_PERIPH,
 					("freeing ccb %p\n", ccb));
-			FREE(ccb, M_TARG);
+			free(ccb, M_TARG);
 		}
 		break;
 	}
@@ -1009,7 +1009,7 @@ targgetdescr(struct targ_softc *softc)
 {
 	struct targ_cmd_descr *descr;
 
-	MALLOC(descr, struct targ_cmd_descr *, sizeof(*descr), M_TARG,
+	descr = malloc(sizeof(*descr), M_TARG,
 	       M_WAITOK);
 	descr->mapinfo.num_bufs_used = 0;
 	return (descr);

Modified: user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/freebsd32_misc.c
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/freebsd32_misc.c	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/freebsd32_misc.c	Tue Oct 28 06:26:08 2008	(r184395)
@@ -1762,6 +1762,24 @@ freebsd32_ftruncate(struct thread *td, s
 	return (ftruncate(td, &ap));
 }
 
+int
+freebsd32_getdirentries(struct thread *td,
+    struct freebsd32_getdirentries_args *uap)
+{
+	long base;
+	int32_t base32;
+	int error;
+
+	error = kern_getdirentries(td, uap->fd, uap->buf, uap->count, &base);
+	if (error)
+		return (error);
+	if (uap->basep != NULL) {
+		base32 = base;
+		error = copyout(&base32, uap->basep, sizeof(int32_t));
+	}
+	return (error);
+}
+
 #ifdef COMPAT_FREEBSD6
 /* versions with the 'int pad' argument */
 int

Modified: user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/freebsd32_proto.h
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/freebsd32_proto.h	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/freebsd32_proto.h	Tue Oct 28 06:26:08 2008	(r184395)
@@ -3,7 +3,7 @@
  *
  * DO NOT EDIT-- this file is automatically generated.
  * $FreeBSD$
- * created from FreeBSD: head/sys/compat/freebsd32/syscalls.master 183361 2008-09-25 20:07:42Z jhb 
+ * created from FreeBSD: head/sys/compat/freebsd32/syscalls.master 184183 2008-10-22 21:55:48Z jhb 
  */
 
 #ifndef _FREEBSD32_SYSPROTO_H_
@@ -152,6 +152,12 @@ struct freebsd32_lstat_args {
 	char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
 	char ub_l_[PADL_(struct stat32 *)]; struct stat32 * ub; char ub_r_[PADR_(struct stat32 *)];
 };
+struct freebsd32_getdirentries_args {
+	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
+	char buf_l_[PADL_(char *)]; char * buf; char buf_r_[PADR_(char *)];
+	char count_l_[PADL_(u_int)]; u_int count; char count_r_[PADR_(u_int)];
+	char basep_l_[PADL_(int32_t *)]; int32_t * basep; char basep_r_[PADR_(int32_t *)];
+};
 struct freebsd32_sysctl_args {
 	char name_l_[PADL_(int *)]; int * name; char name_r_[PADR_(int *)];
 	char namelen_l_[PADL_(u_int)]; u_int namelen; char namelen_r_[PADR_(u_int)];
@@ -406,6 +412,7 @@ int	freebsd32_shmsys(struct thread *, st
 int	freebsd32_stat(struct thread *, struct freebsd32_stat_args *);
 int	freebsd32_fstat(struct thread *, struct freebsd32_fstat_args *);
 int	freebsd32_lstat(struct thread *, struct freebsd32_lstat_args *);
+int	freebsd32_getdirentries(struct thread *, struct freebsd32_getdirentries_args *);
 int	freebsd32_sysctl(struct thread *, struct freebsd32_sysctl_args *);
 int	freebsd32_futimes(struct thread *, struct freebsd32_futimes_args *);
 int	freebsd32_semctl(struct thread *, struct freebsd32_semctl_args *);
@@ -618,6 +625,7 @@ int	freebsd6_freebsd32_ftruncate(struct 
 #define	FREEBSD32_SYS_AUE_freebsd32_stat	AUE_STAT
 #define	FREEBSD32_SYS_AUE_freebsd32_fstat	AUE_FSTAT
 #define	FREEBSD32_SYS_AUE_freebsd32_lstat	AUE_LSTAT
+#define	FREEBSD32_SYS_AUE_freebsd32_getdirentries	AUE_GETDIRENTRIES
 #define	FREEBSD32_SYS_AUE_freebsd32_sysctl	AUE_SYSCTL
 #define	FREEBSD32_SYS_AUE_freebsd32_futimes	AUE_FUTIMES
 #define	FREEBSD32_SYS_AUE_freebsd32_semctl	AUE_SEMCTL

Modified: user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/freebsd32_syscall.h
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/freebsd32_syscall.h	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/freebsd32_syscall.h	Tue Oct 28 06:26:08 2008	(r184395)
@@ -3,7 +3,7 @@
  *
  * DO NOT EDIT-- this file is automatically generated.
  * $FreeBSD$
- * created from FreeBSD: head/sys/compat/freebsd32/syscalls.master 183361 2008-09-25 20:07:42Z jhb 
+ * created from FreeBSD: head/sys/compat/freebsd32/syscalls.master 184183 2008-10-22 21:55:48Z jhb 
  */
 
 #define	FREEBSD32_SYS_syscall	0
@@ -177,7 +177,7 @@
 #define	FREEBSD32_SYS_fpathconf	192
 #define	FREEBSD32_SYS_getrlimit	194
 #define	FREEBSD32_SYS_setrlimit	195
-#define	FREEBSD32_SYS_getdirentries	196
+#define	FREEBSD32_SYS_freebsd32_getdirentries	196
 #define	FREEBSD32_SYS_freebsd6_freebsd32_mmap	197
 #define	FREEBSD32_SYS___syscall	198
 #define	FREEBSD32_SYS_freebsd6_freebsd32_lseek	199

Modified: user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/freebsd32_syscalls.c
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/freebsd32_syscalls.c	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/freebsd32_syscalls.c	Tue Oct 28 06:26:08 2008	(r184395)
@@ -3,7 +3,7 @@
  *
  * DO NOT EDIT-- this file is automatically generated.
  * $FreeBSD$
- * created from FreeBSD: head/sys/compat/freebsd32/syscalls.master 183361 2008-09-25 20:07:42Z jhb 
+ * created from FreeBSD: head/sys/compat/freebsd32/syscalls.master 184183 2008-10-22 21:55:48Z jhb 
  */
 
 const char *freebsd32_syscallnames[] = {
@@ -203,7 +203,7 @@ const char *freebsd32_syscallnames[] = {
 	"#193",			/* 193 = nosys */
 	"getrlimit",			/* 194 = getrlimit */
 	"setrlimit",			/* 195 = setrlimit */
-	"getdirentries",			/* 196 = getdirentries */
+	"freebsd32_getdirentries",			/* 196 = freebsd32_getdirentries */
 	"compat6.freebsd32_mmap",		/* 197 = old freebsd32_mmap */
 	"__syscall",			/* 198 = __syscall */
 	"compat6.freebsd32_lseek",		/* 199 = old freebsd32_lseek */

Modified: user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/freebsd32_sysent.c
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/freebsd32_sysent.c	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/freebsd32_sysent.c	Tue Oct 28 06:26:08 2008	(r184395)
@@ -3,7 +3,7 @@
  *
  * DO NOT EDIT-- this file is automatically generated.
  * $FreeBSD$
- * created from FreeBSD: head/sys/compat/freebsd32/syscalls.master 183361 2008-09-25 20:07:42Z jhb 
+ * created from FreeBSD: head/sys/compat/freebsd32/syscalls.master 184183 2008-10-22 21:55:48Z jhb 
  */
 
 #include "opt_compat.h"
@@ -234,7 +234,7 @@ struct sysent freebsd32_sysent[] = {
 	{ 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 },			/* 193 = nosys */
 	{ AS(__getrlimit_args), (sy_call_t *)getrlimit, AUE_GETRLIMIT, NULL, 0, 0 },	/* 194 = getrlimit */
 	{ AS(__setrlimit_args), (sy_call_t *)setrlimit, AUE_SETRLIMIT, NULL, 0, 0 },	/* 195 = setrlimit */
-	{ AS(getdirentries_args), (sy_call_t *)getdirentries, AUE_GETDIRENTRIES, NULL, 0, 0 },	/* 196 = getdirentries */
+	{ AS(freebsd32_getdirentries_args), (sy_call_t *)freebsd32_getdirentries, AUE_GETDIRENTRIES, NULL, 0, 0 },	/* 196 = freebsd32_getdirentries */
 	{ compat6(AS(freebsd6_freebsd32_mmap_args),freebsd32_mmap), AUE_MMAP, NULL, 0, 0 },	/* 197 = old freebsd32_mmap */
 	{ 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 },		/* 198 = __syscall */
 	{ compat6(AS(freebsd6_freebsd32_lseek_args),freebsd32_lseek), AUE_LSEEK, NULL, 0, 0 },	/* 199 = old freebsd32_lseek */

Modified: user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/syscalls.master
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/syscalls.master	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/compat/freebsd32/syscalls.master	Tue Oct 28 06:26:08 2008	(r184395)
@@ -350,8 +350,8 @@
 195	AUE_SETRLIMIT	NOPROTO	{ int setrlimit(u_int which, \
 				    struct rlimit *rlp); } setrlimit \
 				    __setrlimit_args int
-196	AUE_GETDIRENTRIES	NOPROTO	{ int getdirentries(int fd, char *buf, \
-				    u_int count, long *basep); }
+196	AUE_GETDIRENTRIES	STD	{ int freebsd32_getdirentries(int fd, \
+				    char *buf, u_int count, int32_t *basep); }
 197	AUE_MMAP	COMPAT6	{ caddr_t freebsd32_mmap(caddr_t addr, \
 				    size_t len, int prot, int flags, int fd, \
 				    int pad, u_int32_t poslo, \

Modified: user/kmacy/HEAD_fast_xmit/sys/compat/linux/linux_ioctl.c
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/compat/linux/linux_ioctl.c	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/compat/linux/linux_ioctl.c	Tue Oct 28 06:26:08 2008	(r184395)
@@ -2673,7 +2673,7 @@ linux_ioctl_register_handler(struct linu
 			break;
 	}
 	if (he == NULL) {
-		MALLOC(he, struct handler_element *, sizeof(*he),
+		he = malloc(sizeof(*he),
 		    M_LINUX, M_WAITOK);
 		he->func = h->func;
 	} else
@@ -2711,7 +2711,7 @@ linux_ioctl_unregister_handler(struct li
 		if (he->func == h->func) {
 			TAILQ_REMOVE(&handlers, he, list);
 			sx_xunlock(&linux_ioctl_sx);
-			FREE(he, M_LINUX);
+			free(he, M_LINUX);
 			return (0);
 		}
 	}

Modified: user/kmacy/HEAD_fast_xmit/sys/compat/linux/linux_signal.c
==============================================================================
--- user/kmacy/HEAD_fast_xmit/sys/compat/linux/linux_signal.c	Tue Oct 28 06:25:00 2008	(r184394)
+++ user/kmacy/HEAD_fast_xmit/sys/compat/linux/linux_signal.c	Tue Oct 28 06:26:08 2008	(r184395)
@@ -39,6 +39,8 @@ __FBSDID("$FreeBSD$");
 #include <sys/syscallsubr.h>
 #include <sys/sysproto.h>
 
+#include <security/audit/audit.h>
+
 #include "opt_compat.h"
 
 #ifdef COMPAT_LINUX32
@@ -535,45 +537,75 @@ linux_kill(struct thread *td, struct lin
 	return (kill(td, &tmp));
 }
 
-int
-linux_tgkill(struct thread *td, struct linux_tgkill_args *args)
+static int
+linux_do_tkill(struct thread *td, l_int tgid, l_int pid, l_int signum)
 {
-   	struct linux_emuldata *em;
-	struct linux_kill_args ka;
+	struct proc *proc = td->td_proc;
+	struct linux_emuldata *em;
 	struct proc *p;
+	ksiginfo_t ksi;
+	int error;
 
-#ifdef DEBUG
-	if (ldebug(tgkill))
-		printf(ARGS(tgkill, "%d, %d, %d"), args->tgid, args->pid, args->sig);
-#endif
-
-	ka.pid = args->pid;
-	ka.signum = args->sig;
+	AUDIT_ARG(signum, signum);
+	AUDIT_ARG(pid, pid);
 
-	if (args->tgid == -1)
-	   	return linux_kill(td, &ka);
+	/*
+	 * Allow signal 0 as a means to check for privileges
+	 */
+	if (!LINUX_SIG_VALID(signum) && signum != 0)
+		return (EINVAL);
 
-	if ((p = pfind(args->pid)) == NULL)
-	      	return ESRCH;
+	if (signum > 0 && signum <= LINUX_SIGTBLSZ)
+		signum = linux_to_bsd_signal[_SIG_IDX(signum)];
 
-	if (p->p_sysent != &elf_linux_sysvec)
-		return ESRCH;
+	if ((p = pfind(pid)) == NULL) {
+		if ((p = zpfind(pid)) == NULL)
+			return (ESRCH);
+	}
 
-	PROC_UNLOCK(p);
+	AUDIT_ARG(process, p);
+	error = p_cansignal(td, p, signum);
+	if (error)
+		goto out;
 
+	error = ESRCH;
 	em = em_find(p, EMUL_DONTLOCK);
 
 	if (em == NULL) {
 #ifdef DEBUG
-		printf("emuldata not found in tgkill.\n");
+		printf("emuldata not found in do_tkill.\n");
 #endif
-		return ESRCH;
+		goto out;
 	}
+	if (tgid > 0 && em->shared->group_pid != tgid)
+		goto out;
+
+	ksiginfo_init(&ksi);
+	ksi.ksi_signo = signum;
+	ksi.ksi_code = LINUX_SI_TKILL;
+	ksi.ksi_errno = 0;
+	ksi.ksi_pid = proc->p_pid;
+	ksi.ksi_uid = proc->p_ucred->cr_ruid;
 
-	if (em->shared->group_pid != args->tgid)
-	   	return ESRCH;
+	error = tdsignal(p, NULL, ksi.ksi_signo, &ksi);
 
-	return linux_kill(td, &ka);
+out:
+	PROC_UNLOCK(p);
+	return (error);
+}
+
+int
+linux_tgkill(struct thread *td, struct linux_tgkill_args *args)
+{
+
+#ifdef DEBUG
+	if (ldebug(tgkill))
+		printf(ARGS(tgkill, "%d, %d, %d"), args->tgid, args->pid, args->sig);
+#endif
+	if (args->pid <= 0 || args->tgid <=0)
+		return (EINVAL);
+
+	return (linux_do_tkill(td, args->tgid, args->pid, args->sig));
 }
 
 int
@@ -583,6 +615,39 @@ linux_tkill(struct thread *td, struct li
 	if (ldebug(tkill))
 		printf(ARGS(tkill, "%i, %i"), args->tid, args->sig);
 #endif
+	if (args->tid <= 0)
+		return (EINVAL);
+
+	return (linux_do_tkill(td, 0, args->tid, args->sig));
+}
+
+void
+ksiginfo_to_lsiginfo(ksiginfo_t *ksi, l_siginfo_t *lsi, l_int sig)

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***


More information about the svn-src-user mailing list