Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 3 Dec 2013 18:50:27 +0000 (UTC)
From:      Mark Murray <markm@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r258881 - in projects/random_number_generator: . cddl/contrib/opensolaris/lib/libdtrace/common contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD contrib/mdocml etc etc/cas...
Message-ID:  <201312031850.rB3IoRKl042696@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: markm
Date: Tue Dec  3 18:50:27 2013
New Revision: 258881
URL: http://svnweb.freebsd.org/changeset/base/258881

Log:
  MFC - tracking commit.

Added:
  projects/random_number_generator/etc/casper/
     - copied from r258880, head/etc/casper/
  projects/random_number_generator/lib/libcapsicum/
     - copied from r258880, head/lib/libcapsicum/
  projects/random_number_generator/lib/libcasper/
     - copied from r258880, head/lib/libcasper/
  projects/random_number_generator/libexec/casper/
     - copied from r258880, head/libexec/casper/
  projects/random_number_generator/sbin/casperd/
     - copied from r258880, head/sbin/casperd/
  projects/random_number_generator/sys/sys/ktr_class.h
     - copied unchanged from r258880, head/sys/sys/ktr_class.h
  projects/random_number_generator/tools/build/options/WITHOUT_CASPER
     - copied unchanged from r258880, head/tools/build/options/WITHOUT_CASPER
  projects/random_number_generator/tools/regression/capsicum/libcapsicum/
     - copied from r258880, head/tools/regression/capsicum/libcapsicum/
Modified:
  projects/random_number_generator/Makefile.inc1
  projects/random_number_generator/ObsoleteFiles.inc
  projects/random_number_generator/cddl/contrib/opensolaris/lib/libdtrace/common/dt_link.c
  projects/random_number_generator/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
  projects/random_number_generator/contrib/mdocml/lib.in
  projects/random_number_generator/etc/Makefile
  projects/random_number_generator/etc/gettytab
  projects/random_number_generator/etc/mtree/BSD.root.dist
  projects/random_number_generator/etc/pf.os
  projects/random_number_generator/etc/services
  projects/random_number_generator/lib/Makefile
  projects/random_number_generator/libexec/Makefile
  projects/random_number_generator/release/Makefile
  projects/random_number_generator/release/scripts/pkg-stage.sh
  projects/random_number_generator/sbin/Makefile
  projects/random_number_generator/share/man/man7/release.7
  projects/random_number_generator/share/mk/bsd.libnames.mk
  projects/random_number_generator/share/mk/bsd.own.mk
  projects/random_number_generator/sys/amd64/include/vmm.h   (contents, props changed)
  projects/random_number_generator/sys/amd64/vmm/intel/vmx.c
  projects/random_number_generator/sys/amd64/vmm/vmm.c
  projects/random_number_generator/sys/amd64/vmm/vmm_lapic.c
  projects/random_number_generator/sys/arm/arm/locore.S
  projects/random_number_generator/sys/cam/ctl/ctl_backend_block.c
  projects/random_number_generator/sys/dev/cxgbe/common/common.h
  projects/random_number_generator/sys/dev/cxgbe/common/t4_hw.c
  projects/random_number_generator/sys/dev/cxgbe/t4_ioctl.h
  projects/random_number_generator/sys/dev/cxgbe/t4_main.c
  projects/random_number_generator/sys/dev/usb/wlan/if_run.c
  projects/random_number_generator/sys/dev/usb/wlan/if_runvar.h
  projects/random_number_generator/sys/kern/sched_ule.c
  projects/random_number_generator/sys/powerpc/include/fdt.h
  projects/random_number_generator/sys/powerpc/wii/platform_wii.c
  projects/random_number_generator/sys/sys/ktr.h
  projects/random_number_generator/sys/sys/lock.h
  projects/random_number_generator/usr.sbin/bhyveload/bhyveload.8
  projects/random_number_generator/usr.sbin/bsdconfig/share/common.subr
  projects/random_number_generator/usr.sbin/ctld/ctl.conf.5
  projects/random_number_generator/usr.sbin/ctld/parse.y
Directory Properties:
  projects/random_number_generator/   (props changed)
  projects/random_number_generator/cddl/   (props changed)
  projects/random_number_generator/cddl/contrib/opensolaris/   (props changed)
  projects/random_number_generator/contrib/llvm/   (props changed)
  projects/random_number_generator/contrib/llvm/tools/lldb/   (props changed)
  projects/random_number_generator/sbin/   (props changed)
  projects/random_number_generator/sys/   (props changed)
  projects/random_number_generator/sys/amd64/vmm/   (props changed)
  projects/random_number_generator/usr.sbin/bhyveload/   (props changed)

