svn commit: r190906 - in projects/tcp_cc_8.x: . contrib/bind9
contrib/cpio contrib/csup contrib/file contrib/gdb
contrib/gdtoa contrib/libpcap contrib/ncurses contrib/netcat
contrib/ntp contrib/ope...
Lawrence Stewart
lstewart at FreeBSD.org
Fri Apr 10 19:39:32 PDT 2009
Author: lstewart
Date: Sat Apr 11 02:39:30 2009
New Revision: 190906
URL: http://svn.freebsd.org/changeset/base/190906
Log:
Merge r190776:190905 from head.
Added:
projects/tcp_cc_8.x/sys/dev/ixgbe/ixgbe_82599.c
- copied unchanged from r190905, head/sys/dev/ixgbe/ixgbe_82599.c
projects/tcp_cc_8.x/sys/nfs/nfs_nfssvc.c
- copied unchanged from r190905, head/sys/nfs/nfs_nfssvc.c
projects/tcp_cc_8.x/sys/nfs/nfssvc.h
- copied unchanged from r190905, head/sys/nfs/nfssvc.h
projects/tcp_cc_8.x/usr.sbin/uathload/uathload.8
- copied unchanged from r190905, head/usr.sbin/uathload/uathload.8
Deleted:
projects/tcp_cc_8.x/share/man/man9/VOP_LEASE.9
projects/tcp_cc_8.x/usr.sbin/slstat/
Modified:
projects/tcp_cc_8.x/ (props changed)
projects/tcp_cc_8.x/ObsoleteFiles.inc
projects/tcp_cc_8.x/UPDATING
projects/tcp_cc_8.x/contrib/bind9/ (props changed)
projects/tcp_cc_8.x/contrib/cpio/ (props changed)
projects/tcp_cc_8.x/contrib/csup/ (props changed)
projects/tcp_cc_8.x/contrib/file/ (props changed)
projects/tcp_cc_8.x/contrib/gdb/ (props changed)
projects/tcp_cc_8.x/contrib/gdb/FREEBSD-Xlist
projects/tcp_cc_8.x/contrib/gdtoa/ (props changed)
projects/tcp_cc_8.x/contrib/libpcap/ (props changed)
projects/tcp_cc_8.x/contrib/ncurses/ (props changed)
projects/tcp_cc_8.x/contrib/netcat/ (props changed)
projects/tcp_cc_8.x/contrib/ntp/ (props changed)
projects/tcp_cc_8.x/contrib/openbsm/ (props changed)
projects/tcp_cc_8.x/contrib/openpam/ (props changed)
projects/tcp_cc_8.x/contrib/pf/ (props changed)
projects/tcp_cc_8.x/contrib/sendmail/ (props changed)
projects/tcp_cc_8.x/contrib/tcpdump/ (props changed)
projects/tcp_cc_8.x/contrib/top/ (props changed)
projects/tcp_cc_8.x/contrib/top/install-sh (props changed)
projects/tcp_cc_8.x/contrib/wpa/ (props changed)
projects/tcp_cc_8.x/crypto/openssh/ (props changed)
projects/tcp_cc_8.x/crypto/openssl/ (props changed)
projects/tcp_cc_8.x/lib/libc/ (props changed)
projects/tcp_cc_8.x/lib/libc/rpc/clnt_bcast.c
projects/tcp_cc_8.x/lib/libc/stdio/asprintf.c (props changed)
projects/tcp_cc_8.x/lib/libc/stdtime/ (props changed)
projects/tcp_cc_8.x/lib/libc/string/ffsll.c (props changed)
projects/tcp_cc_8.x/lib/libc/string/flsll.c (props changed)
projects/tcp_cc_8.x/lib/libc/string/memchr.3
projects/tcp_cc_8.x/lib/libc/string/memcmp.3
projects/tcp_cc_8.x/lib/libc/string/memcpy.3
projects/tcp_cc_8.x/lib/libc/string/memmove.3
projects/tcp_cc_8.x/lib/libc/string/memset.3
projects/tcp_cc_8.x/lib/libc/string/strcasecmp.3
projects/tcp_cc_8.x/lib/libc/string/strcat.3
projects/tcp_cc_8.x/lib/libc/string/strchr.3
projects/tcp_cc_8.x/lib/libc/string/strcmp.3
projects/tcp_cc_8.x/lib/libc/string/strcpy.3
projects/tcp_cc_8.x/lib/libc/string/strdup.3
projects/tcp_cc_8.x/lib/libc/string/strlcpy.3
projects/tcp_cc_8.x/lib/libc/string/strlen.3
projects/tcp_cc_8.x/lib/libc/string/strpbrk.3
projects/tcp_cc_8.x/lib/libc/string/strspn.3
projects/tcp_cc_8.x/lib/libc/string/strstr.3
projects/tcp_cc_8.x/lib/libc/string/wcpcpy.c (props changed)
projects/tcp_cc_8.x/lib/libc/string/wcpncpy.c (props changed)
projects/tcp_cc_8.x/lib/libkvm/kvm_powerpc.c
projects/tcp_cc_8.x/lib/libusb/libusb.3 (props changed)
projects/tcp_cc_8.x/lib/libusb/usb.h (props changed)
projects/tcp_cc_8.x/lib/libutil/ (props changed)
projects/tcp_cc_8.x/libexec/ftpd/extern.h
projects/tcp_cc_8.x/libexec/ftpd/ftpcmd.y
projects/tcp_cc_8.x/libexec/ftpd/ftpd.c
projects/tcp_cc_8.x/libexec/rtld-elf/map_object.c
projects/tcp_cc_8.x/release/doc/en_US.ISO8859-1/hardware/article.sgml
projects/tcp_cc_8.x/sbin/ (props changed)
projects/tcp_cc_8.x/sbin/gvinum/gvinum.8
projects/tcp_cc_8.x/sbin/gvinum/gvinum.c
projects/tcp_cc_8.x/sbin/ipfw/ (props changed)
projects/tcp_cc_8.x/sbin/ipfw/dummynet.c
projects/tcp_cc_8.x/sbin/ipfw/ipfw.8
projects/tcp_cc_8.x/sbin/ipfw/ipfw2.h
projects/tcp_cc_8.x/share/man/man4/bce.4
projects/tcp_cc_8.x/share/man/man4/ed.4
projects/tcp_cc_8.x/share/man/man4/man4.powerpc/pmu.4
projects/tcp_cc_8.x/share/man/man4/uath.4
projects/tcp_cc_8.x/share/man/man4/wpi.4
projects/tcp_cc_8.x/share/man/man7/operator.7
projects/tcp_cc_8.x/share/man/man9/Makefile
projects/tcp_cc_8.x/share/misc/operator
projects/tcp_cc_8.x/share/zoneinfo/ (props changed)
projects/tcp_cc_8.x/sys/ (props changed)
projects/tcp_cc_8.x/sys/amd64/conf/GENERIC
projects/tcp_cc_8.x/sys/amd64/include/cpufunc.h
projects/tcp_cc_8.x/sys/amd64/include/endian.h
projects/tcp_cc_8.x/sys/amd64/include/xen/ (props changed)
projects/tcp_cc_8.x/sys/arm/arm/trap.c
projects/tcp_cc_8.x/sys/boot/forth/loader.conf
projects/tcp_cc_8.x/sys/boot/i386/libi386/Makefile
projects/tcp_cc_8.x/sys/boot/i386/libi386/smbios.c
projects/tcp_cc_8.x/sys/cam/cam_xpt.c
projects/tcp_cc_8.x/sys/cddl/compat/opensolaris/sys/vnode.h
projects/tcp_cc_8.x/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c
projects/tcp_cc_8.x/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c
projects/tcp_cc_8.x/sys/conf/NOTES
projects/tcp_cc_8.x/sys/conf/files
projects/tcp_cc_8.x/sys/contrib/pf/ (props changed)
projects/tcp_cc_8.x/sys/dev/ata/ata-queue.c
projects/tcp_cc_8.x/sys/dev/ata/ata-usb.c (props changed)
projects/tcp_cc_8.x/sys/dev/ath/ath_hal/ah_internal.h
projects/tcp_cc_8.x/sys/dev/ath/if_athvar.h
projects/tcp_cc_8.x/sys/dev/cxgb/cxgb_sge.c
projects/tcp_cc_8.x/sys/dev/drm/r300_cmdbuf.c
projects/tcp_cc_8.x/sys/dev/drm/r300_reg.h
projects/tcp_cc_8.x/sys/dev/drm/radeon_cp.c
projects/tcp_cc_8.x/sys/dev/drm/radeon_drv.h
projects/tcp_cc_8.x/sys/dev/e1000/e1000_80003es2lan.c
projects/tcp_cc_8.x/sys/dev/e1000/e1000_82540.c
projects/tcp_cc_8.x/sys/dev/e1000/e1000_82541.c
projects/tcp_cc_8.x/sys/dev/e1000/e1000_82571.c
projects/tcp_cc_8.x/sys/dev/e1000/e1000_82575.c
projects/tcp_cc_8.x/sys/dev/e1000/e1000_82575.h
projects/tcp_cc_8.x/sys/dev/e1000/e1000_api.c
projects/tcp_cc_8.x/sys/dev/e1000/e1000_api.h
projects/tcp_cc_8.x/sys/dev/e1000/e1000_defines.h
projects/tcp_cc_8.x/sys/dev/e1000/e1000_hw.h
projects/tcp_cc_8.x/sys/dev/e1000/e1000_ich8lan.c
projects/tcp_cc_8.x/sys/dev/e1000/e1000_ich8lan.h
projects/tcp_cc_8.x/sys/dev/e1000/e1000_mac.c
projects/tcp_cc_8.x/sys/dev/e1000/e1000_mac.h
projects/tcp_cc_8.x/sys/dev/e1000/e1000_nvm.c
projects/tcp_cc_8.x/sys/dev/e1000/e1000_nvm.h
projects/tcp_cc_8.x/sys/dev/e1000/e1000_phy.c
projects/tcp_cc_8.x/sys/dev/e1000/e1000_phy.h
projects/tcp_cc_8.x/sys/dev/e1000/e1000_regs.h
projects/tcp_cc_8.x/sys/dev/e1000/if_em.c
projects/tcp_cc_8.x/sys/dev/e1000/if_igb.c
projects/tcp_cc_8.x/sys/dev/e1000/if_igb.h
projects/tcp_cc_8.x/sys/dev/ed/if_ed.c
projects/tcp_cc_8.x/sys/dev/ed/if_ed_cbus.c
projects/tcp_cc_8.x/sys/dev/ed/if_ed_isa.c
projects/tcp_cc_8.x/sys/dev/ed/if_ed_pccard.c
projects/tcp_cc_8.x/sys/dev/ed/if_ed_pci.c
projects/tcp_cc_8.x/sys/dev/ed/if_edreg.h
projects/tcp_cc_8.x/sys/dev/ed/if_edvar.h
projects/tcp_cc_8.x/sys/dev/firewire/firewire.c
projects/tcp_cc_8.x/sys/dev/firewire/sbp.h
projects/tcp_cc_8.x/sys/dev/hptmv/access601.h
projects/tcp_cc_8.x/sys/dev/hptmv/amd64-elf.raid.o.uu
projects/tcp_cc_8.x/sys/dev/hptmv/array.h
projects/tcp_cc_8.x/sys/dev/hptmv/command.h
projects/tcp_cc_8.x/sys/dev/hptmv/entry.c
projects/tcp_cc_8.x/sys/dev/hptmv/global.h
projects/tcp_cc_8.x/sys/dev/hptmv/gui_lib.c
projects/tcp_cc_8.x/sys/dev/hptmv/hptintf.h
projects/tcp_cc_8.x/sys/dev/hptmv/hptproc.c
projects/tcp_cc_8.x/sys/dev/hptmv/i386-elf.raid.o.uu
projects/tcp_cc_8.x/sys/dev/hptmv/ioctl.c
projects/tcp_cc_8.x/sys/dev/hptmv/mvOs.h
projects/tcp_cc_8.x/sys/dev/hptmv/mvSata.h
projects/tcp_cc_8.x/sys/dev/hptmv/mvStorageDev.h
projects/tcp_cc_8.x/sys/dev/hptmv/osbsd.h
projects/tcp_cc_8.x/sys/dev/hptmv/raid5n.h
projects/tcp_cc_8.x/sys/dev/hptmv/readme.txt
projects/tcp_cc_8.x/sys/dev/hptmv/vdevice.h
projects/tcp_cc_8.x/sys/dev/if_ndis/if_ndis.c
projects/tcp_cc_8.x/sys/dev/ixgbe/LICENSE
projects/tcp_cc_8.x/sys/dev/ixgbe/README
projects/tcp_cc_8.x/sys/dev/ixgbe/ixgbe.c
projects/tcp_cc_8.x/sys/dev/ixgbe/ixgbe.h
projects/tcp_cc_8.x/sys/dev/ixgbe/ixgbe_82598.c
projects/tcp_cc_8.x/sys/dev/ixgbe/ixgbe_api.c
projects/tcp_cc_8.x/sys/dev/ixgbe/ixgbe_api.h
projects/tcp_cc_8.x/sys/dev/ixgbe/ixgbe_common.c
projects/tcp_cc_8.x/sys/dev/ixgbe/ixgbe_common.h
projects/tcp_cc_8.x/sys/dev/ixgbe/ixgbe_osdep.h
projects/tcp_cc_8.x/sys/dev/ixgbe/ixgbe_phy.c
projects/tcp_cc_8.x/sys/dev/ixgbe/ixgbe_phy.h
projects/tcp_cc_8.x/sys/dev/ixgbe/ixgbe_type.h
projects/tcp_cc_8.x/sys/dev/kbd/kbdreg.h
projects/tcp_cc_8.x/sys/dev/kbdmux/kbdmux.c
projects/tcp_cc_8.x/sys/dev/mn/if_mn.c (props changed)
projects/tcp_cc_8.x/sys/dev/pccard/pccarddevs
projects/tcp_cc_8.x/sys/dev/pccbb/pccbb_pci.c
projects/tcp_cc_8.x/sys/dev/sound/usb/uaudio.c (props changed)
projects/tcp_cc_8.x/sys/dev/sound/usb/uaudio.h (props changed)
projects/tcp_cc_8.x/sys/dev/sound/usb/uaudio_pcm.c (props changed)
projects/tcp_cc_8.x/sys/dev/sound/usb/uaudioreg.h (props changed)
projects/tcp_cc_8.x/sys/dev/syscons/syscons.c
projects/tcp_cc_8.x/sys/dev/uart/uart_cpu_powerpc.c
projects/tcp_cc_8.x/sys/dev/uart/uart_dev_ns8250.c
projects/tcp_cc_8.x/sys/dev/usb/README.TXT (props changed)
projects/tcp_cc_8.x/sys/dev/usb/bluetooth/TODO.TXT (props changed)
projects/tcp_cc_8.x/sys/dev/usb/bluetooth/ng_ubt.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/bluetooth/ng_ubt_var.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/bluetooth/ubtbcmfw.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/at91dci.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/at91dci.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/at91dci_atmelarm.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/atmegadci.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/atmegadci.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/atmegadci_atmelarm.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/ehci.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/ehci.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/ehci_ixp4xx.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/ehci_mbus.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/ehci_pci.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/musb_otg.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/musb_otg.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/musb_otg_atmelarm.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/ohci.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/ohci.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/ohci_atmelarm.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/ohci_pci.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/uhci.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/uhci.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/uhci_pci.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/usb_controller.c (contents, props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/uss820dci.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/uss820dci.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/controller/uss820dci_atmelarm.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/input/uhid.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/input/ukbd.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/input/ums.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/input/usb_rdesc.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/misc/udbp.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/misc/udbp.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/misc/ufm.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/net/if_aue.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/net/if_auereg.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/net/if_axe.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/net/if_axereg.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/net/if_cdce.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/net/if_cdcereg.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/net/if_cue.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/net/if_cuereg.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/net/if_kue.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/net/if_kuefw.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/net/if_kuereg.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/net/if_rue.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/net/if_ruereg.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/net/if_udav.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/net/if_udavreg.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/net/usb_ethernet.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/net/usb_ethernet.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/quirk/usb_quirk.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/quirk/usb_quirk.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/serial/u3g.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/serial/uark.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/serial/ubsa.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/serial/ubser.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/serial/uchcom.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/serial/ucycom.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/serial/ufoma.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/serial/uftdi.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/serial/uftdi_reg.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/serial/ugensa.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/serial/uipaq.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/serial/ulpt.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/serial/umct.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/serial/umodem.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/serial/umoscom.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/serial/uplcom.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/serial/usb_serial.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/serial/usb_serial.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/serial/uslcom.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/serial/uvisor.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/serial/uvscom.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/storage/rio500_usb.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/storage/umass.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/storage/urio.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/storage/ustorage_fs.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/template/usb_template.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/template/usb_template.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/template/usb_template_cdce.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/template/usb_template_msc.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/template/usb_template_mtp.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/ufm_ioctl.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_bus.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_busdma.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_busdma.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_cdc.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_compat_linux.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_compat_linux.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_controller.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_core.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_core.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_debug.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_debug.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_defs.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_dev.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_dev.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_device.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_device.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_dynamic.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_dynamic.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_endian.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_error.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_error.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_generic.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_generic.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_handle_request.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_handle_request.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_hid.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_hid.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_hub.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_hub.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_if.m (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_ioctl.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_lookup.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_lookup.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_mbuf.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_mbuf.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_mfunc.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_msctest.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_msctest.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_parse.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_parse.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_pci.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_process.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_process.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_request.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_request.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_revision.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_transfer.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_transfer.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_util.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usb_util.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usbdevs (props changed)
projects/tcp_cc_8.x/sys/dev/usb/usbhid.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/wlan/if_rum.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/wlan/if_rumfw.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/wlan/if_rumreg.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/wlan/if_rumvar.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/wlan/if_ural.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/wlan/if_uralreg.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/wlan/if_uralvar.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/wlan/if_zyd.c (props changed)
projects/tcp_cc_8.x/sys/dev/usb/wlan/if_zydfw.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/wlan/if_zydreg.h (props changed)
projects/tcp_cc_8.x/sys/dev/usb/wlan/usb_wlan.h (props changed)
projects/tcp_cc_8.x/sys/dev/xen/netfront/ (props changed)
projects/tcp_cc_8.x/sys/dev/xen/xenpci/ (props changed)
projects/tcp_cc_8.x/sys/fs/devfs/devfs_vnops.c
projects/tcp_cc_8.x/sys/fs/fifofs/fifo_vnops.c
projects/tcp_cc_8.x/sys/fs/pseudofs/pseudofs_vnops.c
projects/tcp_cc_8.x/sys/fs/unionfs/union_subr.c
projects/tcp_cc_8.x/sys/fs/unionfs/union_vnops.c
projects/tcp_cc_8.x/sys/geom/geom.h
projects/tcp_cc_8.x/sys/geom/geom_disk.c
projects/tcp_cc_8.x/sys/geom/geom_disk.h
projects/tcp_cc_8.x/sys/geom/geom_subr.c
projects/tcp_cc_8.x/sys/geom/journal/g_journal.c
projects/tcp_cc_8.x/sys/geom/mirror/g_mirror.c
projects/tcp_cc_8.x/sys/geom/part/g_part.c
projects/tcp_cc_8.x/sys/geom/part/g_part_ebr.c
projects/tcp_cc_8.x/sys/geom/raid3/g_raid3.c
projects/tcp_cc_8.x/sys/geom/vinum/geom_vinum_share.c
projects/tcp_cc_8.x/sys/geom/vinum/geom_vinum_share.h
projects/tcp_cc_8.x/sys/i386/include/endian.h
projects/tcp_cc_8.x/sys/kern/kern_acct.c
projects/tcp_cc_8.x/sys/kern/kern_alq.c
projects/tcp_cc_8.x/sys/kern/kern_cons.c (props changed)
projects/tcp_cc_8.x/sys/kern/kern_ktrace.c
projects/tcp_cc_8.x/sys/kern/kern_sig.c
projects/tcp_cc_8.x/sys/kern/kern_time.c
projects/tcp_cc_8.x/sys/kern/tty.c
projects/tcp_cc_8.x/sys/kern/uipc_usrreq.c
projects/tcp_cc_8.x/sys/kern/vfs_acl.c
projects/tcp_cc_8.x/sys/kern/vfs_cache.c
projects/tcp_cc_8.x/sys/kern/vfs_default.c
projects/tcp_cc_8.x/sys/kern/vfs_extattr.c
projects/tcp_cc_8.x/sys/kern/vfs_mount.c
projects/tcp_cc_8.x/sys/kern/vfs_syscalls.c
projects/tcp_cc_8.x/sys/kern/vfs_vnops.c
projects/tcp_cc_8.x/sys/kern/vnode_if.src
projects/tcp_cc_8.x/sys/legacy/dev/ata/ata-usb.c (props changed)
projects/tcp_cc_8.x/sys/legacy/dev/sound/usb/uaudio.c (props changed)
projects/tcp_cc_8.x/sys/legacy/dev/sound/usb/uaudio.h (props changed)
projects/tcp_cc_8.x/sys/legacy/dev/sound/usb/uaudio_pcm.c (props changed)
projects/tcp_cc_8.x/sys/legacy/dev/sound/usb/uaudioreg.h (props changed)
projects/tcp_cc_8.x/sys/legacy/dev/usb/ (props changed)
projects/tcp_cc_8.x/sys/legacy/dev/usb/ehci_ixp4xx.c (props changed)
projects/tcp_cc_8.x/sys/modules/ixgbe/Makefile
projects/tcp_cc_8.x/sys/modules/nfsclient/Makefile
projects/tcp_cc_8.x/sys/net/if.c
projects/tcp_cc_8.x/sys/net/if_gif.c
projects/tcp_cc_8.x/sys/net/if_loop.c
projects/tcp_cc_8.x/sys/net/if_spppsubr.c
projects/tcp_cc_8.x/sys/net/route.c
projects/tcp_cc_8.x/sys/net/vnet.h
projects/tcp_cc_8.x/sys/net80211/ieee80211_output.c
projects/tcp_cc_8.x/sys/net80211/ieee80211_var.h
projects/tcp_cc_8.x/sys/netinet/if_ether.c
projects/tcp_cc_8.x/sys/netinet/in_pcb.h
projects/tcp_cc_8.x/sys/netinet/ip_dummynet.c
projects/tcp_cc_8.x/sys/netinet/ip_dummynet.h
projects/tcp_cc_8.x/sys/netinet/ip_fw.h
projects/tcp_cc_8.x/sys/netinet/ip_input.c
projects/tcp_cc_8.x/sys/netinet/ip_output.c
projects/tcp_cc_8.x/sys/netinet/libalias/alias_cuseeme.c
projects/tcp_cc_8.x/sys/netinet/libalias/alias_dummy.c
projects/tcp_cc_8.x/sys/netinet/libalias/alias_ftp.c
projects/tcp_cc_8.x/sys/netinet/libalias/alias_irc.c
projects/tcp_cc_8.x/sys/netinet/libalias/alias_mod.c
projects/tcp_cc_8.x/sys/netinet/libalias/alias_mod.h
projects/tcp_cc_8.x/sys/netinet/libalias/alias_nbt.c
projects/tcp_cc_8.x/sys/netinet/libalias/alias_pptp.c
projects/tcp_cc_8.x/sys/netinet/libalias/alias_skinny.c
projects/tcp_cc_8.x/sys/netinet/libalias/alias_smedia.c
projects/tcp_cc_8.x/sys/netinet/sctp_indata.c
projects/tcp_cc_8.x/sys/netinet/sctp_sysctl.c
projects/tcp_cc_8.x/sys/netinet/sctp_uio.h
projects/tcp_cc_8.x/sys/netinet/tcp_input.c
projects/tcp_cc_8.x/sys/netinet/tcp_reass.c
projects/tcp_cc_8.x/sys/netinet/tcp_sack.c
projects/tcp_cc_8.x/sys/netinet/tcp_subr.c
projects/tcp_cc_8.x/sys/netinet/tcp_timewait.c
projects/tcp_cc_8.x/sys/netinet/tcp_usrreq.c
projects/tcp_cc_8.x/sys/netinet/vinet.h
projects/tcp_cc_8.x/sys/netinet6/frag6.c
projects/tcp_cc_8.x/sys/netinet6/in6_src.c
projects/tcp_cc_8.x/sys/netinet6/ip6_input.c
projects/tcp_cc_8.x/sys/netinet6/scope6.c
projects/tcp_cc_8.x/sys/netipsec/ipsec.c
projects/tcp_cc_8.x/sys/netipsec/key.c
projects/tcp_cc_8.x/sys/netipsec/xform_ah.c
projects/tcp_cc_8.x/sys/netipsec/xform_esp.c
projects/tcp_cc_8.x/sys/netipsec/xform_ipcomp.c
projects/tcp_cc_8.x/sys/netipsec/xform_ipip.c
projects/tcp_cc_8.x/sys/nfs4client/nfs4_socket.c
projects/tcp_cc_8.x/sys/nfs4client/nfs4_vnops.c
projects/tcp_cc_8.x/sys/nfsclient/nfs.h
projects/tcp_cc_8.x/sys/nfsclient/nfs_krpc.c
projects/tcp_cc_8.x/sys/nfsclient/nfs_socket.c
projects/tcp_cc_8.x/sys/nfsclient/nfs_subs.c
projects/tcp_cc_8.x/sys/nfsclient/nfs_vnops.c
projects/tcp_cc_8.x/sys/pc98/pc98/machdep.c
projects/tcp_cc_8.x/sys/security/mac/mac_cred.c (props changed)
projects/tcp_cc_8.x/sys/security/mac_bsdextended/ugidfw_system.c (props changed)
projects/tcp_cc_8.x/sys/security/mac_bsdextended/ugidfw_vnode.c (props changed)
projects/tcp_cc_8.x/sys/sys/elf_common.h
projects/tcp_cc_8.x/sys/sys/mbuf.h
projects/tcp_cc_8.x/sys/sys/param.h
projects/tcp_cc_8.x/sys/sys/systm.h
projects/tcp_cc_8.x/sys/sys/vimage.h
projects/tcp_cc_8.x/sys/sys/vnode.h
projects/tcp_cc_8.x/sys/ufs/ffs/ffs_snapshot.c
projects/tcp_cc_8.x/sys/vm/vm_map.c
projects/tcp_cc_8.x/sys/vm/vm_map.h
projects/tcp_cc_8.x/tools/regression/lib/msun/test-conj.t (props changed)
projects/tcp_cc_8.x/tools/regression/usr.bin/pkill/pgrep-_g.t (props changed)
projects/tcp_cc_8.x/tools/regression/usr.bin/pkill/pgrep-_s.t (props changed)
projects/tcp_cc_8.x/tools/regression/usr.bin/pkill/pkill-_g.t (props changed)
projects/tcp_cc_8.x/tools/tools/ath/common/dumpregs.h (props changed)
projects/tcp_cc_8.x/tools/tools/ath/common/dumpregs_5210.c (props changed)
projects/tcp_cc_8.x/tools/tools/ath/common/dumpregs_5211.c (props changed)
projects/tcp_cc_8.x/tools/tools/ath/common/dumpregs_5212.c (props changed)
projects/tcp_cc_8.x/tools/tools/ath/common/dumpregs_5416.c (props changed)
projects/tcp_cc_8.x/usr.bin/csup/ (props changed)
projects/tcp_cc_8.x/usr.bin/make/globals.h
projects/tcp_cc_8.x/usr.bin/make/main.c
projects/tcp_cc_8.x/usr.bin/make/make.1
projects/tcp_cc_8.x/usr.bin/make/make.c
projects/tcp_cc_8.x/usr.bin/procstat/ (props changed)
projects/tcp_cc_8.x/usr.sbin/Makefile
projects/tcp_cc_8.x/usr.sbin/dumpcis/cardinfo.h (props changed)
projects/tcp_cc_8.x/usr.sbin/dumpcis/cis.h (props changed)
projects/tcp_cc_8.x/usr.sbin/makefs/ffs/ffs_bswap.c (props changed)
projects/tcp_cc_8.x/usr.sbin/makefs/ffs/ffs_subr.c (props changed)
projects/tcp_cc_8.x/usr.sbin/makefs/ffs/ufs_bswap.h (props changed)
projects/tcp_cc_8.x/usr.sbin/makefs/getid.c (props changed)
projects/tcp_cc_8.x/usr.sbin/sysinstall/devices.c
projects/tcp_cc_8.x/usr.sbin/uathload/Makefile
projects/tcp_cc_8.x/usr.sbin/zic/ (props changed)
Modified: projects/tcp_cc_8.x/ObsoleteFiles.inc
==============================================================================
--- projects/tcp_cc_8.x/ObsoleteFiles.inc Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/ObsoleteFiles.inc Sat Apr 11 02:39:30 2009 (r190906)
@@ -14,15 +14,18 @@
# The file is partitioned: OLD_FILES first, then OLD_LIBS and OLD_DIRS last.
#
+# 20090410: VOP_LEASE.9 removed
+OLD_FILES+=usr/share/man/man9/VOP_LEASE.9.gz
# 20090405: removal of if_ppp(4) and if_sl(4)
-OLD_FILES+=sbin/slattach
-OLD_FILES+=sbin/startslip
+OLD_FILES+=sbin/slattach rescue/slattach
+OLD_FILES+=sbin/startslip rescue/startslip
OLD_FILES+=usr/include/net/if_ppp.h
OLD_FILES+=usr/include/net/if_pppvar.h
OLD_FILES+=usr/include/net/if_slvar.h
OLD_FILES+=usr/include/net/ppp_comp.h
OLD_FILES+=usr/include/net/slip.h
OLD_FILES+=usr/sbin/sliplogin
+OLD_FILES+=usr/sbin/slstat
OLD_FILES+=usr/sbin/pppd
OLD_FILES+=usr/sbin/pppstats
OLD_FILES+=usr/share/man/man1/startslip.1.gz
@@ -33,7 +36,9 @@ OLD_FILES+=usr/share/man/man4/sl.4.gz
OLD_FILES+=usr/share/man/man8/pppd.8.gz
OLD_FILES+=usr/share/man/man8/pppstats.8.gz
OLD_FILES+=usr/share/man/man8/slattach.8.gz
+OLD_FILES+=usr/share/man/man8/slip.8.gz
OLD_FILES+=usr/share/man/man8/sliplogin.8.gz
+OLD_FILES+=usr/share/man/man8/slstat.8.gz
# 20090321: libpcap upgraded to 1.0.0
OLD_LIBS+=lib/libpcap.so.5
.if ${TARGET_ARCH} == "amd64"
Modified: projects/tcp_cc_8.x/UPDATING
==============================================================================
--- projects/tcp_cc_8.x/UPDATING Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/UPDATING Sat Apr 11 02:39:30 2009 (r190906)
@@ -22,6 +22,11 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 8.
to maximize performance. (To disable malloc debugging, run
ln -s aj /etc/malloc.conf.)
+20090407:
+ The size of structs vnet_net, vnet_inet and vnet_ipfw has changed;
+ kernel modules referencing any of the above need to be recompiled.
+ Bump __FreeBSD_version to 800075.
+
20090320:
GEOM_PART has become the default partition slicer for storage devices,
replacing GEOM_MBR, GEOM_BSD, GEOM_PC98 and GEOM_GPT slicers. It
Modified: projects/tcp_cc_8.x/contrib/gdb/FREEBSD-Xlist
==============================================================================
--- projects/tcp_cc_8.x/contrib/gdb/FREEBSD-Xlist Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/contrib/gdb/FREEBSD-Xlist Sat Apr 11 02:39:30 2009 (r190906)
@@ -1,60 +1,69 @@
$FreeBSD$
-gdb-6.1.1/bfd/*
-gdb-6.1.1/config/*
-gdb-6.1.1/etc/*
-gdb-6.1.1/gdb/avr*
-gdb-6.1.1/gdb/config/avr/*
-gdb-6.1.1/gdb/config/cris/*
-gdb-6.1.1/gdb/config/d10v/*
-gdb-6.1.1/gdb/config/djgpp/*
-gdb-6.1.1/gdb/config/frv/*
-gdb-6.1.1/gdb/config/h8300/*
-gdb-6.1.1/gdb/config/m32r/*
-gdb-6.1.1/gdb/config/m68hc11/*
-gdb-6.1.1/gdb/config/m68k/*
-gdb-6.1.1/gdb/config/mcore/*
-gdb-6.1.1/gdb/config/mn10300/*
-gdb-6.1.1/gdb/config/ns32k/*
-gdb-6.1.1/gdb/config/pa/*
-gdb-6.1.1/gdb/config/sh/*
-gdb-6.1.1/gdb/config/v850/*
-gdb-6.1.1/gdb/config/vax/*
-gdb-6.1.1/gdb/config/xstormy16/*
-gdb-6.1.1/gdb/cris*
-gdb-6.1.1/gdb/d10v*
-gdb-6.1.1/gdb/frv*
-gdb-6.1.1/gdb/h8300*
-gdb-6.1.1/gdb/*m32r*
-gdb-6.1.1/gdb/m68*
-gdb-6.1.1/gdb/mcore*
-gdb-6.1.1/gdb/mn10300*
-gdb-6.1.1/gdb/nlm/*
-gdb-6.1.1/gdb/ns32k*
-gdb-6.1.1/gdb/osf-share/*
-gdb-6.1.1/gdb/hppa*
-gdb-6.1.1/gdb/rdi-share/*
-gdb-6.1.1/gdb/sh*
-gdb-6.1.1/gdb/testsuite/*
-gdb-6.1.1/gdb/v850*
-gdb-6.1.1/gdb/vax*
-gdb-6.1.1/gdb/vx-share/*
-gdb-6.1.1/gdb/xstormy16*
-gdb-6.1.1/include/aout/*
-gdb-6.1.1/include/coff/*
-gdb-6.1.1/include/elf/*
-gdb-6.1.1/include/mpw/*
-gdb-6.1.1/include/nlm/*
-gdb-6.1.1/include/opcode/*
-gdb-6.1.1/intl/*
-gdb-6.1.1/libiberty/*
-gdb-6.1.1/mmalloc/*
-gdb-6.1.1/opcodes/*
-gdb-6.1.1/readline/*
-gdb-6.1.1/sim/*
-gdb-6.1.1/texinfo/*
-gdb-6.1.1/utils/*
+gdb-*/bfd/*
+gdb-*/config/*
+gdb-*/etc/*
+gdb-*/gdb/avr*
+gdb-*/gdb/config/avr/*
+gdb-*/gdb/config/cris/*
+gdb-*/gdb/config/d10v/*
+gdb-*/gdb/config/djgpp/*
+gdb-*/gdb/config/frv/*
+gdb-*/gdb/config/h8300/*
+gdb-*/gdb/config/m32r/*
+gdb-*/gdb/config/m68hc11/*
+gdb-*/gdb/config/m68k/*
+gdb-*/gdb/config/mcore/*
+gdb-*/gdb/config/mn10300/*
+gdb-*/gdb/config/ns32k/*
+gdb-*/gdb/config/pa/*
+gdb-*/gdb/config/sh/*
+gdb-*/gdb/config/v850/*
+gdb-*/gdb/config/vax/*
+gdb-*/gdb/config/xstormy16/*
+gdb-*/gdb/cris*
+gdb-*/gdb/d10v*
+gdb-*/gdb/frv*
+gdb-*/gdb/h8300*
+gdb-*/gdb/iq2000*
+gdb-*/gdb/i386nbsd*
+gdb-*/gdb/m32c*
+gdb-*/gdb/*m32r*
+gdb-*/gdb/m68*
+gdb-*/gdb/m88*
+gdb-*/gdb/mcore*
+gdb-*/gdb/mn10300*
+gdb-*/gdb/mt-*
+gdb-*/gdb/nlm/*
+gdb-*/gdb/ns32k*
+gdb-*/gdb/osf-share/*
+gdb-*/gdb/ppcobsd*
+gdb-*/gdb/hppa*
+gdb-*/gdb/rdi-share/*
+gdb-*/gdb/sh*
+gdb-*/gdb/testsuite/*
+gdb-*/gdb/v850*
+gdb-*/gdb/vax*
+gdb-*/gdb/vx-share/*
+gdb-*/gdb/xstormy16*
+gdb-*/gdb/xtensa*
+gdb-*/include/aout/*
+gdb-*/include/coff/*
+gdb-*/include/elf/*
+gdb-*/include/mpw/*
+gdb-*/include/nlm/*
+gdb-*/include/opcode/*
+gdb-*/intl/*
+gdb-*/libiberty/*
+gdb-*/mmalloc/*
+gdb-*/opcodes/*
+gdb-*/readline/*
+gdb-*/regformats/reg-cris*
+gdb-*/sim/*
+gdb-*/texinfo/*
+gdb-*/utils/*
*ChangeLog*
*Makefile*
+*TODO*
*aix*
*config.*
*configure*
@@ -63,4 +72,6 @@ gdb-6.1.1/utils/*
*interix*
*irix*
*linux*
+*mingw*
*osf1*
+*win32*
Modified: projects/tcp_cc_8.x/lib/libc/rpc/clnt_bcast.c
==============================================================================
--- projects/tcp_cc_8.x/lib/libc/rpc/clnt_bcast.c Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/lib/libc/rpc/clnt_bcast.c Sat Apr 11 02:39:30 2009 (r190906)
@@ -461,7 +461,7 @@ rpc_broadcast_exp(prog, vers, proc, xarg
#ifdef RPC_DEBUG
perror("sendto");
#endif
- warnx("clnt_bcast: cannot send"
+ warnx("clnt_bcast: cannot send "
"broadcast packet");
stat = RPC_CANTSEND;
continue;
Modified: projects/tcp_cc_8.x/lib/libc/string/memchr.3
==============================================================================
--- projects/tcp_cc_8.x/lib/libc/string/memchr.3 Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/lib/libc/string/memchr.3 Sat Apr 11 02:39:30 2009 (r190906)
@@ -83,7 +83,8 @@ bytes.
.Xr strsep 3 ,
.Xr strspn 3 ,
.Xr strstr 3 ,
-.Xr strtok 3
+.Xr strtok 3 ,
+.Xr wmemchr 3
.Sh STANDARDS
The
.Fn memchr
Modified: projects/tcp_cc_8.x/lib/libc/string/memcmp.3
==============================================================================
--- projects/tcp_cc_8.x/lib/libc/string/memcmp.3 Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/lib/libc/string/memcmp.3 Sat Apr 11 02:39:30 2009 (r190906)
@@ -72,7 +72,8 @@ Zero-length strings are always identical
.Xr strcasecmp 3 ,
.Xr strcmp 3 ,
.Xr strcoll 3 ,
-.Xr strxfrm 3
+.Xr strxfrm 3 ,
+.Xr wmemcmp 3
.Sh STANDARDS
The
.Fn memcmp
Modified: projects/tcp_cc_8.x/lib/libc/string/memcpy.3
==============================================================================
--- projects/tcp_cc_8.x/lib/libc/string/memcpy.3 Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/lib/libc/string/memcpy.3 Sat Apr 11 02:39:30 2009 (r190906)
@@ -64,7 +64,8 @@ returns the original value of
.Xr bcopy 3 ,
.Xr memccpy 3 ,
.Xr memmove 3 ,
-.Xr strcpy 3
+.Xr strcpy 3 ,
+.Xr wmemcpy 3
.Sh STANDARDS
The
.Fn memcpy
Modified: projects/tcp_cc_8.x/lib/libc/string/memmove.3
==============================================================================
--- projects/tcp_cc_8.x/lib/libc/string/memmove.3 Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/lib/libc/string/memmove.3 Sat Apr 11 02:39:30 2009 (r190906)
@@ -65,7 +65,8 @@ function returns the original value of
.Xr bcopy 3 ,
.Xr memccpy 3 ,
.Xr memcpy 3 ,
-.Xr strcpy 3
+.Xr strcpy 3 ,
+.Xr wmemmove 3
.Sh STANDARDS
The
.Fn memmove
Modified: projects/tcp_cc_8.x/lib/libc/string/memset.3
==============================================================================
--- projects/tcp_cc_8.x/lib/libc/string/memset.3 Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/lib/libc/string/memset.3 Sat Apr 11 02:39:30 2009 (r190906)
@@ -60,7 +60,8 @@ The
function returns its first argument.
.Sh SEE ALSO
.Xr bzero 3 ,
-.Xr swab 3
+.Xr swab 3 ,
+.Xr wmemset 3
.Sh STANDARDS
The
.Fn memset
Modified: projects/tcp_cc_8.x/lib/libc/string/strcasecmp.3
==============================================================================
--- projects/tcp_cc_8.x/lib/libc/string/strcasecmp.3 Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/lib/libc/string/strcasecmp.3 Sat Apr 11 02:39:30 2009 (r190906)
@@ -83,7 +83,8 @@ is greater than
.Xr strcmp 3 ,
.Xr strcoll 3 ,
.Xr strxfrm 3 ,
-.Xr tolower 3
+.Xr tolower 3 ,
+.Xr wcscasecmp 3
.Sh HISTORY
The
.Fn strcasecmp
Modified: projects/tcp_cc_8.x/lib/libc/string/strcat.3
==============================================================================
--- projects/tcp_cc_8.x/lib/libc/string/strcat.3 Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/lib/libc/string/strcat.3 Sat Apr 11 02:39:30 2009 (r190906)
@@ -144,7 +144,8 @@ foo(const char *arbitrary_string)
.Xr memmove 3 ,
.Xr strcpy 3 ,
.Xr strlcat 3 ,
-.Xr strlcpy 3
+.Xr strlcpy 3 ,
+.Xr wcscat 3
.Sh STANDARDS
The
.Fn strcat
Modified: projects/tcp_cc_8.x/lib/libc/string/strchr.3
==============================================================================
--- projects/tcp_cc_8.x/lib/libc/string/strchr.3 Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/lib/libc/string/strchr.3 Sat Apr 11 02:39:30 2009 (r190906)
@@ -85,7 +85,8 @@ if the character does not appear in the
.Xr strsep 3 ,
.Xr strspn 3 ,
.Xr strstr 3 ,
-.Xr strtok 3
+.Xr strtok 3 ,
+.Xr wcschr 3
.Sh STANDARDS
The functions
.Fn strchr
Modified: projects/tcp_cc_8.x/lib/libc/string/strcmp.3
==============================================================================
--- projects/tcp_cc_8.x/lib/libc/string/strcmp.3 Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/lib/libc/string/strcmp.3 Sat Apr 11 02:39:30 2009 (r190906)
@@ -89,7 +89,8 @@ is greater than
.Xr memcmp 3 ,
.Xr strcasecmp 3 ,
.Xr strcoll 3 ,
-.Xr strxfrm 3
+.Xr strxfrm 3 ,
+.Xr wcscmp 3
.Sh STANDARDS
The
.Fn strcmp
Modified: projects/tcp_cc_8.x/lib/libc/string/strcpy.3
==============================================================================
--- projects/tcp_cc_8.x/lib/libc/string/strcpy.3 Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/lib/libc/string/strcpy.3 Sat Apr 11 02:39:30 2009 (r190906)
@@ -189,7 +189,8 @@ and
.Xr memccpy 3 ,
.Xr memcpy 3 ,
.Xr memmove 3 ,
-.Xr strlcpy 3
+.Xr strlcpy 3 ,
+.Xr wcscpy 3
.Sh STANDARDS
The
.Fn strcpy
Modified: projects/tcp_cc_8.x/lib/libc/string/strdup.3
==============================================================================
--- projects/tcp_cc_8.x/lib/libc/string/strdup.3 Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/lib/libc/string/strdup.3 Sat Apr 11 02:39:30 2009 (r190906)
@@ -71,7 +71,8 @@ always
terminating the copied string.
.Sh SEE ALSO
.Xr free 3 ,
-.Xr malloc 3
+.Xr malloc 3 ,
+.Xr wcsdup 3
.Sh HISTORY
The
.Fn strdup
Modified: projects/tcp_cc_8.x/lib/libc/string/strlcpy.3
==============================================================================
--- projects/tcp_cc_8.x/lib/libc/string/strlcpy.3 Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/lib/libc/string/strlcpy.3 Sat Apr 11 02:39:30 2009 (r190906)
@@ -192,7 +192,8 @@ As a matter of fact, the first version o
.Sh SEE ALSO
.Xr snprintf 3 ,
.Xr strncat 3 ,
-.Xr strncpy 3
+.Xr strncpy 3 ,
+.Xr wcslcpy 3
.Sh HISTORY
The
.Fn strlcpy
Modified: projects/tcp_cc_8.x/lib/libc/string/strlen.3
==============================================================================
--- projects/tcp_cc_8.x/lib/libc/string/strlen.3 Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/lib/libc/string/strlen.3 Sat Apr 11 02:39:30 2009 (r190906)
@@ -77,7 +77,9 @@ or
.Fa maxlen ,
whichever is smaller.
.Sh SEE ALSO
-.Xr string 3
+.Xr string 3 ,
+.Xr wcslen 3 ,
+.Xr wcswidth 3
.Sh STANDARDS
The
.Fn strlen
Modified: projects/tcp_cc_8.x/lib/libc/string/strpbrk.3
==============================================================================
--- projects/tcp_cc_8.x/lib/libc/string/strpbrk.3 Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/lib/libc/string/strpbrk.3 Sat Apr 11 02:39:30 2009 (r190906)
@@ -67,7 +67,8 @@ returns NULL.
.Xr strsep 3 ,
.Xr strspn 3 ,
.Xr strstr 3 ,
-.Xr strtok 3
+.Xr strtok 3 ,
+.Xr wcspbrk 3
.Sh STANDARDS
The
.Fn strpbrk
Modified: projects/tcp_cc_8.x/lib/libc/string/strspn.3
==============================================================================
--- projects/tcp_cc_8.x/lib/libc/string/strspn.3 Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/lib/libc/string/strspn.3 Sat Apr 11 02:39:30 2009 (r190906)
@@ -74,7 +74,8 @@ returns the number of characters spanned
.Xr strrchr 3 ,
.Xr strsep 3 ,
.Xr strstr 3 ,
-.Xr strtok 3
+.Xr strtok 3 ,
+.Xr wcsspn 3
.Sh STANDARDS
The
.Fn strspn
Modified: projects/tcp_cc_8.x/lib/libc/string/strstr.3
==============================================================================
--- projects/tcp_cc_8.x/lib/libc/string/strstr.3 Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/lib/libc/string/strstr.3 Sat Apr 11 02:39:30 2009 (r190906)
@@ -135,7 +135,8 @@ ptr = strnstr(largestring, smallstring,
.Xr strrchr 3 ,
.Xr strsep 3 ,
.Xr strspn 3 ,
-.Xr strtok 3
+.Xr strtok 3 ,
+.Xr wcsstr 3
.Sh STANDARDS
The
.Fn strstr
Modified: projects/tcp_cc_8.x/lib/libkvm/kvm_powerpc.c
==============================================================================
--- projects/tcp_cc_8.x/lib/libkvm/kvm_powerpc.c Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/lib/libkvm/kvm_powerpc.c Sat Apr 11 02:39:30 2009 (r190906)
@@ -1,8 +1,5 @@
-/* $NetBSD: kvm_powerpc.c,v 1.4 1998/02/03 06:50:07 mycroft Exp $ */
-
/*-
- * Copyright (C) 1996 Wolfgang Solfrank.
- * Copyright (C) 1996 TooLs GmbH.
+ * Copyright (c) 2008, Juniper Networks, Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -13,91 +10,209 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by TooLs GmbH.
- * 4. The name of TooLs GmbH may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
+ * 3. Neither the name of the author nor the names of any co-contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
*
- * THIS SOFTWARE IS PROVIDED BY TOOLS GMBH ``AS IS'' AND ANY EXPRESS OR
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- * IN NO EVENT SHALL TOOLS GMBH BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-/*
- * PowerPC machine dependent routines for kvm.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
#include <sys/param.h>
+#include <sys/endian.h>
+#include <sys/kerneldump.h>
+#include <sys/mman.h>
#include <vm/vm.h>
#include <db.h>
+#include <elf.h>
#include <limits.h>
#include <kvm.h>
#include <stdlib.h>
#include "kvm_private.h"
-void
-_kvm_freevtop(kd)
- kvm_t *kd;
+struct vmstate {
+ void *map;
+ size_t mapsz;
+ size_t dmphdrsz;
+ Elf32_Ehdr *eh;
+ Elf32_Phdr *ph;
+};
+
+static int
+valid_elf_header(Elf32_Ehdr *eh)
{
- if (kd->vmst != 0)
- free(kd->vmst);
+
+ if (!IS_ELF(*eh))
+ return (0);
+ if (eh->e_ident[EI_CLASS] != ELFCLASS32)
+ return (0);
+ if (eh->e_ident[EI_DATA] != ELFDATA2MSB)
+ return (0);
+ if (eh->e_ident[EI_VERSION] != EV_CURRENT)
+ return (0);
+ if (eh->e_ident[EI_OSABI] != ELFOSABI_STANDALONE)
+ return (0);
+ if (be16toh(eh->e_type) != ET_CORE)
+ return (0);
+ if (be16toh(eh->e_machine) != EM_PPC)
+ return (0);
+ /* Can't think of anything else to check... */
+ return (1);
}
-int
-_kvm_initvtop(kd)
- kvm_t *kd;
+static size_t
+dump_header_size(struct kerneldumpheader *dh)
{
- return 0;
+
+ if (strcmp(dh->magic, KERNELDUMPMAGIC) != 0)
+ return (0);
+ if (strcmp(dh->architecture, "powerpc") != 0)
+ return (0);
+ /* That should do it... */
+ return (sizeof(*dh));
}
-int
-_kvm_kvatop(kd, va, pa)
- kvm_t *kd;
- u_long va;
- off_t *pa;
-{
- _kvm_err(kd, 0, "vatop not yet implemented!");
- return 0;
-}
-
-off_t
-_kvm_pa2off(kd, pa)
- kvm_t *kd;
- u_long pa;
+/*
+ * Map the ELF headers into the process' address space. We do this in two
+ * steps: first the ELF header itself and using that information the whole
+ * set of headers.
+ */
+static int
+powerpc_maphdrs(kvm_t *kd)
{
- _kvm_err(kd, 0, "pa2off not yet implemented!");
- return 0;
+ struct vmstate *vm;
+ size_t mapsz;
+
+ vm = kd->vmst;
+
+ vm->mapsz = PAGE_SIZE;
+ vm->map = mmap(NULL, vm->mapsz, PROT_READ, MAP_PRIVATE, kd->pmfd, 0);
+ if (vm->map == MAP_FAILED) {
+ _kvm_err(kd, kd->program, "cannot map corefile");
+ return (-1);
+ }
+ vm->dmphdrsz = 0;
+ vm->eh = vm->map;
+ if (!valid_elf_header(vm->eh)) {
+ /*
+ * Hmmm, no ELF header. Maybe we still have a dump header.
+ * This is normal when the core file wasn't created by
+ * savecore(8), but instead was dumped over TFTP. We can
+ * easily skip the dump header...
+ */
+ vm->dmphdrsz = dump_header_size(vm->map);
+ if (vm->dmphdrsz == 0)
+ goto inval;
+ vm->eh = (void *)((uintptr_t)vm->map + vm->dmphdrsz);
+ if (!valid_elf_header(vm->eh))
+ goto inval;
+ }
+ mapsz = be16toh(vm->eh->e_phentsize) * be16toh(vm->eh->e_phnum) +
+ be32toh(vm->eh->e_phoff);
+ munmap(vm->map, vm->mapsz);
+
+ /* Map all headers. */
+ vm->mapsz = vm->dmphdrsz + mapsz;
+ vm->map = mmap(NULL, vm->mapsz, PROT_READ, MAP_PRIVATE, kd->pmfd, 0);
+ if (vm->map == MAP_FAILED) {
+ _kvm_err(kd, kd->program, "cannot map corefle headers");
+ return (-1);
+ }
+ vm->eh = (void *)((uintptr_t)vm->map + vm->dmphdrsz);
+ vm->ph = (void *)((uintptr_t)vm->eh + be32toh(vm->eh->e_phoff));
+ return (0);
+
+ inval:
+ munmap(vm->map, vm->mapsz);
+ vm->map = MAP_FAILED;
+ _kvm_err(kd, kd->program, "invalid corefile");
+ return (-1);
}
/*
- * Machine-dependent initialization for ALL open kvm descriptors,
- * not just those for a kernel crash dump. Some architectures
- * have to deal with these NOT being constants! (i.e. m68k)
+ * Determine the offset within the corefile corresponding the virtual
+ * address. Return the number of contiguous bytes in the corefile or
+ * 0 when the virtual address is invalid.
*/
+static size_t
+powerpc_va2off(kvm_t *kd, u_long va, off_t *ofs)
+{
+ struct vmstate *vm = kd->vmst;
+ Elf32_Phdr *ph;
+ int nph;
+
+ ph = vm->ph;
+ nph = be16toh(vm->eh->e_phnum);
+ while (nph && (va < be32toh(ph->p_vaddr) ||
+ va >= be32toh(ph->p_vaddr) + be32toh(ph->p_memsz))) {
+ nph--;
+ ph = (void *)((uintptr_t)ph + be16toh(vm->eh->e_phentsize));
+ }
+ if (nph == 0)
+ return (0);
+
+ /* Segment found. Return file offset and range. */
+ *ofs = vm->dmphdrsz + be32toh(ph->p_offset) +
+ (va - be32toh(ph->p_vaddr));
+ return (be32toh(ph->p_memsz) - (va - be32toh(ph->p_vaddr)));
+}
+
+void
+_kvm_freevtop(kvm_t *kd)
+{
+ struct vmstate *vm = kd->vmst;
+
+ if (vm == NULL)
+ return;
+
+ if (vm->eh != MAP_FAILED) {
+ munmap(vm->eh, vm->mapsz);
+ vm->eh = MAP_FAILED;
+ }
+ free(vm);
+ kd->vmst = NULL;
+}
+
+int
+_kvm_initvtop(kvm_t *kd)
+{
+
+ kd->vmst = (struct vmstate *)_kvm_malloc(kd, sizeof(*kd->vmst));
+ if (kd->vmst == NULL) {
+ _kvm_err(kd, kd->program, "out of virtual memory");
+ return (-1);
+ }
+ if (powerpc_maphdrs(kd) == -1) {
+ free(kd->vmst);
+ kd->vmst = NULL;
+ return (-1);
+ }
+ return (0);
+}
+
int
-_kvm_mdopen(kd)
- kvm_t *kd;
+_kvm_kvatop(kvm_t *kd, u_long va, off_t *ofs)
{
+ struct vmstate *vm;
-#ifdef FBSD_NOT_YET
- kd->usrstack = USRSTACK;
- kd->min_uva = VM_MIN_ADDRESS;
- kd->max_uva = VM_MAXUSER_ADDRESS;
-#endif
+ vm = kd->vmst;
+ if (vm->ph->p_paddr == ~0U)
+ return ((int)powerpc_va2off(kd, va, ofs));
+ _kvm_err(kd, kd->program, "Raw corefile not supported");
return (0);
}
Modified: projects/tcp_cc_8.x/libexec/ftpd/extern.h
==============================================================================
--- projects/tcp_cc_8.x/libexec/ftpd/extern.h Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/libexec/ftpd/extern.h Sat Apr 11 02:39:30 2009 (r190906)
@@ -73,6 +73,35 @@ void yyerror(char *);
int yyparse(void);
int ls_main(int, char **);
+extern int assumeutf8;
+extern char cbuf[];
+extern union sockunion data_dest;
+extern int epsvall;
+extern int form;
+extern int ftpdebug;
+extern int guest;
+extern union sockunion his_addr;
+extern char *homedir;
+extern int hostinfo;
+extern char *hostname;
+extern int maxtimeout;
+extern int logged_in;
+extern int logging;
+extern int noepsv;
+extern int noguestretr;
+extern int noretr;
+extern int paranoid;
+extern struct passwd *pw;
+extern int pdata;
+extern char proctitle[];
+extern int readonly;
+extern off_t restart_point;
+extern int timeout;
+extern char tmpline[];
+extern int type;
+extern char *typenames[]; /* defined in <arpa/ftp.h> included from ftpd.c */
+extern int usedefault;
+
struct sockaddr_in;
struct sockaddr_in6;
union sockunion {
Modified: projects/tcp_cc_8.x/libexec/ftpd/ftpcmd.y
==============================================================================
--- projects/tcp_cc_8.x/libexec/ftpd/ftpcmd.y Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/libexec/ftpd/ftpcmd.y Sat Apr 11 02:39:30 2009 (r190906)
@@ -76,31 +76,6 @@ __FBSDID("$FreeBSD$");
#include "extern.h"
#include "pathnames.h"
-extern union sockunion data_dest, his_addr;
-extern int hostinfo;
-extern int logged_in;
-extern struct passwd *pw;
-extern int guest;
-extern char *homedir;
-extern int paranoid;
-extern int logging;
-extern int type;
-extern int form;
-extern int ftpdebug;
-extern int timeout;
-extern int maxtimeout;
-extern int pdata;
-extern char *hostname;
-extern char proctitle[];
-extern int usedefault;
-extern char tmpline[];
-extern int readonly;
-extern int assumeutf8;
-extern int noepsv;
-extern int noretr;
-extern int noguestretr;
-extern char *typenames[]; /* defined in <arpa/ftp.h> included from ftpd.c */
-
off_t restart_point;
static int cmd_type;
@@ -110,8 +85,6 @@ static int state;
char cbuf[512];
char *fromname = NULL;
-extern int epsvall;
-
%}
%union {
Modified: projects/tcp_cc_8.x/libexec/ftpd/ftpd.c
==============================================================================
--- projects/tcp_cc_8.x/libexec/ftpd/ftpd.c Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/libexec/ftpd/ftpd.c Sat Apr 11 02:39:30 2009 (r190906)
@@ -105,9 +105,6 @@ __FBSDID("$FreeBSD$");
static char version[] = "Version 6.00LS";
#undef main
-extern off_t restart_point;
-extern char cbuf[];
-
union sockunion ctrl_addr;
union sockunion data_source;
union sockunion data_dest;
Modified: projects/tcp_cc_8.x/libexec/rtld-elf/map_object.c
==============================================================================
--- projects/tcp_cc_8.x/libexec/rtld-elf/map_object.c Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/libexec/rtld-elf/map_object.c Sat Apr 11 02:39:30 2009 (r190906)
@@ -91,8 +91,7 @@ map_object(int fd, const char *path, con
/*
* Scan the program header entries, and save key information.
*
- * We rely on there being exactly two load segments, text and data,
- * in that order.
+ * We expect that the loadable segments are ordered by load address.
*/
phdr = (Elf_Phdr *) ((char *)hdr + hdr->e_phoff);
phsize = hdr->e_phnum * sizeof (phdr[0]);
@@ -153,8 +152,8 @@ map_object(int fd, const char *path, con
mapsize = base_vlimit - base_vaddr;
base_addr = hdr->e_type == ET_EXEC ? (caddr_t) base_vaddr : NULL;
- mapbase = mmap(base_addr, mapsize, convert_prot(segs[0]->p_flags),
- convert_flags(segs[0]->p_flags), fd, base_offset);
+ mapbase = mmap(base_addr, mapsize, PROT_NONE, MAP_ANON | MAP_PRIVATE |
+ MAP_NOCORE, -1, 0);
if (mapbase == (caddr_t) -1) {
_rtld_error("%s: mmap of entire address space failed: %s",
path, strerror(errno));
@@ -167,7 +166,7 @@ map_object(int fd, const char *path, con
return NULL;
}
- for (i = 0; i <= nsegs; i++) {
+ for (i = 0; i <= nsegs; i++) {
/* Overlay the segment onto the proper region. */
data_offset = trunc_page(segs[i]->p_offset);
data_vaddr = trunc_page(segs[i]->p_vaddr);
@@ -175,8 +174,7 @@ map_object(int fd, const char *path, con
data_addr = mapbase + (data_vaddr - base_vaddr);
data_prot = convert_prot(segs[i]->p_flags);
data_flags = convert_flags(segs[i]->p_flags) | MAP_FIXED;
- /* Do not call mmap on the first segment - this is redundant */
- if (i && mmap(data_addr, data_vlimit - data_vaddr, data_prot,
+ if (mmap(data_addr, data_vlimit - data_vaddr, data_prot,
data_flags, fd, data_offset) == (caddr_t) -1) {
_rtld_error("%s: mmap of data failed: %s", path, strerror(errno));
return NULL;
@@ -207,9 +205,8 @@ map_object(int fd, const char *path, con
bss_vlimit = round_page(segs[i]->p_vaddr + segs[i]->p_memsz);
bss_addr = mapbase + (bss_vaddr - base_vaddr);
if (bss_vlimit > bss_vaddr) { /* There is something to do */
- if (mmap(bss_addr, bss_vlimit - bss_vaddr, data_prot,
- MAP_PRIVATE|MAP_FIXED|MAP_ANON, -1, 0) == (caddr_t) -1) {
- _rtld_error("%s: mmap of bss failed: %s", path,
+ if (mprotect(bss_addr, bss_vlimit - bss_vaddr, data_prot) == -1) {
+ _rtld_error("%s: mprotect of bss failed: %s", path,
strerror(errno));
return NULL;
}
Modified: projects/tcp_cc_8.x/release/doc/en_US.ISO8859-1/hardware/article.sgml
==============================================================================
--- projects/tcp_cc_8.x/release/doc/en_US.ISO8859-1/hardware/article.sgml Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/release/doc/en_US.ISO8859-1/hardware/article.sgml Sat Apr 11 02:39:30 2009 (r190906)
@@ -858,6 +858,8 @@
&hwlist.rum;
+ &hwlist.uath;
+
&hwlist.upgt;
&hwlist.ural;
Modified: projects/tcp_cc_8.x/sbin/gvinum/gvinum.8
==============================================================================
--- projects/tcp_cc_8.x/sbin/gvinum/gvinum.8 Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/sbin/gvinum/gvinum.8 Sat Apr 11 02:39:30 2009 (r190906)
@@ -79,6 +79,10 @@ flag is given.
.It Ic detach Oo Fl f Oc Op Ar plex | subdisk
Detach a plex or subdisk from the volume or plex to which it is
attached.
+.It Ic grow Ar plex device
+Grow a plex by creating a gvinum drive and subdisk on device and attach it to
+the plex.
+If required by the plex organization, it will be put into the growable state.
.It Ic help
Provides a synopsis of
.Nm
@@ -333,16 +337,11 @@ Then, initiate the rebuild:
The plex will go up form degraded mode after the rebuild is finished.
The plex can still be used while the rebuild is in progress, although requests
might be delayed.
-For a more advanced usage and detailed explanation of gvinum, the
-handbook is recommended.
.Pp
Given the configuration as in the previous example, growing a RAID-5 or STRIPED
-array is accomplished by adding a new subdisk to the plex with a
-.Ar description-file
-similar to this:
+array is accomplished by using the grow command:
.Pp
-.Dl "drive newdrive device /dev/ad4"
-.Dl "sd drive newdrive plex myraid5vol.p0"
+.Dl "gvinum grow myraid5vol.p0 /dev/ad4"
.Pp
If everything went ok, the plex state should now be set to growable.
You can then start the growing with the
@@ -355,6 +354,9 @@ As with rebuilding, you can watch the pr
.Ic list
command.
.Pp
+For a more advanced usage and detailed explanation of gvinum, the
+handbook is recommended.
+.Pp
.Sh SEE ALSO
.Xr geom 4 ,
.Xr geom 8
Modified: projects/tcp_cc_8.x/sbin/gvinum/gvinum.c
==============================================================================
--- projects/tcp_cc_8.x/sbin/gvinum/gvinum.c Fri Apr 10 22:15:01 2009 (r190905)
+++ projects/tcp_cc_8.x/sbin/gvinum/gvinum.c Sat Apr 11 02:39:30 2009 (r190906)
@@ -61,6 +61,7 @@ void gvinum_attach(int, char **);
void gvinum_concat(int, char **);
void gvinum_create(int, char **);
void gvinum_detach(int, char **);
+void gvinum_grow(int, char **);
void gvinum_help(void);
void gvinum_list(int, char **);
void gvinum_move(int, char **);
@@ -82,6 +83,7 @@ void printconfig(FILE *, char *);
char *create_drive(char *);
void create_volume(int, char **, char *);
char *find_name(const char *, int, int);
+char *find_drive(const char *);
char *find_pattern(char *, char *);
int
@@ -422,21 +424,16 @@ create_drive(char *device)
drives = 1;
dname = NULL;
- /* Strip away eventual /dev/ in front. */
- if (strncmp(device, "/dev/", 5) == 0)
- device += 5;
-
- drivename = find_name("gvinumdrive", GV_TYPE_DRIVE, GV_MAXDRIVENAME);
+ drivename = find_drive(device);
if (drivename == NULL)
return (NULL);
req = gctl_get_handle();
gctl_ro_param(req, "class", -1, "VINUM");
gctl_ro_param(req, "verb", -1, "create");
- d = malloc(sizeof(struct gv_drive));
+ d = gv_alloc_drive();
if (d == NULL)
err(1, "unable to allocate for gv_drive object");
- memset(d, 0, sizeof(struct gv_drive));
strlcpy(d->name, drivename, sizeof(d->name));
strlcpy(d->device, device, sizeof(d->device));
@@ -629,6 +626,16 @@ find_name(const char *prefix, int type,
return (NULL);
}
+char *
+find_drive(const char *device)
+{
+
+ /* Strip possible /dev/ in front. */
+ if (strncmp(device, "/dev/", 5) == 0)
+ device += 5;
+ return (find_name("gvinumdrive", GV_TYPE_DRIVE, GV_MAXDRIVENAME));
+}
+
/* Detach a plex or subdisk from its parent. */
void
gvinum_detach(int argc, char **argv)
@@ -684,6 +691,8 @@ gvinum_help(void)
"detach [-f] [plex | subdisk]\n"
" Detach a plex or a subdisk from the volume or plex to\n"
" which it is attached.\n"
+ "grow plex drive\n"
+ " Grow plex by creating a properly sized subdisk on drive\n"
"l | list [-r] [-v] [-V] [volume | plex | subdisk]\n"
" List information about specified objects.\n"
"ld [-r] [-v] [-V] [volume]\n"
@@ -1236,6 +1245,87 @@ gvinum_stripe(int argc, char **argv)
create_volume(argc, argv, "stripe");
}
+/* Grow a subdisk by adding disk backed by provider. */
+void
+gvinum_grow(int argc, char **argv)
+{
+ struct gctl_req *req;
+ char *drive, *sdname;
+ char sdprefix[GV_MAXSDNAME];
+ struct gv_drive *d;
+ struct gv_sd *s;
+ const char *errstr;
+ int drives, volumes, plexes, subdisks, flags;
+
+ drives = volumes = plexes = subdisks = 0;
+ if (argc < 3) {
+ warnx("usage:\tgrow plex drive\n");
+ return;
+ }
+
+ s = gv_alloc_sd();
+ if (s == NULL) {
+ warn("unable to create subdisk");
+ return;
+ }
+ d = gv_alloc_drive();
+ if (d == NULL) {
+ warn("unable to create drive");
+ free(s);
+ return;
+ }
+ /* Lookup device and set an appropriate drive name. */
+ drive = find_drive(argv[2]);
+ if (drive == NULL) {
+ warn("unable to find an appropriate drive name");
+ free(s);
+ free(d);
+ return;
+ }
+ strlcpy(d->name, drive, sizeof(d->name));
+ if (strncmp(argv[2], "/dev/", 5) == 0)
+ strlcpy(d->device, (argv[2] + 5), sizeof(d->device));
+ else
+ strlcpy(d->device, argv[2], sizeof(d->device));
+ drives = 1;
+
+ /* We try to use the plex name as basis for the subdisk name. */
+ snprintf(sdprefix, sizeof(sdprefix), "%s.s", argv[1]);
+ sdname = find_name(sdprefix, GV_TYPE_SD, GV_MAXSDNAME);
+ if (sdname == NULL) {
+ warn("unable to find an appropriate subdisk name");
+ free(s);
+ free(d);
+ free(drive);
+ return;
+ }
+ strlcpy(s->name, sdname, sizeof(s->name));
+ free(sdname);
+ strlcpy(s->plex, argv[1], sizeof(s->plex));
+ strlcpy(s->drive, d->name, sizeof(s->drive));
+ subdisks = 1;
+
+ req = gctl_get_handle();
+ gctl_ro_param(req, "class", -1, "VINUM");
+ gctl_ro_param(req, "verb", -1, "create");
+ gctl_ro_param(req, "flags", sizeof(int), &flags);
+ gctl_ro_param(req, "volumes", sizeof(int), &volumes);
+ gctl_ro_param(req, "plexes", sizeof(int), &plexes);
+ gctl_ro_param(req, "subdisks", sizeof(int), &subdisks);
+ gctl_ro_param(req, "drives", sizeof(int), &drives);
+ gctl_ro_param(req, "drive0", sizeof(*d), d);
+ gctl_ro_param(req, "sd0", sizeof(*s), s);
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-src-projects
mailing list