Date: Fri, 5 Mar 2010 23:14:01 +0000 (UTC) From: Juli Mallett <jmallett@FreeBSD.org> To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r204784 - in user/jmallett/octeon: bin/ed bin/ps contrib/gcc/config/mips etc/defaults etc/rc.d gnu/usr.bin/binutils/ld gnu/usr.bin/cc gnu/usr.bin/dtc lib lib/csu lib/csu/amd64 lib/csu/a... Message-ID: <201003052314.o25NE1Cx041951@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: jmallett Date: Fri Mar 5 23:14:01 2010 New Revision: 204784 URL: http://svn.freebsd.org/changeset/base/204784 Log: Merge from head. Added: user/jmallett/octeon/sys/contrib/dev/acpica/compiler/aslpredef.c - copied unchanged from r204782, head/sys/contrib/dev/acpica/compiler/aslpredef.c user/jmallett/octeon/sys/contrib/dev/acpica/executer/exdebug.c - copied unchanged from r204782, head/sys/contrib/dev/acpica/executer/exdebug.c user/jmallett/octeon/tools/regression/usr.bin/apply/ - copied from r204782, head/tools/regression/usr.bin/apply/ Modified: user/jmallett/octeon/bin/ed/Makefile user/jmallett/octeon/bin/ed/main.c user/jmallett/octeon/bin/ps/ps.1 user/jmallett/octeon/contrib/gcc/config/mips/freebsd.h user/jmallett/octeon/etc/defaults/rc.conf user/jmallett/octeon/etc/rc.d/jail user/jmallett/octeon/gnu/usr.bin/binutils/ld/elf32btsmipn32_fbsd.sh user/jmallett/octeon/gnu/usr.bin/binutils/ld/elf32ltsmipn32_fbsd.sh user/jmallett/octeon/gnu/usr.bin/cc/Makefile.inc user/jmallett/octeon/gnu/usr.bin/dtc/Makefile user/jmallett/octeon/lib/Makefile user/jmallett/octeon/lib/csu/Makefile.inc user/jmallett/octeon/lib/csu/amd64/crt1.c user/jmallett/octeon/lib/csu/arm/Makefile user/jmallett/octeon/lib/csu/arm/crt1.c user/jmallett/octeon/lib/csu/ia64/Makefile user/jmallett/octeon/lib/csu/mips/Makefile user/jmallett/octeon/lib/csu/mips/crt1.c user/jmallett/octeon/lib/csu/powerpc/Makefile user/jmallett/octeon/lib/csu/powerpc/crt1.c user/jmallett/octeon/lib/csu/sparc64/crt1.c user/jmallett/octeon/lib/libc/posix1e/acl_add_flag_np.3 user/jmallett/octeon/lib/libc/posix1e/acl_clear_flags_np.3 user/jmallett/octeon/lib/libc/posix1e/acl_delete_flag_np.3 user/jmallett/octeon/lib/libc/posix1e/acl_get_brand_np.3 user/jmallett/octeon/lib/libc/posix1e/acl_get_entry_type_np.3 user/jmallett/octeon/lib/libc/posix1e/acl_get_flag_np.3 user/jmallett/octeon/lib/libc/posix1e/acl_get_flagset_np.3 user/jmallett/octeon/lib/libc/posix1e/acl_set_entry_type_np.3 user/jmallett/octeon/lib/libc/posix1e/acl_set_flagset_np.3 user/jmallett/octeon/lib/libsm/Makefile user/jmallett/octeon/libexec/rtld-elf/mips/reloc.c user/jmallett/octeon/libexec/rtld-elf/mips/rtld_start.S user/jmallett/octeon/sbin/geom/class/cache/gcache.8 user/jmallett/octeon/sbin/geom/class/mountver/gmountver.8 user/jmallett/octeon/sbin/ipfw/dummynet.c user/jmallett/octeon/sbin/ipfw/ipfw.8 user/jmallett/octeon/sbin/ipfw/ipfw2.c user/jmallett/octeon/sbin/ipfw/main.c user/jmallett/octeon/share/man/man4/ada.4 user/jmallett/octeon/share/man/man4/ahci.4 user/jmallett/octeon/share/man/man4/cd.4 user/jmallett/octeon/share/man/man4/ch.4 user/jmallett/octeon/share/man/man4/da.4 user/jmallett/octeon/share/man/man4/ohci.4 user/jmallett/octeon/share/man/man4/pass.4 user/jmallett/octeon/share/man/man4/pt.4 user/jmallett/octeon/share/man/man4/sa.4 user/jmallett/octeon/share/man/man4/scsi.4 user/jmallett/octeon/share/man/man4/siis.4 user/jmallett/octeon/share/man/man4/udbp.4 user/jmallett/octeon/share/man/man4/uhci.4 user/jmallett/octeon/share/man/man4/ukbd.4 user/jmallett/octeon/share/man/man4/umass.4 user/jmallett/octeon/share/man/man4/ums.4 user/jmallett/octeon/share/man/man4/usb.4 user/jmallett/octeon/share/man/man5/rc.conf.5 user/jmallett/octeon/sys/arm/mv/common.c user/jmallett/octeon/sys/arm/mv/kirkwood/kirkwood.c user/jmallett/octeon/sys/conf/files user/jmallett/octeon/sys/conf/ldscript.mips.octeon1.32 (contents, props changed) user/jmallett/octeon/sys/conf/ldscript.mips.octeon1.64 (contents, props changed) user/jmallett/octeon/sys/conf/ldscript.mips.octeon1.n32 (contents, props changed) user/jmallett/octeon/sys/contrib/dev/acpica/changes.txt user/jmallett/octeon/sys/contrib/dev/acpica/common/dmextern.c user/jmallett/octeon/sys/contrib/dev/acpica/common/dmtable.c user/jmallett/octeon/sys/contrib/dev/acpica/common/dmtbdump.c user/jmallett/octeon/sys/contrib/dev/acpica/common/dmtbinfo.c user/jmallett/octeon/sys/contrib/dev/acpica/compiler/aslanalyze.c user/jmallett/octeon/sys/contrib/dev/acpica/compiler/aslcompiler.h user/jmallett/octeon/sys/contrib/dev/acpica/compiler/aslglobal.h user/jmallett/octeon/sys/contrib/dev/acpica/compiler/aslmain.c user/jmallett/octeon/sys/contrib/dev/acpica/compiler/aslmap.c user/jmallett/octeon/sys/contrib/dev/acpica/compiler/aslstubs.c user/jmallett/octeon/sys/contrib/dev/acpica/compiler/asltypes.h user/jmallett/octeon/sys/contrib/dev/acpica/dispatcher/dsfield.c user/jmallett/octeon/sys/contrib/dev/acpica/dispatcher/dsmethod.c user/jmallett/octeon/sys/contrib/dev/acpica/dispatcher/dsmthdat.c user/jmallett/octeon/sys/contrib/dev/acpica/dispatcher/dsobject.c user/jmallett/octeon/sys/contrib/dev/acpica/dispatcher/dsopcode.c user/jmallett/octeon/sys/contrib/dev/acpica/dispatcher/dswexec.c user/jmallett/octeon/sys/contrib/dev/acpica/dispatcher/dswstate.c user/jmallett/octeon/sys/contrib/dev/acpica/events/evevent.c user/jmallett/octeon/sys/contrib/dev/acpica/events/evgpe.c user/jmallett/octeon/sys/contrib/dev/acpica/events/evgpeblk.c user/jmallett/octeon/sys/contrib/dev/acpica/events/evmisc.c user/jmallett/octeon/sys/contrib/dev/acpica/events/evxface.c user/jmallett/octeon/sys/contrib/dev/acpica/executer/exconvrt.c user/jmallett/octeon/sys/contrib/dev/acpica/executer/excreate.c user/jmallett/octeon/sys/contrib/dev/acpica/executer/exfield.c user/jmallett/octeon/sys/contrib/dev/acpica/executer/exfldio.c user/jmallett/octeon/sys/contrib/dev/acpica/executer/exmisc.c user/jmallett/octeon/sys/contrib/dev/acpica/executer/exmutex.c user/jmallett/octeon/sys/contrib/dev/acpica/executer/exnames.c user/jmallett/octeon/sys/contrib/dev/acpica/executer/exoparg1.c user/jmallett/octeon/sys/contrib/dev/acpica/executer/exoparg2.c user/jmallett/octeon/sys/contrib/dev/acpica/executer/exoparg3.c user/jmallett/octeon/sys/contrib/dev/acpica/executer/exoparg6.c user/jmallett/octeon/sys/contrib/dev/acpica/executer/exprep.c user/jmallett/octeon/sys/contrib/dev/acpica/executer/exregion.c user/jmallett/octeon/sys/contrib/dev/acpica/executer/exresnte.c user/jmallett/octeon/sys/contrib/dev/acpica/executer/exresolv.c user/jmallett/octeon/sys/contrib/dev/acpica/executer/exresop.c user/jmallett/octeon/sys/contrib/dev/acpica/executer/exstore.c user/jmallett/octeon/sys/contrib/dev/acpica/executer/exsystem.c user/jmallett/octeon/sys/contrib/dev/acpica/hardware/hwregs.c user/jmallett/octeon/sys/contrib/dev/acpica/hardware/hwsleep.c user/jmallett/octeon/sys/contrib/dev/acpica/hardware/hwvalid.c user/jmallett/octeon/sys/contrib/dev/acpica/include/acdisasm.h user/jmallett/octeon/sys/contrib/dev/acpica/include/acglobal.h user/jmallett/octeon/sys/contrib/dev/acpica/include/acinterp.h user/jmallett/octeon/sys/contrib/dev/acpica/include/acoutput.h user/jmallett/octeon/sys/contrib/dev/acpica/include/acpixf.h user/jmallett/octeon/sys/contrib/dev/acpica/include/actbl2.h user/jmallett/octeon/sys/contrib/dev/acpica/namespace/nsaccess.c user/jmallett/octeon/sys/contrib/dev/acpica/namespace/nsdump.c user/jmallett/octeon/sys/contrib/dev/acpica/namespace/nsnames.c user/jmallett/octeon/sys/contrib/dev/acpica/namespace/nssearch.c user/jmallett/octeon/sys/contrib/dev/acpica/namespace/nsutils.c user/jmallett/octeon/sys/contrib/dev/acpica/parser/psargs.c user/jmallett/octeon/sys/contrib/dev/acpica/parser/psloop.c user/jmallett/octeon/sys/contrib/dev/acpica/resources/rscreate.c user/jmallett/octeon/sys/contrib/dev/acpica/resources/rslist.c user/jmallett/octeon/sys/contrib/dev/acpica/resources/rsmisc.c user/jmallett/octeon/sys/contrib/dev/acpica/tables/tbfadt.c user/jmallett/octeon/sys/contrib/dev/acpica/tables/tbutils.c user/jmallett/octeon/sys/contrib/dev/acpica/tables/tbxfroot.c user/jmallett/octeon/sys/contrib/dev/acpica/utilities/utalloc.c user/jmallett/octeon/sys/contrib/dev/acpica/utilities/utdelete.c user/jmallett/octeon/sys/contrib/dev/acpica/utilities/uteval.c user/jmallett/octeon/sys/contrib/dev/acpica/utilities/utmisc.c user/jmallett/octeon/sys/contrib/dev/acpica/utilities/utmutex.c user/jmallett/octeon/sys/contrib/dev/acpica/utilities/utobject.c user/jmallett/octeon/sys/contrib/dev/acpica/utilities/uttrack.c user/jmallett/octeon/sys/dev/acpica/acpi.c user/jmallett/octeon/sys/dev/ispfw/ispfw.c user/jmallett/octeon/sys/kern/imgact_elf.c user/jmallett/octeon/sys/mips/include/cpuinfo.h user/jmallett/octeon/sys/mips/mips/busdma_machdep.c user/jmallett/octeon/sys/mips/mips/cpu.c user/jmallett/octeon/sys/mips/sibyte/sb_machdep.c user/jmallett/octeon/sys/netinet/ipfw/ip_dummynet.c user/jmallett/octeon/sys/netinet/ipfw/ip_fw_sockopt.c user/jmallett/octeon/sys/netinet/ipfw/test/dn_test.h user/jmallett/octeon/sys/netinet/ipfw/test/mylist.h user/jmallett/octeon/sys/netinet/ipfw/test/test_dn_sched.c user/jmallett/octeon/sys/pc98/cbus/clock.c user/jmallett/octeon/sys/powerpc/aim/mmu_oea64.c user/jmallett/octeon/sys/powerpc/powermac/smu.c user/jmallett/octeon/tools/regression/usr.bin/Makefile user/jmallett/octeon/usr.bin/apply/Makefile user/jmallett/octeon/usr.bin/apply/apply.c user/jmallett/octeon/usr.bin/chpass/Makefile user/jmallett/octeon/usr.bin/ncal/Makefile user/jmallett/octeon/usr.bin/ncal/ncal.1 user/jmallett/octeon/usr.bin/ncal/ncal.c user/jmallett/octeon/usr.sbin/Makefile user/jmallett/octeon/usr.sbin/acpi/acpidb/Makefile user/jmallett/octeon/usr.sbin/acpi/iasl/Makefile user/jmallett/octeon/usr.sbin/mount_nwfs/Makefile user/jmallett/octeon/usr.sbin/mount_nwfs/mount_nwfs.c Directory Properties: user/jmallett/octeon/ (props changed) user/jmallett/octeon/sys/contrib/dev/acpica/ (props changed) Modified: user/jmallett/octeon/bin/ed/Makefile ============================================================================== --- user/jmallett/octeon/bin/ed/Makefile Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/bin/ed/Makefile Fri Mar 5 23:14:01 2010 (r204784) @@ -4,7 +4,6 @@ PROG= ed SRCS= buf.c cbc.c glbl.c io.c main.c re.c sub.c undo.c -WARNS?= 2 LINKS= ${BINDIR}/ed ${BINDIR}/red MLINKS= ed.1 red.1 Modified: user/jmallett/octeon/bin/ed/main.c ============================================================================== --- user/jmallett/octeon/bin/ed/main.c Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/bin/ed/main.c Fri Mar 5 23:14:01 2010 (r204784) @@ -103,15 +103,10 @@ const char usage[] = "usage: %s [-] [-sx /* ed: line editor */ int -main(int argc, char *argv[]) +main(volatile int argc, char ** volatile argv) { int c, n; long status = 0; -#if __GNUC__ - /* Avoid longjmp clobbering */ - (void) &argc; - (void) &argv; -#endif (void)setlocale(LC_ALL, ""); Modified: user/jmallett/octeon/bin/ps/ps.1 ============================================================================== --- user/jmallett/octeon/bin/ps/ps.1 Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/bin/ps/ps.1 Fri Mar 5 23:14:01 2010 (r204784) @@ -29,7 +29,7 @@ .\" @(#)ps.1 8.3 (Berkeley) 4/18/94 .\" $FreeBSD$ .\" -.Dd July 9, 2009 +.Dd March 5, 2010 .Dt PS 1 .Os .Sh NAME @@ -284,11 +284,10 @@ The percentage of real memory used by th The flags associated with the process as in the include file .In sys/proc.h : -.Bl -column P_STOPPED_SINGLE 0x4000000 +.Bl -column P_SINGLE_BOUNDARY 0x40000000 .It Dv "P_ADVLOCK" Ta No "0x00001 Process may hold a POSIX advisory lock" .It Dv "P_CONTROLT" Ta No "0x00002 Has a controlling terminal" .It Dv "P_KTHREAD" Ta No "0x00004 Kernel thread" -.It Dv "P_NOLOAD" Ta No "0x00008 Ignore during load avg calculations" .It Dv "P_PPWAIT" Ta No "0x00010 Parent is waiting for child to exec/exit" .It Dv "P_PROFIL" Ta No "0x00020 Has started profiling" .It Dv "P_STOPPROF" Ta No "0x00040 Has thread in requesting to stop prof" @@ -305,8 +304,14 @@ the include file .It Dv "P_STOPPED_SINGLE" Ta No "0x80000 Only one thread can continue" .It Dv "P_PROTECTED" Ta No "0x100000 Do not kill on memory overcommit" .It Dv "P_SIGEVENT" Ta No "0x200000 Process pending signals changed" +.It Dv "P_SINGLE_BOUNDARY" Ta No "0x400000 Threads should suspend at user boundary" +.It Dv "P_HWPMC" Ta No "0x800000 Process is using HWPMCs" .It Dv "P_JAILED" Ta No "0x1000000 Process is in jail" .It Dv "P_INEXEC" Ta No "0x4000000 Process is in execve()" +.It Dv "P_STATCHILD" Ta No "0x8000000 Child process stopped or exited" +.It Dv "P_INMEM" Ta No "0x10000000 Loaded into memory" +.It Dv "P_SWAPPINGOUT" Ta No "0x20000000 Process is being swapped out" +.It Dv "P_SWAPPINGIN" Ta No "0x40000000 Process is being swapped in" .El .It Cm label The MAC label of the process. @@ -615,6 +620,13 @@ wait channel (as a symbolic name) .It Cm xstat exit or stop status (valid only for stopped or zombie process) .El +.Pp +Note that the +.Cm pending +column displays bitmask of signals pending in the process queue when +.Fl H +option is not specified, otherwise the per-thread queue of pending signals +is shown. .Sh ENVIRONMENT The following environment variables affect the execution of .Nm : Modified: user/jmallett/octeon/contrib/gcc/config/mips/freebsd.h ============================================================================== --- user/jmallett/octeon/contrib/gcc/config/mips/freebsd.h Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/contrib/gcc/config/mips/freebsd.h Fri Mar 5 23:14:01 2010 (r204784) @@ -65,19 +65,23 @@ Boston, MA 02110-1301, USA. */ #undef LINK_SPEC #define LINK_SPEC "\ - %{G*} %{mips1} %{mips2} %{mips3} %{mips4} %{mips32} %{mips32r2} %{mips64} \ + %{EB} %{EL} %(endian_spec) \ + %{G*} %{mips1} %{mips2} %{mips3} %{mips4} \ + %{mips32} %{mips32r2} %{mips64} %{mips64r2} \ %{bestGnum} %{call_shared} %{no_archive} %{exact_version} \ - %(fbsd_link_spec) " -#if 0 - %(endian_spec) -#endif + %{mabi=32:-melf32%{EB:b}%{EL:l}tsmip_fbsd} \ + %{mabi=n32:-melf32%{EB:b}%{EL:l}tsmipn32_fbsd} \ + %{mabi=64:-melf64%{EB:b}%{EL:l}tsmip_fbsd} \ + %{mabi=o64:-melf64%{EB:b}%{EL:l}tsmip_fbsd} \ + %(fbsd_link_spec)" + /* Reset our STARTFILE_SPEC which was properly set in config/freebsd.h but trashed by config/mips/elf.h. */ #undef STARTFILE_SPEC #define STARTFILE_SPEC FBSD_STARTFILE_SPEC -/* Provide an ENDFILE_SPEC appropriate for FreeBSD/i386. */ +/* Provide an ENDFILE_SPEC appropriate for FreeBSD/mips. */ #undef ENDFILE_SPEC #define ENDFILE_SPEC FBSD_ENDFILE_SPEC @@ -250,12 +254,28 @@ Boston, MA 02110-1301, USA. */ } \ while (0) -/* Default to the mips32 ISA */ -#undef DRIVER_SELF_SPECS +/* Default ABI and ISA */ +#undef DRIVER_SELF_SPECS +#if MIPS_ABI_DEFAULT == ABI_N32 #define DRIVER_SELF_SPECS \ - "%{!march=*: -march=mips32}" -#if 0 - "%{!EB:%{!EL:%(endian_spec)}}", + "%{!EB:%{!EL:%(endian_spec)}}", \ + "%{!march=*: -march=mips64}", \ + "%{!mabi=*: -mabi=n32}" +#elif MIPS_ABI_DEFAULT == ABI_64 +#define DRIVER_SELF_SPECS \ + "%{!EB:%{!EL:%(endian_spec)}}", \ + "%{!march=*: -march=mips64}", \ + "%{!mabi=*: -mabi=64}" +#elif MIPS_ABI_DEFAULT == ABI_O64 +#define DRIVER_SELF_SPECS \ + "%{!EB:%{!EL:%(endian_spec)}}", \ + "%{!march=*: -march=mips64}", \ + "%{!mabi=*: -mabi=o64}" +#else /* default to o32 */ +#define DRIVER_SELF_SPECS \ + "%{!EB:%{!EL:%(endian_spec)}}", \ + "%{!march=*: -march=mips32}", \ + "%{!mabi=*: -mabi=32}" #endif #if 0 Modified: user/jmallett/octeon/etc/defaults/rc.conf ============================================================================== --- user/jmallett/octeon/etc/defaults/rc.conf Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/etc/defaults/rc.conf Fri Mar 5 23:14:01 2010 (r204784) @@ -637,6 +637,7 @@ mixer_enable="YES" # Run the sound mixer ### Jail Configuration ####################################### ############################################################## jail_enable="NO" # Set to NO to disable starting of any jails +jail_parallel_start="NO" # Start jails in the background jail_list="" # Space separated list of names of jails jail_set_hostname_allow="YES" # Allow root user in a jail to change its hostname jail_socket_unixiproute_only="YES" # Route only TCP/IP within a jail Modified: user/jmallett/octeon/etc/rc.d/jail ============================================================================== --- user/jmallett/octeon/etc/rc.d/jail Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/etc/rc.d/jail Fri Mar 5 23:14:01 2010 (r204784) @@ -636,7 +636,8 @@ jail_start() done eval ${_setfib} jail ${_flags} -i ${_rootdir} ${_hostname} \ - \"${_addrl}\" ${_exec_start} > ${_tmp_jail} 2>&1 + \"${_addrl}\" ${_exec_start} > ${_tmp_jail} 2>&1 \ + </dev/null if [ "$?" -eq 0 ] ; then _jail_id=$(head -1 ${_tmp_jail}) @@ -728,4 +729,19 @@ fi if [ -n "$*" ]; then jail_list="$*" fi -run_rc_command "${cmd}" & + +# Only allow the parallel start of jails, other commands are not +# safe to execute in parallel. +case "${cmd}" in +*start) + ;; +*) + jail_parallel_start=NO +esac + +if checkyesno jail_parallel_start; then + run_rc_command "${cmd}" & +else + run_rc_command "${cmd}" +fi + Modified: user/jmallett/octeon/gnu/usr.bin/binutils/ld/elf32btsmipn32_fbsd.sh ============================================================================== --- user/jmallett/octeon/gnu/usr.bin/binutils/ld/elf32btsmipn32_fbsd.sh Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/gnu/usr.bin/binutils/ld/elf32btsmipn32_fbsd.sh Fri Mar 5 23:14:01 2010 (r204784) @@ -1,4 +1,4 @@ -# $FreeBSD: head/gnu/usr.bin/binutils/ld/elf32btsmip_fbsd.sh 185923 2008-12-11 08:18:45Z imp $ +# $FreeBSD$ . ${srcdir}/emulparams/elf32btsmipn32.sh . ${srcdir}/emulparams/elf_fbsd.sh GENERATE_PIE_SCRIPT=yes Modified: user/jmallett/octeon/gnu/usr.bin/binutils/ld/elf32ltsmipn32_fbsd.sh ============================================================================== --- user/jmallett/octeon/gnu/usr.bin/binutils/ld/elf32ltsmipn32_fbsd.sh Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/gnu/usr.bin/binutils/ld/elf32ltsmipn32_fbsd.sh Fri Mar 5 23:14:01 2010 (r204784) @@ -1,4 +1,4 @@ -# $FreeBSD: head/gnu/usr.bin/binutils/ld/elf32ltsmip_fbsd.sh 185923 2008-12-11 08:18:45Z imp $ +# $FreeBSD$ . ${srcdir}/emulparams/elf32ltsmipn32.sh . ${srcdir}/emulparams/elf_fbsd.sh GENERATE_PIE_SCRIPT=yes Modified: user/jmallett/octeon/gnu/usr.bin/cc/Makefile.inc ============================================================================== --- user/jmallett/octeon/gnu/usr.bin/cc/Makefile.inc Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/gnu/usr.bin/cc/Makefile.inc Fri Mar 5 23:14:01 2010 (r204784) @@ -30,6 +30,10 @@ CFLAGS+= -DLONG_TYPE_SIZE=${LONG_TYPE_SI CFLAGS+= -DCROSS_COMPILE .endif +.if ${TARGET_ARCH} == "mips" && !defined(TARGET_BIG_ENDIAN) +CFLAGS += -DTARGET_ENDIAN_DEFAULT=0 +.endif + .if defined(WANT_FORCE_OPTIMIZATION_DOWNGRADE) CFLAGS+= -DFORCE_OPTIMIZATION_DOWNGRADE=${WANT_FORCE_OPTIMIZATION_DOWNGRADE} .endif Modified: user/jmallett/octeon/gnu/usr.bin/dtc/Makefile ============================================================================== --- user/jmallett/octeon/gnu/usr.bin/dtc/Makefile Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/gnu/usr.bin/dtc/Makefile Fri Mar 5 23:14:01 2010 (r204784) @@ -4,7 +4,7 @@ DTCDIR= ${.CURDIR}/../../../contrib/dtc LIBFDTDIR= ${.CURDIR}/../../../sys/contrib/libfdt -.PATH: ${DTCDIR} ${LIBFDTDIR} ${DTCDIR}/tests +.PATH: ${DTCDIR} ${LIBFDTDIR} PROG= dtc Modified: user/jmallett/octeon/lib/Makefile ============================================================================== --- user/jmallett/octeon/lib/Makefile Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/lib/Makefile Fri Mar 5 23:14:01 2010 (r204784) @@ -9,8 +9,8 @@ # csu must be built before all shared libaries for ELF. # libc must be built before all other shared libraries. # libbsm must be built before ibauditd. -# libcom_err must be built before libkrb5 and libpam. -# libcrypt must be built before libkrb5 and libpam. +# libcom_err must be built before libpam. +# libcrypt must be built before libpam. # libkvm must be built before libdevstat. # msun must be built before libg++ and libstdc++. # libmd must be built before libatm, libopie, libradius, and libtacplus. @@ -26,15 +26,16 @@ # libgssapi must be built before librpcsec_gss # # Otherwise, the SUBDIR list should be in alphabetical order. +# +# Except it appears bind needs to be compiled last -SUBDIR= ${_csu} libc libbsm libauditd libcom_err libcrypt libelf libkvm msun \ - libmd \ - ncurses ${_libnetgraph} libradius librpcsvc libsbuf \ - libtacplus libutil ${_libypclnt} libalias libarchive \ - ${_libatm} libbegemot ${_libbluetooth} ${_libbsnmp} libbz2 \ - libcalendar libcam libcompat libdevinfo libdevstat libdisk \ - libdwarf libedit ${_libefi} libexpat libfetch libftpio libgeom \ - ${_libgpib} ${_libgssapi} ${_librpcsec_gss} libipsec \ +SUBDIR= ${_csu} libc libbsm libauditd libcom_err libcrypt libelf libkvm \ + msun libmd ncurses ${_libnetgraph} libradius librpcsvc libsbuf \ + libtacplus libutil ${_libypclnt} +SUBDIR+=libalias libarchive ${_libatm} libbegemot ${_libbluetooth} \ + ${_libbsnmp} libbz2 libcalendar libcam libcompat libdevinfo \ + libdevstat libdisk libdwarf libedit ${_libefi} libexpat libfetch \ + libftpio libgeom ${_libgpib} ${_libgssapi} ${_librpcsec_gss} libipsec \ ${_libipx} libjail libkiconv libmagic libmemstat ${_libmilter} \ ${_libmp} ${_libncp} ${_libngatm} libopie libpam libpcap \ ${_libpmc} libproc librt ${_libsdp} ${_libsm} ${_libsmb} \ Modified: user/jmallett/octeon/lib/csu/Makefile.inc ============================================================================== --- user/jmallett/octeon/lib/csu/Makefile.inc Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/lib/csu/Makefile.inc Fri Mar 5 23:14:01 2010 (r204784) @@ -2,4 +2,4 @@ SSP_CFLAGS= -WARNS?= 6 +.include "../Makefile.inc" Modified: user/jmallett/octeon/lib/csu/amd64/crt1.c ============================================================================== --- user/jmallett/octeon/lib/csu/amd64/crt1.c Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/lib/csu/amd64/crt1.c Fri Mar 5 23:14:01 2010 (r204784) @@ -43,7 +43,6 @@ typedef void (*fptr)(void); extern void _fini(void); extern void _init(void); extern int main(int, char **, char **); -extern void _start(char **, void (*)(void)); #ifdef GCRT extern void _mcleanup(void); @@ -55,6 +54,8 @@ extern int etext; char **environ; const char *__progname = ""; +void _start(char **, void (*)(void)); + /* The entry function. */ void _start(char **ap, void (*cleanup)(void)) Modified: user/jmallett/octeon/lib/csu/arm/Makefile ============================================================================== --- user/jmallett/octeon/lib/csu/arm/Makefile Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/lib/csu/arm/Makefile Fri Mar 5 23:14:01 2010 (r204784) @@ -5,12 +5,9 @@ SRCS= crt1.c crti.S crtn.S OBJS= ${SRCS:N*.h:R:S/$/.o/g} OBJS+= Scrt1.o gcrt1.o -CFLAGS+= -Wall -Wno-unused \ - -I${.CURDIR}/../common \ +CFLAGS+= -I${.CURDIR}/../common \ -I${.CURDIR}/../../libc/include -WARNS?= 2 - all: ${OBJS} CLEANFILES= ${OBJS} Modified: user/jmallett/octeon/lib/csu/arm/crt1.c ============================================================================== --- user/jmallett/octeon/lib/csu/arm/crt1.c Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/lib/csu/arm/crt1.c Fri Mar 5 23:14:01 2010 (r204784) @@ -74,6 +74,9 @@ char **environ; const char *__progname = ""; struct ps_strings *__ps_strings; +void __start(int, char **, char **, struct ps_strings *, + const struct Struct_Obj_Entry *, void (*)(void)); + /* The entry function. */ __asm(" .text \n" " .align 0 \n" Modified: user/jmallett/octeon/lib/csu/ia64/Makefile ============================================================================== --- user/jmallett/octeon/lib/csu/ia64/Makefile Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/lib/csu/ia64/Makefile Fri Mar 5 23:14:01 2010 (r204784) @@ -5,8 +5,7 @@ SRCS= crt1.S crti.S crtn.S OBJS= ${SRCS:N*.h:R:S/$/.o/g} OBJS+= Scrt1.o gcrt1.o -CFLAGS+= -Wall -Wno-unused \ - -I${.CURDIR}/../common \ +CFLAGS+= -I${.CURDIR}/../common \ -I${.CURDIR}/../../libc/include all: ${OBJS} Modified: user/jmallett/octeon/lib/csu/mips/Makefile ============================================================================== --- user/jmallett/octeon/lib/csu/mips/Makefile Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/lib/csu/mips/Makefile Fri Mar 5 23:14:01 2010 (r204784) @@ -5,12 +5,9 @@ SRCS= crt1.c crti.S crtn.S OBJS= ${SRCS:N*.h:R:S/$/.o/g} OBJS+= Scrt1.o gcrt1.o -CFLAGS+= -Wall -Wno-unused \ - -I${.CURDIR}/../common \ +CFLAGS+= -I${.CURDIR}/../common \ -I${.CURDIR}/../../libc/include -WARNS?= 2 - all: ${OBJS} CLEANFILES= ${OBJS} Modified: user/jmallett/octeon/lib/csu/mips/crt1.c ============================================================================== --- user/jmallett/octeon/lib/csu/mips/crt1.c Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/lib/csu/mips/crt1.c Fri Mar 5 23:14:01 2010 (r204784) @@ -66,12 +66,14 @@ extern int etext; char **environ; const char *__progname = ""; +void __start(char **, void (*)(void), struct Struct_Obj_Entry *, struct ps_strings *); + /* The entry function. */ void __start(char **ap, void (*cleanup)(void), /* from shared loader */ - struct Struct_Obj_Entry *obj, /* from shared loader */ - struct ps_strings *ps_strings) + struct Struct_Obj_Entry *obj __unused, /* from shared loader */ + struct ps_strings *ps_strings __unused) { int argc; char **argv; Modified: user/jmallett/octeon/lib/csu/powerpc/Makefile ============================================================================== --- user/jmallett/octeon/lib/csu/powerpc/Makefile Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/lib/csu/powerpc/Makefile Fri Mar 5 23:14:01 2010 (r204784) @@ -5,8 +5,7 @@ SRCS= crt1.c crti.S crtn.S OBJS= ${SRCS:N*.h:R:S/$/.o/g} OBJS+= Scrt1.o gcrt1.o -CFLAGS+= -Wall -Wno-unused \ - -I${.CURDIR}/../common \ +CFLAGS+= -I${.CURDIR}/../common \ -I${.CURDIR}/../../libc/include all: ${OBJS} Modified: user/jmallett/octeon/lib/csu/powerpc/crt1.c ============================================================================== --- user/jmallett/octeon/lib/csu/powerpc/crt1.c Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/lib/csu/powerpc/crt1.c Fri Mar 5 23:14:01 2010 (r204784) @@ -59,8 +59,6 @@ extern int _DYNAMIC; extern void _fini(void); extern void _init(void); extern int main(int, char **, char **); -extern void _start(int, char **, char **, const struct Struct_Obj_Entry *, - void (*)(void), struct ps_strings *); #ifdef GCRT extern void _mcleanup(void); @@ -73,6 +71,9 @@ char **environ; const char *__progname = ""; struct ps_strings *__ps_strings; +void _start(int, char **, char **, const struct Struct_Obj_Entry *, + void (*)(void), struct ps_strings *); + /* The entry function. */ /* * First 5 arguments are specified by the PowerPC SVR4 ABI. Modified: user/jmallett/octeon/lib/csu/sparc64/crt1.c ============================================================================== --- user/jmallett/octeon/lib/csu/sparc64/crt1.c Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/lib/csu/sparc64/crt1.c Fri Mar 5 23:14:01 2010 (r204784) @@ -50,8 +50,6 @@ extern int _DYNAMIC; extern void _fini(void); extern void _init(void); extern int main(int, char **, char **); -extern void _start(char **, void (*)(void), struct Struct_Obj_Entry *, - struct ps_strings *); extern void __sparc_utrap_setup(void); #ifdef GCRT @@ -64,6 +62,9 @@ extern int etext; char **environ; const char *__progname = ""; +void _start(char **, void (*)(void), struct Struct_Obj_Entry *, + struct ps_strings *); + /* The entry function. */ /* * %o0 holds ps_strings pointer. Modified: user/jmallett/octeon/lib/libc/posix1e/acl_add_flag_np.3 ============================================================================== --- user/jmallett/octeon/lib/libc/posix1e/acl_add_flag_np.3 Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/lib/libc/posix1e/acl_add_flag_np.3 Fri Mar 5 23:14:01 2010 (r204784) @@ -14,14 +14,14 @@ .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 THE AUTHOR OR THE VOICES IN HIS HEAD 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. +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS 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. .\" .\" $FreeBSD$ .\" Modified: user/jmallett/octeon/lib/libc/posix1e/acl_clear_flags_np.3 ============================================================================== --- user/jmallett/octeon/lib/libc/posix1e/acl_clear_flags_np.3 Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/lib/libc/posix1e/acl_clear_flags_np.3 Fri Mar 5 23:14:01 2010 (r204784) @@ -14,14 +14,14 @@ .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 THE AUTHOR OR THE VOICES IN HIS HEAD 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. +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS 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. .\" .\" $FreeBSD$ .\" Modified: user/jmallett/octeon/lib/libc/posix1e/acl_delete_flag_np.3 ============================================================================== --- user/jmallett/octeon/lib/libc/posix1e/acl_delete_flag_np.3 Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/lib/libc/posix1e/acl_delete_flag_np.3 Fri Mar 5 23:14:01 2010 (r204784) @@ -14,14 +14,14 @@ .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 THE AUTHOR OR THE VOICES IN HIS HEAD 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. +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS 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. .\" .\" $FreeBSD$ .\" Modified: user/jmallett/octeon/lib/libc/posix1e/acl_get_brand_np.3 ============================================================================== --- user/jmallett/octeon/lib/libc/posix1e/acl_get_brand_np.3 Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/lib/libc/posix1e/acl_get_brand_np.3 Fri Mar 5 23:14:01 2010 (r204784) @@ -14,14 +14,14 @@ .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 THE AUTHOR OR THE VOICES IN HIS HEAD 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. +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS 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. .\" .\" $FreeBSD$ .\" Modified: user/jmallett/octeon/lib/libc/posix1e/acl_get_entry_type_np.3 ============================================================================== --- user/jmallett/octeon/lib/libc/posix1e/acl_get_entry_type_np.3 Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/lib/libc/posix1e/acl_get_entry_type_np.3 Fri Mar 5 23:14:01 2010 (r204784) @@ -14,14 +14,14 @@ .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 THE AUTHOR OR THE VOICES IN HIS HEAD 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. +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS 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. .\" .\" $FreeBSD$ .\" Modified: user/jmallett/octeon/lib/libc/posix1e/acl_get_flag_np.3 ============================================================================== --- user/jmallett/octeon/lib/libc/posix1e/acl_get_flag_np.3 Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/lib/libc/posix1e/acl_get_flag_np.3 Fri Mar 5 23:14:01 2010 (r204784) @@ -14,14 +14,14 @@ .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 THE AUTHOR OR THE VOICES IN HIS HEAD 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. +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS 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. .\" .\" $FreeBSD$ .\" Modified: user/jmallett/octeon/lib/libc/posix1e/acl_get_flagset_np.3 ============================================================================== --- user/jmallett/octeon/lib/libc/posix1e/acl_get_flagset_np.3 Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/lib/libc/posix1e/acl_get_flagset_np.3 Fri Mar 5 23:14:01 2010 (r204784) @@ -14,14 +14,14 @@ .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 THE AUTHOR OR THE VOICES IN HIS HEAD 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. +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS 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. .\" .\" $FreeBSD$ .\" Modified: user/jmallett/octeon/lib/libc/posix1e/acl_set_entry_type_np.3 ============================================================================== --- user/jmallett/octeon/lib/libc/posix1e/acl_set_entry_type_np.3 Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/lib/libc/posix1e/acl_set_entry_type_np.3 Fri Mar 5 23:14:01 2010 (r204784) @@ -14,14 +14,14 @@ .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 THE AUTHOR OR THE VOICES IN HIS HEAD 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. +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS 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. .\" .\" $FreeBSD$ .\" Modified: user/jmallett/octeon/lib/libc/posix1e/acl_set_flagset_np.3 ============================================================================== --- user/jmallett/octeon/lib/libc/posix1e/acl_set_flagset_np.3 Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/lib/libc/posix1e/acl_set_flagset_np.3 Fri Mar 5 23:14:01 2010 (r204784) @@ -14,14 +14,14 @@ .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 THE AUTHOR OR THE VOICES IN HIS HEAD 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. +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS 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. .\" .\" $FreeBSD$ .\" Modified: user/jmallett/octeon/lib/libsm/Makefile ============================================================================== --- user/jmallett/octeon/lib/libsm/Makefile Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/lib/libsm/Makefile Fri Mar 5 23:14:01 2010 (r204784) @@ -7,6 +7,7 @@ SENDMAIL_DIR=${.CURDIR}/../../contrib/se CFLAGS+=-I${SENDMAIL_DIR}/src -I${SENDMAIL_DIR}/include -I. CFLAGS+=-DNEWDB -DNIS -DMAP_REGEX -DNOT_SENDMAIL +CFLAGS+=-DHAVE_NANOSLEEP .if ${MK_INET6_SUPPORT} != "no" CFLAGS+=-DNETINET6 Modified: user/jmallett/octeon/libexec/rtld-elf/mips/reloc.c ============================================================================== --- user/jmallett/octeon/libexec/rtld-elf/mips/reloc.c Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/libexec/rtld-elf/mips/reloc.c Fri Mar 5 23:14:01 2010 (r204784) @@ -29,9 +29,7 @@ */ #include <sys/cdefs.h> -#ifndef lint -__RCSID("$NetBSD: mips_reloc.c,v 1.58 2010/01/14 11:57:06 skrll Exp $"); -#endif /* not lint */ +__FBSDID("$FreeBSD$"); #include <sys/types.h> #include <sys/stat.h> @@ -43,10 +41,6 @@ __RCSID("$NetBSD: mips_reloc.c,v 1.58 20 #include "debug.h" #include "rtld.h" -#ifdef __mips_o32 -#define SUPPORT_OLD_BROKEN_LD -#endif - void init_pltgot(Obj_Entry *obj) { @@ -70,7 +64,6 @@ void _rtld_relocate_nonplt_self(Elf_Dyn * It is possible for the compiler to emit relocations for unaligned data. * We handle this situation with these inlines. */ - #if ELFSIZE == 64 /* * ELF64 MIPS encodes the relocs uniquely. The first 32-bits of info contain @@ -135,7 +128,6 @@ store_ptr(void *where, Elf_Sxword val, s #endif } - void _rtld_relocate_nonplt_self(Elf_Dyn *dynp, Elf_Addr relocbase) { Modified: user/jmallett/octeon/libexec/rtld-elf/mips/rtld_start.S ============================================================================== --- user/jmallett/octeon/libexec/rtld-elf/mips/rtld_start.S Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/libexec/rtld-elf/mips/rtld_start.S Fri Mar 5 23:14:01 2010 (r204784) @@ -26,6 +26,8 @@ * 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. + * + * $FreeBSD$ */ #include <machine/asm.h> @@ -138,7 +140,7 @@ _rtld_bind_start: nop move sp, s0 - REG_L ra, XCALLFRAME_RA(sp) + REG_L ra, XCALLFRAME_RA(sp) REG_L s0, XCALLFRAME_S0(sp) REG_L a0, XCALLFRAME_A0(sp) REG_L a1, XCALLFRAME_A1(sp) Modified: user/jmallett/octeon/sbin/geom/class/cache/gcache.8 ============================================================================== --- user/jmallett/octeon/sbin/geom/class/cache/gcache.8 Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/sbin/geom/class/cache/gcache.8 Fri Mar 5 23:14:01 2010 (r204784) @@ -14,14 +14,14 @@ .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 THE AUTHOR OR THE VOICES IN HIS HEAD 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. +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS 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. .\" .\" $FreeBSD$ .\" Modified: user/jmallett/octeon/sbin/geom/class/mountver/gmountver.8 ============================================================================== --- user/jmallett/octeon/sbin/geom/class/mountver/gmountver.8 Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/sbin/geom/class/mountver/gmountver.8 Fri Mar 5 23:14:01 2010 (r204784) @@ -14,14 +14,14 @@ .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``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 THE AUTHOR OR THE VOICES IN HIS HEAD 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. +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS 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. .\" .\" $FreeBSD$ .\" Modified: user/jmallett/octeon/sbin/ipfw/dummynet.c ============================================================================== --- user/jmallett/octeon/sbin/ipfw/dummynet.c Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/sbin/ipfw/dummynet.c Fri Mar 5 23:14:01 2010 (r204784) @@ -10,8 +10,6 @@ * * This software is provided ``AS IS'' without any warranties of any kind. * - * NEW command line interface for IP firewall facility - * * $FreeBSD$ * * dummynet support @@ -1243,8 +1241,8 @@ dummynet_flush(void) void dummynet_list(int ac, char *av[], int show_counters) { - struct dn_id oid, *x; - int ret, l = sizeof(oid); + struct dn_id oid, *x = NULL; + int ret, i, l = sizeof(oid); oid_fill(&oid, l, DN_CMD_GET, DN_API_VERSION); switch (co.do_pipe) { @@ -1258,14 +1256,29 @@ dummynet_list(int ac, char *av[], int sh oid.subtype = DN_SCH; /* list sched */ break; } + + /* Request the buffer size (in oid.id)*/ ret = do_cmd(-IP_DUMMYNET3, &oid, (uintptr_t)&l); // printf("%s returns %d need %d\n", __FUNCTION__, ret, oid.id); if (ret != 0 || oid.id <= sizeof(oid)) return; - l = oid.id; - x = safe_calloc(1, l); + + /* Try max 10 times + * Buffer is correct if l != 0. + * If l == 0 no buffer is sent, maybe because kernel requires + * a greater buffer, so try with the new size in x->id. + */ + for (i = 0, l = oid.id; i < 10; i++, l = x->id) { + x = safe_realloc(x, l); *x = oid; ret = do_cmd(-IP_DUMMYNET3, x, (uintptr_t)&l); + + if (ret != 0 || x->id <= sizeof(oid)) + return; + + if (l != 0) + break; /* ok */ + } // printf("%s returns %d need %d\n", __FUNCTION__, ret, oid.id); // XXX filter on ac, av list_pipes(x, O_NEXT(x, l)); Modified: user/jmallett/octeon/sbin/ipfw/ipfw.8 ============================================================================== --- user/jmallett/octeon/sbin/ipfw/ipfw.8 Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/sbin/ipfw/ipfw.8 Fri Mar 5 23:14:01 2010 (r204784) @@ -1404,7 +1404,7 @@ If not found, the match fails. Otherwise, the match succeeds and .Cm tablearg is set to the value extracted from the table. -.Br +.Pp This option can be useful to quickly dispatch traffic based on certain packet fields. See the @@ -1847,7 +1847,7 @@ is also the user interface for the .Nm dummynet traffic shaper, packet scheduler and network emulator, a subsystem that can artificially queue, delay or drop packets -emulator the behaviour of certain network links +emulating the behaviour of certain network links or queueing systems. .Pp .Nm dummynet @@ -1859,26 +1859,33 @@ Matching packets are then passed to eith different objects, which implement the traffic regulation: .Bl -hang -offset XXXX .It Em pipe -A pipe emulates a link with given bandwidth, propagation delay, +A +.Em pipe +emulates a +.Em link +with given bandwidth and propagation delay, +driven by a FIFO scheduler and a single queue with programmable queue size and packet loss rate. -Packets are queued in front of the pipe as they come out from the classifier, -and then transferred to the pipe according to the pipe's parameters. +Packets are appended to the queue as they come out from +.Nm ipfw , +and then transferred in FIFO order to the link at the desired rate. .It Em queue -A queue +A +.Em queue is an abstraction used to implement packet scheduling using one of several packet scheduling algorithms. -.Pp -The queue associates a -.Em weight -and a reference scheduler to each flow (a flow is a set of packets -with the same addresses and ports after masking). -A scheduler in turn is connected to a pipe, and arbitrates -the pipe's bandwidth among backlogged flows according to +Packets sent to a +.Em queue +are first grouped into flows according to a mask on the 5-tuple. +Flows are then passed to the scheduler associated to the +.Em queue , +and each flow uses scheduling parameters (weight and others) +as configured in the +.Em queue +itself. +A scheduler in turn is connected to an emulated link, +and arbitrates the link's bandwidth among backlogged flows according to weights and to the features of the scheduling algorithm in use. -.Pp -Note that weights are not priorities; a flow with a lower weight -is still guaranteed to get its fraction of the bandwidth even if a -flow with a higher weight is permanently backlogged. .El .Pp In practice, @@ -1887,6 +1894,52 @@ can be used to set hard limits to the ba .Em queues can be used to determine how different flows share the available bandwidth. .Pp +A graphical representation of the binding of queues, +flows, schedulers and links is below. +.Bd -literal -offset indent + (flow_mask|sched_mask) sched_mask + +---------+ weight Wx +-------------+ + | |->-[flow]-->--| |-+ + -->--| QUEUE x | ... | | | + | |->-[flow]-->--| SCHEDuler N | | + +---------+ | | | + ... | +--[LINK N]-->-- + +---------+ weight Wy | | +--[LINK N]-->-- + | |->-[flow]-->--| | | + -->--| QUEUE y | ... | | | + | |->-[flow]-->--| | | + +---------+ +-------------+ | + +-------------+ +.Ed +It is important to understand the role of the SCHED_MASK +and FLOW_MASK, which are configured through the commands +.Dl "ipfw sched N config mask SCHED_MASK ..." +and +.Dl "ipfw queue X config mask FLOW_MASK ..." . +.Pp +The SCHED_MASK is used to assign flows to one or more +scheduler instances, one for each +value of the packet's 5-fuple after applying SCHED_MASK. +As an example, using ``src-ip 0xffffff00'' creates one instance +for each /24 destination subnet. +.Pp +The FLOW_MASK, together with the SCHED_MASK, is used to split +packets into flows. As an example, using +``src-ip 0x000000ff'' +together with the previous SCHED_MASK makes a flow for +each individual source address. In turn, flows for each /24 +subnet will be sent to the same scheduler instance. +.Pp +The above diagram holds even for the +.Em pipe +case, with the only restriction that a +.Em pipe +only supports a SCHED_MASK, and forces the use of a FIFO +scheduler (these are for backward compatibility reasons; +in fact, internally, a +.Nm dummynet's +pipe is implemented exactly as above). +.Pp There are two modes of .Nm dummynet operation: @@ -2087,9 +2140,36 @@ The following parameters can be configur .Pp .Bl -tag -width indent -compact .It Cm type Ar {fifo | wf2qp | rr | qfq} +specifies the scheduling algorithm to use. +.Bl -tag -width indent -compact +.It cm fifo +is just a FIFO scheduler (which means that all packets +are stored in the same queue as they arrive to the scheduler). +FIFO has O(1) per-packet time complexity, with very low +constants (estimate 60-80ns on a 2Ghz desktop machine) +but gives no service guarantees. +.It Cm wf2qp +implements the WF2Q+ algorithm, which is a Weighted Fair Queueing +algorithm which permits flows to share bandwidth according to +their weights. Note that weights are not priorities; even a flow +with a minuscule weight will never starve. +WF2Q+ has O(log N) per-packet processing cost, where N is the number +of flows, and is the default algorithm used by previous versions +dummynet's queues. +.It Cm rr +implements the Deficit Round Robin algorithm, which has O(1) processing +costs (roughly, 100-150ns per packet) +and permits bandwidth allocation according to weights, but +with poor service guarantees. +.It Cm qfq +implements the QFQ algorithm, which is a very fast variant of +WF2Q+, with similar service guarantees and O(1) processing +costs (roughly, 200-250ns per packet). +.El .El .Pp -plus all the parameters allowed for a pipe. +In addition to the type, all parameters allowed for a pipe can also +be specified for a scheduler. .Pp Finally, the following parameters can be configured for both pipes and queues: Modified: user/jmallett/octeon/sbin/ipfw/ipfw2.c ============================================================================== --- user/jmallett/octeon/sbin/ipfw/ipfw2.c Fri Mar 5 23:08:19 2010 (r204783) +++ user/jmallett/octeon/sbin/ipfw/ipfw2.c Fri Mar 5 23:14:01 2010 (r204784) @@ -1625,13 +1625,21 @@ ipfw_sets_handler(char *av[]) if (av[0] == NULL) errx(EX_USAGE, "set needs command"); if (_substrcmp(*av, "show") == 0) { - void *data; + void *data = NULL; char const *msg; + int nalloc; - nbytes = sizeof(struct ip_fw); + nalloc = nbytes = sizeof(struct ip_fw); + while (nbytes >= nalloc) { + if (data) + free(data); *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201003052314.o25NE1Cx041951>