Modified: projects/random_number_generator/Makefile.inc1
==============================================================================
--- projects/random_number_generator/Makefile.inc1	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/Makefile.inc1	Tue Dec  3 18:50:27 2013	(r258881)
@@ -1499,7 +1499,8 @@ _prebuild_libs=	${_kerberos5_lib_libasn1
 		lib/libbz2 ${_libcom_err} lib/libcrypt \
 		lib/libelf lib/libexpat \
 		${_lib_libgssapi} ${_lib_libipx} \
-		lib/libkiconv lib/libkvm lib/liblzma lib/libmd \
+		lib/libkiconv lib/libkvm lib/liblzma lib/libmd lib/libnv \
+		${_lib_libcapsicum} \
 		lib/ncurses/ncurses lib/ncurses/ncursesw \
 		lib/libopie lib/libpam ${_lib_libthr} \
 		lib/libradius lib/libsbuf lib/libtacplus \
@@ -1521,6 +1522,11 @@ _lib_libthr=	lib/libthr
 _ofed_lib=	contrib/ofed/usr.lib/
 .endif
 
+.if ${MK_CASPER} != "no"
+_lib_libcapsicum=lib/libcapsicum
+.endif
+
+lib/libcapsicum__L: lib/libnv__L
 lib/libpjdlog__L: lib/libutil__L
 
 _generic_libs=	${_cddl_lib} gnu/lib ${_kerberos5_lib} lib ${_secure_lib} usr.bin/lex/lib ${_ofed_lib}

Modified: projects/random_number_generator/ObsoleteFiles.inc
==============================================================================
--- projects/random_number_generator/ObsoleteFiles.inc	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/ObsoleteFiles.inc	Tue Dec  3 18:50:27 2013	(r258881)
@@ -38,6 +38,13 @@
 #   xargs -n1 | sort | uniq -d;
 # done
 
+# 20131202: libcapsicum and libcasper moved to /lib/
+OLD_FILES+=usr/lib/libcapsicum.a
+OLD_FILES+=usr/lib/libcapsicum.so
+OLD_LIBS+=usr/lib/libcapsicum.so.0
+OLD_FILES+=usr/lib/libcasper.a
+OLD_FILES+=usr/lib/libcasper.so
+OLD_LIBS+=usr/lib/libcasper.so.0
 # 20131109: extattr(2) mlinks fixed
 OLD_FILES+=usr/share/man/man2/extattr_delete_list.2.gz
 OLD_FILES+=usr/share/man/man2/extattr_get_list.2.gz

Modified: projects/random_number_generator/cddl/contrib/opensolaris/lib/libdtrace/common/dt_link.c
==============================================================================
--- projects/random_number_generator/cddl/contrib/opensolaris/lib/libdtrace/common/dt_link.c	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/cddl/contrib/opensolaris/lib/libdtrace/common/dt_link.c	Tue Dec  3 18:50:27 2013	(r258881)
@@ -1709,8 +1709,6 @@ dtrace_program_link(dtrace_hdl_t *dtp, d
 		 */
 		return (0);
 	}
-	/* XXX Should get a temp file name here. */
-	snprintf(tfile, sizeof(tfile), "%s.tmp", file);
 #endif
 
 	/*
@@ -1785,9 +1783,11 @@ dtrace_program_link(dtrace_hdl_t *dtp, d
 		    "failed to open %s: %s", file, strerror(errno)));
 	}
 #else
-	if ((fd = open(tfile, O_RDWR | O_CREAT | O_TRUNC, 0666)) == -1)
+	snprintf(tfile, sizeof(tfile), "%s.XXXXXX", file);
+	if ((fd = mkstemp(tfile)) == -1)
 		return (dt_link_error(dtp, NULL, -1, NULL,
-		    "failed to open %s: %s", tfile, strerror(errno)));
+		    "failed to create temporary file %s: %s",
+		    tfile, strerror(errno)));
 #endif
 
 	/*
@@ -1830,13 +1830,15 @@ dtrace_program_link(dtrace_hdl_t *dtp, d
 		status = dump_elf32(dtp, dof, fd);
 
 	if (status != 0 || lseek(fd, 0, SEEK_SET) != 0) {
-#else
-	/* We don't write the ELF header, just the DOF section */
-	if (dt_write(dtp, fd, dof, dof->dofh_filesz) < dof->dofh_filesz) {
-#endif
 		return (dt_link_error(dtp, NULL, -1, NULL,
 		    "failed to write %s: %s", file, strerror(errno)));
 	}
+#else
+	/* We don't write the ELF header, just the DOF section */
+	if (dt_write(dtp, fd, dof, dof->dofh_filesz) < dof->dofh_filesz)
+		return (dt_link_error(dtp, NULL, -1, NULL,
+		    "failed to write %s: %s", tfile, strerror(errno)));
+#endif
 
 	if (!dtp->dt_lazyload) {
 #if defined(sun)

Modified: projects/random_number_generator/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
==============================================================================
--- projects/random_number_generator/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp	Tue Dec  3 18:50:27 2013	(r258881)
@@ -454,6 +454,17 @@ DynamicLoaderPOSIXDYLD::LoadAllCurrentMo
         const char *module_path = I->path.c_str();
         FileSpec file(module_path, false);
         ModuleSP module_sp = LoadModuleAtAddress(file, I->link_addr, I->base_addr);
+#ifdef __FreeBSD__ // llvm.org/pr17880
+        if (module_sp == executable)
+        {
+            Log *log(GetLogIfAnyCategoriesSet(LIBLLDB_LOG_DYNAMIC_LOADER));
+            if (log)
+                log->Printf("DynamicLoaderPOSIXDYLD::%s reloading main module, ignoring rendezvous base addr %" PRIx64,
+                            __FUNCTION__, I->base_addr);
+            ModuleSP module_sp = LoadModuleAtAddress(file, I->link_addr, 0);
+        }
+#endif
+ 
         if (module_sp.get())
         {
             module_list.Append(module_sp);

Modified: projects/random_number_generator/contrib/mdocml/lib.in
==============================================================================
--- projects/random_number_generator/contrib/mdocml/lib.in	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/contrib/mdocml/lib.in	Tue Dec  3 18:50:27 2013	(r258881)
@@ -32,6 +32,7 @@ LINE("libc",		"Standard C\\~Library (lib
 LINE("libc_r",		"Reentrant C\\~Library (libc_r, \\-lc_r)")
 LINE("libcalendar",	"Calendar Arithmetic Library (libcalendar, \\-lcalendar)")
 LINE("libcam",		"Common Access Method User Library (libcam, \\-lcam)")
+LINE("libcapsicum",	"Capsicum Library (libcapsicum, \\-lcapsicum)")
 LINE("libcdk",		"Curses Development Kit Library (libcdk, \\-lcdk)")
 LINE("libcipher",	"FreeSec Crypt Library (libcipher, \\-lcipher)")
 LINE("libcompat",	"Compatibility Library (libcompat, \\-lcompat)")

Modified: projects/random_number_generator/etc/Makefile
==============================================================================
--- projects/random_number_generator/etc/Makefile	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/etc/Makefile	Tue Dec  3 18:50:27 2013	(r258881)
@@ -221,6 +221,9 @@ distribution:
 .if ${MK_BLUETOOTH} != "no"
 	${_+_}cd ${.CURDIR}/bluetooth; ${MAKE} install
 .endif
+.if ${MK_CASPER} != "no"
+	${_+_}cd ${.CURDIR}/casper; ${MAKE} install
+.endif
 	${_+_}cd ${.CURDIR}/defaults; ${MAKE} install
 	${_+_}cd ${.CURDIR}/devd; ${MAKE} install
 	${_+_}cd ${.CURDIR}/gss; ${MAKE} install

Modified: projects/random_number_generator/etc/gettytab
==============================================================================
--- projects/random_number_generator/etc/gettytab	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/etc/gettytab	Tue Dec  3 18:50:27 2013	(r258881)
@@ -214,6 +214,8 @@ al.115200:\
 	:al=root:tc=std.115200:
 al.230400:\
 	:al=root:tc=std.230400:
+al.Pc:\
+	:al=root:tc=Pc
 
 #
 # Entries for 3-wire serial terminals.  These don't supply carrier, so

Modified: projects/random_number_generator/etc/mtree/BSD.root.dist
==============================================================================
--- projects/random_number_generator/etc/mtree/BSD.root.dist	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/etc/mtree/BSD.root.dist	Tue Dec  3 18:50:27 2013	(r258881)
@@ -26,6 +26,8 @@
         ..
         bluetooth
         ..
+        casper
+        ..
         defaults
         ..
         devd
@@ -74,6 +76,8 @@
         ..
     ..
     libexec
+        casper
+        ..
         resolvconf
         ..
     ..

Modified: projects/random_number_generator/etc/pf.os
==============================================================================
--- projects/random_number_generator/etc/pf.os	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/etc/pf.os	Tue Dec  3 18:50:27 2013	(r258881)
@@ -315,6 +315,14 @@ S22:64:1:52:M*,N,N,S,N,W0:	Linux:2.2:ts:
 16384:64:1:64:M*,N,N,S,N,W3,N,N,T:	OpenBSD:4.9::OpenBSD 4.9
 16384:64:0:64:M*,N,N,S,N,W3,N,N,T:	OpenBSD:4.9:no-df:OpenBSD 4.9 (scrub no-df)
 
+# ----------------- DragonFly BSD -----------------
+
+57344:64:1:60:M*,N,W0,N,N,T:		DragonFly:1.0:A:DragonFly 1.0A
+57344:64:0:64:M*,N,W0,N,N,S,N,N,T:	DragonFly:1.2-1.12::DragonFly 1.2-1.12
+5840:64:1:60:M*,S,T,N,W4:			DragonFly:2.0-2.1::DragonFly 2.0-2.1
+57344:64:0:64:M*,N,W0,N,N,S,N,N,T:	DragonFly:2.2-2.3::DragonFly 2.2-2.3
+57344:64:0:64:M*,N,W5,N,N,S,N,N,T:	DragonFly:2.4-2.7::DragonFly 2.4-2.7
+
 # ----------------- Solaris -----------------
 
 S17:64:1:64:N,W3,N,N,T0,N,N,S,M*:	Solaris:8:RFC1323:Solaris 8 RFC1323

Modified: projects/random_number_generator/etc/services
==============================================================================
--- projects/random_number_generator/etc/services	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/etc/services	Tue Dec  3 18:50:27 2013	(r258881)
@@ -2192,6 +2192,8 @@ ospf6d		2606/tcp   #OSPF6d vty
 dict		2628/tcp   #RFC 2229
 dict		2628/udp   #RFC 2229
 listen		2766/tcp   #System V listener port
+smpp		2775/tcp   #SMPP
+smpp		2775/udp   #SMPP
 www-dev		2784/tcp   #world wide web - development
 www-dev		2784/udp   #world wide web - development
 m2ua		2904/sctp  #M2UA
@@ -2462,6 +2464,8 @@ amidxtape	10083/tcp  #Amanda tape indexi
 wmereceiving	11997/sctp #WorldMailExpress
 wmedistribution	11998/sctp #WorldMailExpress
 wmereporting	11999/sctp #WorldMailExpress
+bpcd		13782/tcp  #Veritas NetBackup
+bpcd		13782/udp  #Veritas NetBackup
 sua		14001/sctp #SUA
 sua		14001/tcp  #SUA
 isode-dua	17007/tcp

Modified: projects/random_number_generator/lib/Makefile
==============================================================================
--- projects/random_number_generator/lib/Makefile	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/lib/Makefile	Tue Dec  3 18:50:27 2013	(r258881)
@@ -37,6 +37,8 @@ SUBDIR_ORDERED=	${_csu} \
 	libauditd \
 	libutil \
 	libpjdlog \
+	libnv \
+	${_libcapsicum} \
 	libcompiler_rt \
 	libcrypt \
 	libelf \
@@ -70,6 +72,7 @@ SUBDIR=	${SUBDIR_ORDERED} \
 	libbz2 \
 	libcalendar \
 	libcam \
+	${_libcasper} \
 	libcompat \
 	libdevinfo \
 	libdevstat \
@@ -157,6 +160,11 @@ _libsdp=	libsdp
 _libbsnmp=	libbsnmp
 .endif
 
+.if ${MK_CASPER} != "no"
+_libcapsicum=	libcapsicum
+_libcasper=	libcasper
+.endif
+
 .if ${MK_CLANG} != "no" && !defined(COMPAT_32BIT)
 _clang=		clang
 .endif

Modified: projects/random_number_generator/libexec/Makefile
==============================================================================
--- projects/random_number_generator/libexec/Makefile	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/libexec/Makefile	Tue Dec  3 18:50:27 2013	(r258881)
@@ -6,6 +6,7 @@
 SUBDIR=	${_atf} \
 	${_atrun} \
 	bootpd \
+	${_casper} \
 	${_comsat} \
 	fingerd \
 	ftpd \
@@ -38,6 +39,10 @@ SUBDIR=	${_atf} \
 _atrun=		atrun
 .endif
 
+.if ${MK_CASPER} != "no"
+_casper=	casper
+.endif
+
 .if ${MK_MAIL} != "no"
 _comsat=	comsat
 .endif

Modified: projects/random_number_generator/release/Makefile
==============================================================================
--- projects/random_number_generator/release/Makefile	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/release/Makefile	Tue Dec  3 18:50:27 2013	(r258881)
@@ -20,7 +20,7 @@
 #  NOPORTS:  if set, do not distribute ports tree
 #  NOSRC:    if set, do not distribute source tree
 #  NODOC:    if set, do not generate release documentation
-#  NODVD:    if set, do not generate dvd1.iso
+#  WITH_DVD: if set, generate dvd1.iso
 #  TARGET/TARGET_ARCH: architecture of built release 
 #
 
@@ -79,7 +79,7 @@ IMAGES=
 .if exists(${.CURDIR}/${TARGET}/mkisoimages.sh)
 RELEASE_TARGETS+= cdrom
 IMAGES+=	disc1.iso bootonly.iso
-. if !defined(NODVD)
+. if defined(WITH_DVD)
 RELEASE_TARGETS+= dvdrom
 IMAGES+=	dvd1.iso
 . endif

Modified: projects/random_number_generator/release/scripts/pkg-stage.sh
==============================================================================
--- projects/random_number_generator/release/scripts/pkg-stage.sh	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/release/scripts/pkg-stage.sh	Tue Dec  3 18:50:27 2013	(r258881)
@@ -25,7 +25,7 @@ REVISION="${2}"
 . "${1}" || exit 1
 
 if [ ! -x /usr/local/sbin/pkg ]; then
-	/usr/sbin/pkg bootstrap	
+	/usr/bin/make -C /usr/ports/ports-mgmt/pkg install clean
 fi
 
 /bin/mkdir -p ${PKG_CACHEDIR}

Modified: projects/random_number_generator/sbin/Makefile
==============================================================================
--- projects/random_number_generator/sbin/Makefile	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/sbin/Makefile	Tue Dec  3 18:50:27 2013	(r258881)
@@ -78,6 +78,10 @@ SUBDIR=adjkerntz \
 SUBDIR+=	atm
 .endif
 
+.if ${MK_CASPER} != "no"
+SUBDIR+=	casperd
+.endif
+
 .if ${MK_CXX} != "no"
 SUBDIR+=	devd
 .endif

Modified: projects/random_number_generator/share/man/man7/release.7
==============================================================================
--- projects/random_number_generator/share/man/man7/release.7	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/share/man/man7/release.7	Tue Dec  3 18:50:27 2013	(r258881)
@@ -24,7 +24,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd November 18, 2013
+.Dd December 2, 2013
 .Dt RELEASE 7
 .Os
 .Sh NAME
@@ -230,10 +230,6 @@ When set,
 will prevent the
 .Fa doc.txz
 distribution package from being created.
-.It Va NODVD
-Set to a non-empty value to skip the
-.Cm dvdrom
-target.
 .It Va NOPORTS
 Set to a non-empty value to skip the
 .Li ports/
@@ -245,6 +241,10 @@ will prevent the
 distribution package from being created.
 Setting this also sets
 .Va NODOC .
+.It Va WITH_DVD
+Set to a non-empty value to include the
+.Cm dvdrom
+target.
 .El
 .Sh MAKEFILE TARGETS
 The release makefile

Modified: projects/random_number_generator/share/mk/bsd.libnames.mk
==============================================================================
--- projects/random_number_generator/share/mk/bsd.libnames.mk	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/share/mk/bsd.libnames.mk	Tue Dec  3 18:50:27 2013	(r258881)
@@ -32,6 +32,8 @@ LIBC?=		${DESTDIR}${LIBDIR}/libc.a
 LIBC_PIC?=	${DESTDIR}${LIBDIR}/libc_pic.a
 LIBCALENDAR?=	${DESTDIR}${LIBDIR}/libcalendar.a
 LIBCAM?=	${DESTDIR}${LIBDIR}/libcam.a
+LIBCAPSICUM?=	${DESTDIR}${LIBDIR}/libcapsicum.a
+LIBCASPER?=	${DESTDIR}${LIBDIR}/libcasper.a
 LIBCOM_ERR?=	${DESTDIR}${LIBDIR}/libcom_err.a
 LIBCOMPAT?=	${DESTDIR}${LIBDIR}/libcompat.a
 LIBCRYPT?=	${DESTDIR}${LIBDIR}/libcrypt.a

Modified: projects/random_number_generator/share/mk/bsd.own.mk
==============================================================================
--- projects/random_number_generator/share/mk/bsd.own.mk	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/share/mk/bsd.own.mk	Tue Dec  3 18:50:27 2013	(r258881)
@@ -264,6 +264,7 @@ __DEFAULT_YES_OPTIONS = \
     BZIP2 \
     CALENDAR \
     CAPSICUM \
+    CASPER \
     CDDL \
     CPP \
     CROSS_COMPILER \

Modified: projects/random_number_generator/sys/amd64/include/vmm.h
==============================================================================
--- projects/random_number_generator/sys/amd64/include/vmm.h	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/sys/amd64/include/vmm.h	Tue Dec  3 18:50:27 2013	(r258881)
@@ -156,7 +156,7 @@ vcpu_is_running(struct vm *vm, int vcpu,
 }
 
 void *vcpu_stats(struct vm *vm, int vcpu);
-void vm_interrupt_hostcpu(struct vm *vm, int vcpu);
+void vcpu_notify_event(struct vm *vm, int vcpuid);
 struct vmspace *vm_get_vmspace(struct vm *vm);
 int vm_assign_pptdev(struct vm *vm, int bus, int slot, int func);
 int vm_unassign_pptdev(struct vm *vm, int bus, int slot, int func);
@@ -283,7 +283,6 @@ struct vm_exit {
 		struct {
 			uint64_t	gpa;
 			int		fault_type;
-			int		protection;
 		} paging;
 		struct {
 			uint64_t	gpa;

Modified: projects/random_number_generator/sys/amd64/vmm/intel/vmx.c
==============================================================================
--- projects/random_number_generator/sys/amd64/vmm/intel/vmx.c	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/sys/amd64/vmm/intel/vmx.c	Tue Dec  3 18:50:27 2013	(r258881)
@@ -1301,21 +1301,6 @@ ept_fault_type(uint64_t ept_qual)
 	return (fault_type);
 }
 
-static int
-ept_protection(uint64_t ept_qual)
-{
-	int prot = 0;
-
-	if (ept_qual & EPT_VIOLATION_GPA_READABLE)
-		prot |= VM_PROT_READ;
-	if (ept_qual & EPT_VIOLATION_GPA_WRITEABLE)
-		prot |= VM_PROT_WRITE;
-	if (ept_qual & EPT_VIOLATION_GPA_EXECUTABLE)
-		prot |= VM_PROT_EXECUTE;
-
-	return (prot);
-}
-
 static boolean_t
 ept_emulation_fault(uint64_t ept_qual)
 {
@@ -1485,7 +1470,6 @@ vmx_exit_process(struct vmx *vmx, int vc
 			vmexit->exitcode = VM_EXITCODE_PAGING;
 			vmexit->u.paging.gpa = gpa;
 			vmexit->u.paging.fault_type = ept_fault_type(qual);
-			vmexit->u.paging.protection = ept_protection(qual);
 		} else if (ept_emulation_fault(qual)) {
 			vmexit->exitcode = VM_EXITCODE_INST_EMUL;
 			vmexit->u.inst_emul.gpa = gpa;

Modified: projects/random_number_generator/sys/amd64/vmm/vmm.c
==============================================================================
--- projects/random_number_generator/sys/amd64/vmm/vmm.c	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/sys/amd64/vmm/vmm.c	Tue Dec  3 18:50:27 2013	(r258881)
@@ -1099,7 +1099,7 @@ vm_inject_nmi(struct vm *vm, int vcpuid)
 	vcpu = &vm->vcpu[vcpuid];
 
 	vcpu->nmi_pending = 1;
-	vm_interrupt_hostcpu(vm, vcpuid);
+	vcpu_notify_event(vm, vcpuid);
 	return (0);
 }
 
@@ -1319,8 +1319,15 @@ vm_set_x2apic_state(struct vm *vm, int v
 	return (0);
 }
 
+/*
+ * This function is called to ensure that a vcpu "sees" a pending event
+ * as soon as possible:
+ * - If the vcpu thread is sleeping then it is woken up.
+ * - If the vcpu is running on a different host_cpu then an IPI will be directed
+ *   to the host_cpu to cause the vcpu to trap into the hypervisor.
+ */
 void
-vm_interrupt_hostcpu(struct vm *vm, int vcpuid)
+vcpu_notify_event(struct vm *vm, int vcpuid)
 {
 	int hostcpu;
 	struct vcpu *vcpu;

Modified: projects/random_number_generator/sys/amd64/vmm/vmm_lapic.c
==============================================================================
--- projects/random_number_generator/sys/amd64/vmm/vmm_lapic.c	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/sys/amd64/vmm/vmm_lapic.c	Tue Dec  3 18:50:27 2013	(r258881)
@@ -75,7 +75,7 @@ lapic_set_intr(struct vm *vm, int cpu, i
 	vlapic = vm_lapic(vm, cpu);
 	vlapic_set_intr_ready(vlapic, vector, level);
 
-	vm_interrupt_hostcpu(vm, cpu);
+	vcpu_notify_event(vm, cpu);
 
 	return (0);
 }

Modified: projects/random_number_generator/sys/arm/arm/locore.S
==============================================================================
--- projects/random_number_generator/sys/arm/arm/locore.S	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/sys/arm/arm/locore.S	Tue Dec  3 18:50:27 2013	(r258881)
@@ -391,6 +391,7 @@ Ltag:
 	mrc	p15, 0, r0, c1, c0, 0
 #if defined(CPU_ARM1136) || defined(CPU_ARM1176) || defined(CPU_MV_PJ4B) || defined(CPU_CORTEXA)
 	orr	r0, r0, #CPU_CONTROL_V6_EXTPAGE
+	orr	r0, r0, #CPU_CONTROL_AF_ENABLE
 #endif
 	orr	r0, r0, #(CPU_CONTROL_MMU_ENABLE | CPU_CONTROL_DC_ENABLE)
 	mcr	p15, 0, r0, c1, c0, 0

Modified: projects/random_number_generator/sys/cam/ctl/ctl_backend_block.c
==============================================================================
--- projects/random_number_generator/sys/cam/ctl/ctl_backend_block.c	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/sys/cam/ctl/ctl_backend_block.c	Tue Dec  3 18:50:27 2013	(r258881)
@@ -1483,6 +1483,7 @@ ctl_be_block_close(struct ctl_be_block_l
 		case CTL_BE_BLOCK_FILE:
 			break;
 		case CTL_BE_BLOCK_NONE:
+			break;
 		default:
 			panic("Unexpected backend type.");
 			break;
@@ -1501,6 +1502,7 @@ ctl_be_block_close(struct ctl_be_block_l
 			}
 			break;
 		case CTL_BE_BLOCK_NONE:
+			break;
 		default:
 			panic("Unexpected backend type.");
 			break;
@@ -1587,7 +1589,7 @@ ctl_be_block_open(struct ctl_be_block_so
 	} else {
 		error = EINVAL;
 		snprintf(req->error_str, sizeof(req->error_str),
-			 "%s is not a disk or file", be_lun->dev_path);
+			 "%s is not a disk or plain file", be_lun->dev_path);
 	}
 	VOP_UNLOCK(be_lun->vn, 0);
 

Modified: projects/random_number_generator/sys/dev/cxgbe/common/common.h
==============================================================================
--- projects/random_number_generator/sys/dev/cxgbe/common/common.h	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/sys/dev/cxgbe/common/common.h	Tue Dec  3 18:50:27 2013	(r258881)
@@ -587,4 +587,8 @@ int t4_sge_ctxt_rd_bd(struct adapter *ad
 int t4_sge_ctxt_flush(struct adapter *adap, unsigned int mbox);
 int t4_handle_fw_rpl(struct adapter *adap, const __be64 *rpl);
 int t4_fwaddrspace_write(struct adapter *adap, unsigned int mbox, u32 addr, u32 val);
+int t4_sched_config(struct adapter *adapter, int type, int minmaxen);
+int t4_sched_params(struct adapter *adapter, int type, int level, int mode,
+		    int rateunit, int ratemode, int channel, int cl,
+		    int minrate, int maxrate, int weight, int pktsize);
 #endif /* __CHELSIO_COMMON_H */

Modified: projects/random_number_generator/sys/dev/cxgbe/common/t4_hw.c
==============================================================================
--- projects/random_number_generator/sys/dev/cxgbe/common/t4_hw.c	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/sys/dev/cxgbe/common/t4_hw.c	Tue Dec  3 18:50:27 2013	(r258881)
@@ -5664,3 +5664,50 @@ int __devinit t4_port_init(struct port_i
 
 	return 0;
 }
+
+int t4_sched_config(struct adapter *adapter, int type, int minmaxen)
+{
+	struct fw_sched_cmd cmd;
+
+	memset(&cmd, 0, sizeof(cmd));
+	cmd.op_to_write = cpu_to_be32(V_FW_CMD_OP(FW_SCHED_CMD) |
+				      F_FW_CMD_REQUEST |
+				      F_FW_CMD_WRITE);
+	cmd.retval_len16 = cpu_to_be32(FW_LEN16(cmd));
+
+	cmd.u.config.sc = FW_SCHED_SC_CONFIG;
+	cmd.u.config.type = type;
+	cmd.u.config.minmaxen = minmaxen;
+
+	return t4_wr_mbox_meat(adapter,adapter->mbox, &cmd, sizeof(cmd),
+			       NULL, 1);
+}
+
+int t4_sched_params(struct adapter *adapter, int type, int level, int mode,
+		    int rateunit, int ratemode, int channel, int cl,
+		    int minrate, int maxrate, int weight, int pktsize)
+{
+	struct fw_sched_cmd cmd;
+
+	memset(&cmd, 0, sizeof(cmd));
+	cmd.op_to_write = cpu_to_be32(V_FW_CMD_OP(FW_SCHED_CMD) |
+				      F_FW_CMD_REQUEST |
+				      F_FW_CMD_WRITE);
+	cmd.retval_len16 = cpu_to_be32(FW_LEN16(cmd));
+
+	cmd.u.params.sc = FW_SCHED_SC_PARAMS;
+	cmd.u.params.type = type;
+	cmd.u.params.level = level;
+	cmd.u.params.mode = mode;
+	cmd.u.params.ch = channel;
+	cmd.u.params.cl = cl;
+	cmd.u.params.unit = rateunit;
+	cmd.u.params.rate = ratemode;
+	cmd.u.params.min = cpu_to_be32(minrate);
+	cmd.u.params.max = cpu_to_be32(maxrate);
+	cmd.u.params.weight = cpu_to_be16(weight);
+	cmd.u.params.pktsize = cpu_to_be16(pktsize);
+
+	return t4_wr_mbox_meat(adapter,adapter->mbox, &cmd, sizeof(cmd),
+			       NULL, 1);
+}

Modified: projects/random_number_generator/sys/dev/cxgbe/t4_ioctl.h
==============================================================================
--- projects/random_number_generator/sys/dev/cxgbe/t4_ioctl.h	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/sys/dev/cxgbe/t4_ioctl.h	Tue Dec  3 18:50:27 2013	(r258881)
@@ -208,6 +208,74 @@ struct t4_filter {
 	struct t4_filter_specification fs;
 };
 
+/*
+ * Support for "sched-class" command to allow a TX Scheduling Class to be
+ * programmed with various parameters.
+ */
+struct t4_sched_params {
+	int8_t   subcmd;		/* sub-command */
+	int8_t   type;			/* packet or flow */
+	union {
+		struct {		/* sub-command SCHED_CLASS_CONFIG */
+			int8_t   minmax;	/* minmax enable */
+		} config;
+		struct {		/* sub-command SCHED_CLASS_PARAMS */
+			int8_t   level;		/* scheduler hierarchy level */
+			int8_t   mode;		/* per-class or per-flow */
+			int8_t   rateunit;	/* bit or packet rate */
+			int8_t   ratemode;	/* %port relative or kbps
+						   absolute */
+			int8_t   channel;	/* scheduler channel [0..N] */
+			int8_t   cl;		/* scheduler class [0..N] */
+			int32_t  minrate;	/* minimum rate */
+			int32_t  maxrate;	/* maximum rate */
+			int16_t  weight;	/* percent weight */
+			int16_t  pktsize;	/* average packet size */
+		} params;
+		uint8_t     reserved[6 + 8 * 8];
+	} u;
+};
+
+enum {
+	SCHED_CLASS_SUBCMD_CONFIG,	/* config sub-command */
+	SCHED_CLASS_SUBCMD_PARAMS,	/* params sub-command */
+};
+
+enum {
+	SCHED_CLASS_TYPE_PACKET,
+};
+
+enum {
+	SCHED_CLASS_LEVEL_CL_RL,	/* class rate limiter */
+	SCHED_CLASS_LEVEL_CL_WRR,	/* class weighted round robin */
+	SCHED_CLASS_LEVEL_CH_RL,	/* channel rate limiter */
+};
+
+enum {
+	SCHED_CLASS_MODE_CLASS,		/* per-class scheduling */
+	SCHED_CLASS_MODE_FLOW,		/* per-flow scheduling */
+};
+
+enum {
+	SCHED_CLASS_RATEUNIT_BITS,	/* bit rate scheduling */
+	SCHED_CLASS_RATEUNIT_PKTS,	/* packet rate scheduling */
+};
+
+enum {
+	SCHED_CLASS_RATEMODE_REL,	/* percent of port bandwidth */
+	SCHED_CLASS_RATEMODE_ABS,	/* Kb/s */
+};
+
+/*
+ * Support for "sched_queue" command to allow one or more NIC TX Queues to be
+ * bound to a TX Scheduling Class.
+ */
+struct t4_sched_queue {
+	uint8_t  port;
+	int8_t   queue;	/* queue index; -1 => all queues */
+	int8_t   cl;	/* class index; -1 => unbind */
+};
+
 #define T4_SGE_CONTEXT_SIZE 24
 enum {
 	SGE_CONTEXT_EGRESS,
@@ -261,6 +329,10 @@ struct t4_tracer {
 #define CHELSIO_T4_GET_MEM	_IOW('f', T4_GET_MEM, struct t4_mem_range)
 #define CHELSIO_T4_GET_I2C	_IOWR('f', T4_GET_I2C, struct t4_i2c_data)
 #define CHELSIO_T4_CLEAR_STATS	_IOW('f', T4_CLEAR_STATS, uint32_t)
+#define CHELSIO_T4_SCHED_CLASS  _IOW('f', T4_SET_SCHED_CLASS, \
+    struct t4_sched_params)
+#define CHELSIO_T4_SCHED_QUEUE  _IOW('f', T4_SET_SCHED_QUEUE, \
+    struct t4_sched_queue)
 #define CHELSIO_T4_GET_TRACER	_IOWR('f', T4_GET_TRACER, struct t4_tracer)
 #define CHELSIO_T4_SET_TRACER	_IOW('f', T4_SET_TRACER, struct t4_tracer)
 #endif

Modified: projects/random_number_generator/sys/dev/cxgbe/t4_main.c
==============================================================================
--- projects/random_number_generator/sys/dev/cxgbe/t4_main.c	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/sys/dev/cxgbe/t4_main.c	Tue Dec  3 18:50:27 2013	(r258881)
@@ -425,6 +425,8 @@ static int get_sge_context(struct adapte
 static int load_fw(struct adapter *, struct t4_data *);
 static int read_card_mem(struct adapter *, int, struct t4_mem_range *);
 static int read_i2c(struct adapter *, struct t4_i2c_data *);
+static int set_sched_class(struct adapter *, struct t4_sched_params *);
+static int set_sched_queue(struct adapter *, struct t4_sched_queue *);
 #ifdef TCP_OFFLOAD
 static int toe_capability(struct port_info *, int);
 #endif
@@ -7295,6 +7297,228 @@ read_i2c(struct adapter *sc, struct t4_i
 	return (rc);
 }
 
+static int
+in_range(int val, int lo, int hi)
+{
+
+	return (val < 0 || (val <= hi && val >= lo));
+}
+
+static int
+set_sched_class(struct adapter *sc, struct t4_sched_params *p)
+{
+	int fw_subcmd, fw_type, rc;
+
+	rc = begin_synchronized_op(sc, NULL, SLEEP_OK | INTR_OK, "t4setsc");
+	if (rc)
+		return (rc);
+
+	if (!(sc->flags & FULL_INIT_DONE)) {
+		rc = EAGAIN;
+		goto done;
+	}
+
+	/*
+	 * Translate the cxgbetool parameters into T4 firmware parameters.  (The
+	 * sub-command and type are in common locations.)
+	 */
+	if (p->subcmd == SCHED_CLASS_SUBCMD_CONFIG)
+		fw_subcmd = FW_SCHED_SC_CONFIG;
+	else if (p->subcmd == SCHED_CLASS_SUBCMD_PARAMS)
+		fw_subcmd = FW_SCHED_SC_PARAMS;
+	else {
+		rc = EINVAL;
+		goto done;
+	}
+	if (p->type == SCHED_CLASS_TYPE_PACKET)
+		fw_type = FW_SCHED_TYPE_PKTSCHED;
+	else {
+		rc = EINVAL;
+		goto done;
+	}
+
+	if (fw_subcmd == FW_SCHED_SC_CONFIG) {
+		/* Vet our parameters ..*/
+		if (p->u.config.minmax < 0) {
+			rc = EINVAL;
+			goto done;
+		}
+
+		/* And pass the request to the firmware ...*/
+		rc = -t4_sched_config(sc, fw_type, p->u.config.minmax);
+		goto done;
+	}
+
+	if (fw_subcmd == FW_SCHED_SC_PARAMS) {
+		int fw_level;
+		int fw_mode;
+		int fw_rateunit;
+		int fw_ratemode;
+
+		if (p->u.params.level == SCHED_CLASS_LEVEL_CL_RL)
+			fw_level = FW_SCHED_PARAMS_LEVEL_CL_RL;
+		else if (p->u.params.level == SCHED_CLASS_LEVEL_CL_WRR)
+			fw_level = FW_SCHED_PARAMS_LEVEL_CL_WRR;
+		else if (p->u.params.level == SCHED_CLASS_LEVEL_CH_RL)
+			fw_level = FW_SCHED_PARAMS_LEVEL_CH_RL;
+		else {
+			rc = EINVAL;
+			goto done;
+		}
+
+		if (p->u.params.mode == SCHED_CLASS_MODE_CLASS)
+			fw_mode = FW_SCHED_PARAMS_MODE_CLASS;
+		else if (p->u.params.mode == SCHED_CLASS_MODE_FLOW)
+			fw_mode = FW_SCHED_PARAMS_MODE_FLOW;
+		else {
+			rc = EINVAL;
+			goto done;
+		}
+
+		if (p->u.params.rateunit == SCHED_CLASS_RATEUNIT_BITS)
+			fw_rateunit = FW_SCHED_PARAMS_UNIT_BITRATE;
+		else if (p->u.params.rateunit == SCHED_CLASS_RATEUNIT_PKTS)
+			fw_rateunit = FW_SCHED_PARAMS_UNIT_PKTRATE;
+		else {
+			rc = EINVAL;
+			goto done;
+		}
+
+		if (p->u.params.ratemode == SCHED_CLASS_RATEMODE_REL)
+			fw_ratemode = FW_SCHED_PARAMS_RATE_REL;
+		else if (p->u.params.ratemode == SCHED_CLASS_RATEMODE_ABS)
+			fw_ratemode = FW_SCHED_PARAMS_RATE_ABS;
+		else {
+			rc = EINVAL;
+			goto done;
+		}
+
+		/* Vet our parameters ... */
+		if (!in_range(p->u.params.channel, 0, 3) ||
+		    !in_range(p->u.params.cl, 0, is_t4(sc) ? 15 : 16) ||
+		    !in_range(p->u.params.minrate, 0, 10000000) ||
+		    !in_range(p->u.params.maxrate, 0, 10000000) ||
+		    !in_range(p->u.params.weight, 0, 100)) {
+			rc = ERANGE;
+			goto done;
+		}
+
+		/*
+		 * Translate any unset parameters into the firmware's
+		 * nomenclature and/or fail the call if the parameters
+		 * are required ...
+		 */
+		if (p->u.params.rateunit < 0 || p->u.params.ratemode < 0 ||
+		    p->u.params.channel < 0 || p->u.params.cl < 0) {
+			rc = EINVAL;
+			goto done;
+		}
+		if (p->u.params.minrate < 0)
+			p->u.params.minrate = 0;
+		if (p->u.params.maxrate < 0) {
+			if (p->u.params.level == SCHED_CLASS_LEVEL_CL_RL ||
+			    p->u.params.level == SCHED_CLASS_LEVEL_CH_RL) {
+				rc = EINVAL;
+				goto done;
+			} else
+				p->u.params.maxrate = 0;
+		}
+		if (p->u.params.weight < 0) {
+			if (p->u.params.level == SCHED_CLASS_LEVEL_CL_WRR) {
+				rc = EINVAL;
+				goto done;
+			} else
+				p->u.params.weight = 0;
+		}
+		if (p->u.params.pktsize < 0) {
+			if (p->u.params.level == SCHED_CLASS_LEVEL_CL_RL ||
+			    p->u.params.level == SCHED_CLASS_LEVEL_CH_RL) {
+				rc = EINVAL;
+				goto done;
+			} else
+				p->u.params.pktsize = 0;
+		}
+
+		/* See what the firmware thinks of the request ... */
+		rc = -t4_sched_params(sc, fw_type, fw_level, fw_mode,
+		    fw_rateunit, fw_ratemode, p->u.params.channel,
+		    p->u.params.cl, p->u.params.minrate, p->u.params.maxrate,
+		    p->u.params.weight, p->u.params.pktsize);
+		goto done;
+	}
+
+	rc = EINVAL;
+done:
+	end_synchronized_op(sc, 0);
+	return (rc);
+}
+
+static int
+set_sched_queue(struct adapter *sc, struct t4_sched_queue *p)
+{
+	struct port_info *pi = NULL;
+	struct sge_txq *txq;
+	uint32_t fw_mnem, fw_queue, fw_class;
+	int i, rc;
+
+	rc = begin_synchronized_op(sc, NULL, SLEEP_OK | INTR_OK, "t4setsq");
+	if (rc)
+		return (rc);
+
+	if (!(sc->flags & FULL_INIT_DONE)) {
+		rc = EAGAIN;
+		goto done;
+	}
+
+	if (p->port >= sc->params.nports) {
+		rc = EINVAL;
+		goto done;
+	}
+
+	pi = sc->port[p->port];
+	if (!in_range(p->queue, 0, pi->ntxq - 1) || !in_range(p->cl, 0, 7)) {
+		rc = EINVAL;
+		goto done;
+	}
+
+	/*
+	 * Create a template for the FW_PARAMS_CMD mnemonic and value (TX
+	 * Scheduling Class in this case).
+	 */
+	fw_mnem = (V_FW_PARAMS_MNEM(FW_PARAMS_MNEM_DMAQ) |
+	    V_FW_PARAMS_PARAM_X(FW_PARAMS_PARAM_DMAQ_EQ_SCHEDCLASS_ETH));
+	fw_class = p->cl < 0 ? 0xffffffff : p->cl;
+
+	/*
+	 * If op.queue is non-negative, then we're only changing the scheduling
+	 * on a single specified TX queue.
+	 */
+	if (p->queue >= 0) {
+		txq = &sc->sge.txq[pi->first_txq + p->queue];
+		fw_queue = (fw_mnem | V_FW_PARAMS_PARAM_YZ(txq->eq.cntxt_id));
+		rc = -t4_set_params(sc, sc->mbox, sc->pf, 0, 1, &fw_queue,
+		    &fw_class);
+		goto done;
+	}
+
+	/*
+	 * Change the scheduling on all the TX queues for the
+	 * interface.
+	 */
+	for_each_txq(pi, i, txq) {
+		fw_queue = (fw_mnem | V_FW_PARAMS_PARAM_YZ(txq->eq.cntxt_id));
+		rc = -t4_set_params(sc, sc->mbox, sc->pf, 0, 1, &fw_queue,
+		    &fw_class);
+		if (rc)
+			goto done;
+	}
+
+	rc = 0;
+done:
+	end_synchronized_op(sc, 0);
+	return (rc);
+}
+
 int
 t4_os_find_pci_capability(struct adapter *sc, int cap)
 {
@@ -7538,6 +7762,12 @@ t4_ioctl(struct cdev *dev, unsigned long
 		}
 		break;
 	}
+	case CHELSIO_T4_SCHED_CLASS:
+		rc = set_sched_class(sc, (struct t4_sched_params *)data);
+		break;
+	case CHELSIO_T4_SCHED_QUEUE:
+		rc = set_sched_queue(sc, (struct t4_sched_queue *)data);
+		break;
 	case CHELSIO_T4_GET_TRACER:
 		rc = t4_get_tracer(sc, (struct t4_tracer *)data);
 		break;

Modified: projects/random_number_generator/sys/dev/usb/wlan/if_run.c
==============================================================================
--- projects/random_number_generator/sys/dev/usb/wlan/if_run.c	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/sys/dev/usb/wlan/if_run.c	Tue Dec  3 18:50:27 2013	(r258881)
@@ -3167,8 +3167,9 @@ run_tx(struct run_softc *sc, struct mbuf
 
 	usbd_transfer_start(sc->sc_xfer[qid]);
 
-	DPRINTFN(8, "sending data frame len=%d rate=%d qid=%d\n", m->m_pkthdr.len +
-	    (int)(sizeof (struct rt2870_txd) + sizeof (struct rt2860_rxwi)),
+	DPRINTFN(8, "sending data frame len=%d rate=%d qid=%d\n",
+	    m->m_pkthdr.len +
+	    (int)(sizeof(struct rt2870_txd) + sizeof(struct rt2860_txwi)),
 	    rt2860_rates[ridx].rate, qid);
 
 	return (0);
@@ -3233,7 +3234,7 @@ run_tx_mgt(struct run_softc *sc, struct 
 	run_set_tx_desc(sc, data);
 
 	DPRINTFN(10, "sending mgt frame len=%d rate=%d\n", m->m_pkthdr.len +
-	    (int)(sizeof (struct rt2870_txd) + sizeof (struct rt2860_rxwi)),
+	    (int)(sizeof(struct rt2870_txd) + sizeof(struct rt2860_txwi)),
 	    rt2860_rates[ridx].rate);
 
 	STAILQ_INSERT_TAIL(&sc->sc_epq[0].tx_qh, data, next);

Modified: projects/random_number_generator/sys/dev/usb/wlan/if_runvar.h
==============================================================================
--- projects/random_number_generator/sys/dev/usb/wlan/if_runvar.h	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/sys/dev/usb/wlan/if_runvar.h	Tue Dec  3 18:50:27 2013	(r258881)
@@ -35,7 +35,7 @@
 /* NB: "11" is the maximum number of padding bytes needed for Tx */
 #define RUN_MAX_TXSZ			\
 	(sizeof (struct rt2870_txd) +	\
-	 sizeof (struct rt2860_rxwi) +	\
+	 sizeof (struct rt2860_txwi) +	\
 	 MCLBYTES + 11)
 
 #define RUN_TX_TIMEOUT	5000	/* ms */

Modified: projects/random_number_generator/sys/kern/sched_ule.c
==============================================================================
--- projects/random_number_generator/sys/kern/sched_ule.c	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/sys/kern/sched_ule.c	Tue Dec  3 18:50:27 2013	(r258881)
@@ -1532,7 +1532,7 @@ sched_priority(struct thread *td)
 		pri = SCHED_PRI_MIN;
 		if (td->td_sched->ts_ticks)
 			pri += min(SCHED_PRI_TICKS(td->td_sched),
-			    SCHED_PRI_RANGE);
+			    SCHED_PRI_RANGE - 1);
 		pri += SCHED_PRI_NICE(td->td_proc->p_nice);
 		KASSERT(pri >= PRI_MIN_BATCH && pri <= PRI_MAX_BATCH,
 		    ("sched_priority: invalid priority %d: nice %d, " 

Modified: projects/random_number_generator/sys/powerpc/include/fdt.h
==============================================================================
--- projects/random_number_generator/sys/powerpc/include/fdt.h	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/sys/powerpc/include/fdt.h	Tue Dec  3 18:50:27 2013	(r258881)
@@ -35,15 +35,7 @@
 #include <machine/bus.h>
 #include <machine/intr_machdep.h>
 
-/* Max interrupt number */
-#define FDT_INTR_MAX	INTR_VECTORS
-
 /* Map phandle/intpin pair to global IRQ number */
 #define	FDT_MAP_IRQ(node, pin)	powerpc_get_irq(node, pin)
 
-/*
- * Bus space tag. XXX endianess info needs to be derived from the blob.
- */
-#define fdtbus_bs_tag	(&bs_be_tag)
-
 #endif /* _MACHINE_FDT_H_ */

Modified: projects/random_number_generator/sys/powerpc/wii/platform_wii.c
==============================================================================
--- projects/random_number_generator/sys/powerpc/wii/platform_wii.c	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/sys/powerpc/wii/platform_wii.c	Tue Dec  3 18:50:27 2013	(r258881)
@@ -136,7 +136,7 @@ wii_mem_regions(platform_t plat, struct 
 	 */
 	avail_regions[1].mr_size -= WIIIPC_IOH_LEN + 1;
 
-	memcpy(phys, avail, 2*sizeof(*avail);
+	memcpy(phys, avail_regions, 2*sizeof(*avail_regions));
 	*physsz = *availsz = 2;
 }
 

Modified: projects/random_number_generator/sys/sys/ktr.h
==============================================================================
--- projects/random_number_generator/sys/sys/ktr.h	Tue Dec  3 18:35:17 2013	(r258880)
+++ projects/random_number_generator/sys/sys/ktr.h	Tue Dec  3 18:50:27 2013	(r258881)
@@ -36,56 +36,7 @@
 #ifndef _SYS_KTR_H_
 #define _SYS_KTR_H_
 
-/*
- * Trace classes
- *
- * Two of the trace classes (KTR_DEV and KTR_SUBSYS) are special in that
- * they are really placeholders so that indvidual drivers and subsystems
- * can map their internal tracing to the general class when they wish to
- * have tracing enabled and map it to 0 when they don't.
- */
-#define	KTR_GEN		0x00000001		/* General (TR) */
-#define	KTR_NET		0x00000002		/* Network */
-#define	KTR_DEV		0x00000004		/* Device driver */
-#define	KTR_LOCK	0x00000008		/* MP locking */
-#define	KTR_SMP		0x00000010		/* MP general */
-#define	KTR_SUBSYS	0x00000020		/* Subsystem. */
-#define	KTR_PMAP	0x00000040		/* Pmap tracing */
-#define	KTR_MALLOC	0x00000080		/* Malloc tracing */
-#define	KTR_TRAP	0x00000100		/* Trap processing */
-#define	KTR_INTR	0x00000200		/* Interrupt tracing */
-#define	KTR_SIG		0x00000400		/* Signal processing */
-#define	KTR_SPARE2	0x00000800		/* XXX Used by cxgb */
-#define	KTR_PROC	0x00001000		/* Process scheduling */
-#define	KTR_SYSC	0x00002000		/* System call */
-#define	KTR_INIT	0x00004000		/* System initialization */
-#define	KTR_SPARE3	0x00008000		/* XXX Used by cxgb */
-#define	KTR_SPARE4	0x00010000		/* XXX Used by cxgb */
-#define	KTR_EVH		0x00020000		/* Eventhandler */
-#define	KTR_VFS		0x00040000		/* VFS events */
-#define	KTR_VOP		0x00080000		/* Auto-generated vop events */
-#define	KTR_VM		0x00100000		/* The virtual memory system */
-#define	KTR_INET	0x00200000		/* IPv4 stack */
-#define	KTR_RUNQ	0x00400000		/* Run queue */
-#define	KTR_CONTENTION	0x00800000		/* Lock contention */
-#define	KTR_UMA		0x01000000		/* UMA slab allocator */
-#define	KTR_CALLOUT	0x02000000		/* Callouts and timeouts */
-#define	KTR_GEOM	0x04000000		/* GEOM I/O events */
-#define	KTR_BUSDMA	0x08000000		/* busdma(9) events */
-#define	KTR_INET6	0x10000000		/* IPv6 stack */
-#define	KTR_SCHED	0x20000000		/* Machine parsed sched info. */
-#define	KTR_BUF		0x40000000		/* Buffer cache */
-#define	KTR_ALL		0x7fffffff
-
-/* Trace classes to compile in */
-#ifdef KTR

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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201312031850.rB3IoRKl042696>