From owner-svn-src-user@FreeBSD.ORG Sun Nov 3 08:51:27 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id CA9D9CF6; Sun, 3 Nov 2013 08:51:27 +0000 (UTC) (envelope-from cperciva@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 9E0F3246F; Sun, 3 Nov 2013 08:51:27 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA38pRgm088176; Sun, 3 Nov 2013 08:51:27 GMT (envelope-from cperciva@svn.freebsd.org) Received: (from cperciva@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA38pRB9088175; Sun, 3 Nov 2013 08:51:27 GMT (envelope-from cperciva@svn.freebsd.org) Message-Id: <201311030851.rA38pRB9088175@svn.freebsd.org> From: Colin Percival Date: Sun, 3 Nov 2013 08:51:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257564 - user/cperciva/panicmail X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 03 Nov 2013 08:51:27 -0000 Author: cperciva Date: Sun Nov 3 08:51:27 2013 New Revision: 257564 URL: http://svnweb.freebsd.org/changeset/base/257564 Log: Style fixes. Submitted by: dt71 Modified: user/cperciva/panicmail/panicmail Modified: user/cperciva/panicmail/panicmail ============================================================================== --- user/cperciva/panicmail/panicmail Sun Nov 3 07:31:54 2013 (r257563) +++ user/cperciva/panicmail/panicmail Sun Nov 3 08:51:27 2013 (r257564) @@ -30,7 +30,7 @@ . /etc/rc.subr name="panicmail" -rcvar=panicmail_enable +rcvar="panicmail_enable" start_cmd="panicmail_run" stop_cmd=":" @@ -51,6 +51,8 @@ panicmail_gather() kgdb -q `sysctl -n kern.bootfile` "${dumpdir}/vmcore.$1" \ < ${tmpfile} >> "${dumpdir}/panicmail.$1" 2> /dev/null echo >> "${dumpdir}/panicmail.$1" + + # Remove the temporary file. rm ${tmpfile} } @@ -67,7 +69,7 @@ panicmail_encrypt() lam -s '|' ${tmpfile} -s '|' >> "${dumpdir}/panicmail.$1.enc" echo "-----ENCRYPTED FREEBSD PANIC DATA ENDS HERE-----------------------" >> "${dumpdir}/panicmail.$1.enc" - # Remove temporary file. + # Remove the temporary file. rm ${tmpfile} } @@ -97,7 +99,7 @@ panicmail_root() ${panicmail_sendto}; you should be able to do this by hitting "Reply" in your mail client and removing everything up to this point. - + EOF cat "${dumpdir}/panicmail.$1.enc" } @@ -124,7 +126,7 @@ panicmail_run() # Quit if we have no dumps. if ! [ -f "${dumpdir}/bounds" ]; then - return 0; + return 0 fi # If we have info.last, use that to figure out the last dump number. @@ -132,20 +134,20 @@ panicmail_run() nr=`readlink ${dumpdir}/info.last` nr=${nr##*.} else - # Otherwise get the number from bounds. + # Otherwise, get the number from bounds. nr=$((`cat ${dumpdir}/bounds` - 1)) fi # Make sure the dump actually exists. if ! [ -f "${dumpdir}/info.${nr}" ] || ! [ -f "${dumpdir}/vmcore.${nr}" ]; then - return 0; + return 0 fi # Have we already sent an email about this one? We compare times in # order to catch the case where dump numbers repeat. if [ "${dumpdir}/panicmail.${nr}" -nt "${dumpdir}/vmcore.${nr}" ]; then - return 0; + return 0 fi # Gather information about this panic. From owner-svn-src-user@FreeBSD.ORG Sun Nov 3 08:54:48 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 0BD83DDC; Sun, 3 Nov 2013 08:54:48 +0000 (UTC) (envelope-from cperciva@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id DE1BA2475; Sun, 3 Nov 2013 08:54:47 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA38slUQ088559; Sun, 3 Nov 2013 08:54:47 GMT (envelope-from cperciva@svn.freebsd.org) Received: (from cperciva@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA38sljq088558; Sun, 3 Nov 2013 08:54:47 GMT (envelope-from cperciva@svn.freebsd.org) Message-Id: <201311030854.rA38sljq088558@svn.freebsd.org> From: Colin Percival Date: Sun, 3 Nov 2013 08:54:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257565 - user/cperciva/panicmail X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 03 Nov 2013 08:54:48 -0000 Author: cperciva Date: Sun Nov 3 08:54:47 2013 New Revision: 257565 URL: http://svnweb.freebsd.org/changeset/base/257565 Log: Add more quoting paranoia. Not likely anyone will be running with a TMPDIR which has spaces in it, but still... Submitted by: dt71 Modified: user/cperciva/panicmail/panicmail Modified: user/cperciva/panicmail/panicmail ============================================================================== --- user/cperciva/panicmail/panicmail Sun Nov 3 08:51:27 2013 (r257564) +++ user/cperciva/panicmail/panicmail Sun Nov 3 08:54:47 2013 (r257565) @@ -46,14 +46,14 @@ panicmail_gather() # And we want a backtrace (we should be able to pipe the commands # directly into kgdb, but that doesn't work with our /bin/sh): echo "Backtrace:" >> "${dumpdir}/panicmail.$1" - echo bt > ${tmpfile} - echo quit >> ${tmpfile} - kgdb -q `sysctl -n kern.bootfile` "${dumpdir}/vmcore.$1" \ - < ${tmpfile} >> "${dumpdir}/panicmail.$1" 2> /dev/null + echo bt > "${tmpfile}" + echo quit >> "${tmpfile}" + kgdb -q "`sysctl -n kern.bootfile`" "${dumpdir}/vmcore.$1" \ + < "${tmpfile}" >> "${dumpdir}/panicmail.$1" 2> /dev/null echo >> "${dumpdir}/panicmail.$1" # Remove the temporary file. - rm ${tmpfile} + rm "${tmpfile}" } # Encrypt the information in the panic report. @@ -62,15 +62,15 @@ panicmail_encrypt() local tmpfile=`mktemp` || exit 1 # Encrypt using pkesh. - /usr/local/bin/pkesh enc "$2" "${dumpdir}/panicmail.$1" ${tmpfile} || exit 1 + /usr/local/bin/pkesh enc "$2" "${dumpdir}/panicmail.$1" "${tmpfile}" || exit 1 # Add extra armour. echo "-----ENCRYPTED FREEBSD PANIC DATA STARTS HERE---------------------" > "${dumpdir}/panicmail.$1.enc" - lam -s '|' ${tmpfile} -s '|' >> "${dumpdir}/panicmail.$1.enc" + lam -s '|' "${tmpfile}" -s '|' >> "${dumpdir}/panicmail.$1.enc" echo "-----ENCRYPTED FREEBSD PANIC DATA ENDS HERE-----------------------" >> "${dumpdir}/panicmail.$1.enc" # Remove the temporary file. - rm ${tmpfile} + rm "${tmpfile}" } # Construct an email destined for root to review and forward. @@ -131,11 +131,11 @@ panicmail_run() # If we have info.last, use that to figure out the last dump number. if [ -e "${dumpdir}/info.last" ]; then - nr=`readlink ${dumpdir}/info.last` + nr=`readlink "${dumpdir}/info.last"` nr=${nr##*.} else # Otherwise, get the number from bounds. - nr=$((`cat ${dumpdir}/bounds` - 1)) + nr=$((`cat "${dumpdir}/bounds"` - 1)) fi # Make sure the dump actually exists. @@ -151,16 +151,16 @@ panicmail_run() fi # Gather information about this panic. - panicmail_gather ${nr} + panicmail_gather "${nr}" # Encrypt the panic information. - panicmail_encrypt ${nr} "${panicmail_key}" + panicmail_encrypt "${nr}" "${panicmail_key}" # Generate and send an email. if checkyesno panicmail_autosubmit; then - panicmail_auto ${nr} | sendmail -t + panicmail_auto "${nr}" | sendmail -t else - panicmail_root ${nr} | sendmail -t + panicmail_root "${nr}" | sendmail -t fi } From owner-svn-src-user@FreeBSD.ORG Sun Nov 3 08:56:08 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id C0245ECA; Sun, 3 Nov 2013 08:56:08 +0000 (UTC) (envelope-from cperciva@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id ADF75247F; Sun, 3 Nov 2013 08:56:08 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA38u8Wg088818; Sun, 3 Nov 2013 08:56:08 GMT (envelope-from cperciva@svn.freebsd.org) Received: (from cperciva@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA38u80X088817; Sun, 3 Nov 2013 08:56:08 GMT (envelope-from cperciva@svn.freebsd.org) Message-Id: <201311030856.rA38u80X088817@svn.freebsd.org> From: Colin Percival Date: Sun, 3 Nov 2013 08:56:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257566 - user/cperciva/panicmail X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 03 Nov 2013 08:56:08 -0000 Author: cperciva Date: Sun Nov 3 08:56:08 2013 New Revision: 257566 URL: http://svnweb.freebsd.org/changeset/base/257566 Log: Change default address again, this time to use a + address for improved ease of filtering. Suggested by: eadler Modified: user/cperciva/panicmail/panicmail Modified: user/cperciva/panicmail/panicmail ============================================================================== --- user/cperciva/panicmail/panicmail Sun Nov 3 08:54:47 2013 (r257565) +++ user/cperciva/panicmail/panicmail Sun Nov 3 08:56:08 2013 (r257566) @@ -14,7 +14,7 @@ # review first. # # panicmail_sendto (str): Set to -# "FreeBSD Panic Reporting " +# "FreeBSD Panic Reporting " # by default. # Change to your desired panic submission target. # @@ -24,7 +24,7 @@ # submission target. : ${panicmail_enable:="NO"} : ${panicmail_autosubmit:="NO"} -: ${panicmail_sendto:="FreeBSD Panic Reporting "} +: ${panicmail_sendto:="FreeBSD Panic Reporting "} : ${panicmail_key:="/usr/local/etc/cperciva-panicmail.pem"} . /etc/rc.subr From owner-svn-src-user@FreeBSD.ORG Mon Nov 4 02:58:17 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 982ECDF1; Mon, 4 Nov 2013 02:58:17 +0000 (UTC) (envelope-from cperciva@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 7619C2246; Mon, 4 Nov 2013 02:58:17 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA42wHSA063977; Mon, 4 Nov 2013 02:58:17 GMT (envelope-from cperciva@svn.freebsd.org) Received: (from cperciva@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA42wHRL063976; Mon, 4 Nov 2013 02:58:17 GMT (envelope-from cperciva@svn.freebsd.org) Message-Id: <201311040258.rA42wHRL063976@svn.freebsd.org> From: Colin Percival Date: Mon, 4 Nov 2013 02:58:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257601 - user/cperciva/pkesh X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Nov 2013 02:58:17 -0000 Author: cperciva Date: Mon Nov 4 02:58:16 2013 New Revision: 257601 URL: http://svnweb.freebsd.org/changeset/base/257601 Log: Add paranoid quoting of strings containing variables. Use $TMPDIR instead of $TMP for temporary files. Submitted by: jilles Modified: user/cperciva/pkesh/pkesh.sh Modified: user/cperciva/pkesh/pkesh.sh ============================================================================== --- user/cperciva/pkesh/pkesh.sh Mon Nov 4 02:50:43 2013 (r257600) +++ user/cperciva/pkesh/pkesh.sh Mon Nov 4 02:58:16 2013 (r257601) @@ -10,90 +10,90 @@ usage () { # gen priv.key pub.key gen () { # Generate the key - openssl genrsa -out $D/rsakey -f4 2048 2>/dev/null + openssl genrsa -out "$D/rsakey" -f4 2048 2>/dev/null # Write out private and public parts - cat $D/rsakey > $1 - openssl rsa -in $D/rsakey -pubout > $2 2>/dev/null + cat "$D/rsakey" > "$1" + openssl rsa -in "$D/rsakey" -pubout > "$2" 2>/dev/null } # enc pub.key in out enc () { # Generate a random 256-bit AES key - openssl rand 32 > $D/aeskey + openssl rand 32 > "$D/aeskey" # Generate a random 128-bit IV - openssl rand 16 > $D/aesIV + openssl rand 16 > "$D/aesIV" # Generate the encrypted data - KEY=`od -An -v -t x1 < $D/aeskey | tr -Cd '0-9a-fA-F'` - IV=`od -An -v -t x1 < $D/aesIV | tr -Cd '0-9a-fA-F'` - openssl enc -aes-256-cbc -K $KEY -iv $IV < $2 > $D/encdata + KEY=`od -An -v -t x1 < "$D/aeskey" | tr -Cd '0-9a-fA-F'` + IV=`od -An -v -t x1 < "$D/aesIV" | tr -Cd '0-9a-fA-F'` + openssl enc -aes-256-cbc -K $KEY -iv $IV < "$2" > "$D/encdata" # Compute the SHA256 hash of the encrypted data - openssl dgst -sha256 -binary $D/encdata > $D/hash + openssl dgst -sha256 -binary "$D/encdata" > "$D/hash" # Generate the header - cat $D/aeskey $D/aesIV $D/hash > $D/header + cat "$D/aeskey" "$D/aesIV" "$D/hash" > "$D/header" # Generate the encrypted header - openssl rsautl -inkey $1 -pubin -encrypt -oaep \ - < $D/header > $D/encheader + openssl rsautl -inkey "$1" -pubin -encrypt -oaep \ + < "$D/header" > "$D/encheader" # Generate the entire encrypted message - cat $D/encheader $D/encdata | openssl enc -base64 > $3 + cat "$D/encheader" "$D/encdata" | openssl enc -base64 > "$3" } # dec priv.key in out dec () { # Base-64 decode the encrypted message - openssl enc -d -base64 < $2 > $D/encmessage + openssl enc -d -base64 < "$2" > "$D/encmessage" # Make sure the message is long enough - if [ `wc -c < $D/encmessage` -lt 256 ]; then + if [ `wc -c < "$D/encmessage"` -lt 256 ]; then echo "Message is corrupt or truncated" >/dev/stderr exit 1 fi # Decrypt the header - dd if=$D/encmessage bs=256 count=1 of=$D/encheader 2>/dev/null - openssl rsautl -inkey $1 -decrypt -oaep < $D/encheader > $D/header + dd if="$D/encmessage" bs=256 count=1 of="$D/encheader" 2>/dev/null + openssl rsautl -inkey "$1" -decrypt -oaep < "$D/encheader" > "$D/header" # Make sure the header is the right size - if [ `wc -c < $D/header` -ne 80 ]; then + if [ `wc -c < "$D/header"` -ne 80 ]; then echo "Message is corrupt" >/dev/stderr exit 1 fi # Split header into components - dd if=$D/header bs=1 count=32 of=$D/aeskey 2>/dev/null - dd if=$D/header bs=1 skip=32 count=16 of=$D/aesIV 2>/dev/null - dd if=$D/header bs=1 skip=48 count=32 of=$D/hash 2>/dev/null + dd if="$D/header" bs=1 count=32 of="$D/aeskey" 2>/dev/null + dd if="$D/header" bs=1 skip=32 count=16 of="$D/aesIV" 2>/dev/null + dd if="$D/header" bs=1 skip=48 count=32 of="$D/hash" 2>/dev/null # Verify the encrypted data hash - dd if=$D/encmessage bs=256 skip=1 2>/dev/null | - openssl dgst -sha256 -binary > $D/encmessage.hash - if ! cmp -s $D/hash $D/encmessage.hash; then + dd if="$D/encmessage" bs=256 skip=1 2>/dev/null | + openssl dgst -sha256 -binary > "$D/encmessage.hash" + if ! cmp -s "$D/hash" "$D/encmessage.hash"; then echo "Message is corrupt or truncated" >/dev/stderr exit 1 fi # Decrypt the message - KEY=`od -An -v -t x1 < $D/aeskey | tr -Cd '0-9a-fA-F'` - IV=`od -An -v -t x1 < $D/aesIV | tr -Cd '0-9a-fA-F'` - dd if=$D/encmessage bs=256 skip=1 2>/dev/null | - openssl enc -d -aes-256-cbc -K $KEY -iv $IV > $3 + KEY=`od -An -v -t x1 < "$D/aeskey" | tr -Cd '0-9a-fA-F'` + IV=`od -An -v -t x1 < "$D/aesIV" | tr -Cd '0-9a-fA-F'` + dd if="$D/encmessage" bs=256 skip=1 2>/dev/null | + openssl enc -d -aes-256-cbc -K $KEY -iv $IV > "$3" } # Get operation type if [ $# -lt 1 ]; then usage fi -OP=$1 +OP="$1" shift # Check operation type and number of operands -case $OP in +case "$OP" in gen) if [ $# -ne 2 ]; then usage @@ -109,7 +109,7 @@ enc|dec) esac # Create temporary working directory -D=`mktemp -d "${TMP:-/tmp}/pkesh.XXXXXX"` +D=`mktemp -d "${TMPDIR:-/tmp}/pkesh.XXXXXX"` trap 'rm -r "$D"' EXIT # Perform the operation From owner-svn-src-user@FreeBSD.ORG Mon Nov 4 03:00:45 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 56E58F85; Mon, 4 Nov 2013 03:00:45 +0000 (UTC) (envelope-from cperciva@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 43DE72262; Mon, 4 Nov 2013 03:00:45 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA430jVA066513; Mon, 4 Nov 2013 03:00:45 GMT (envelope-from cperciva@svn.freebsd.org) Received: (from cperciva@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA430jCQ066512; Mon, 4 Nov 2013 03:00:45 GMT (envelope-from cperciva@svn.freebsd.org) Message-Id: <201311040300.rA430jCQ066512@svn.freebsd.org> From: Colin Percival Date: Mon, 4 Nov 2013 03:00:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257602 - user/cperciva/panicmail X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Nov 2013 03:00:45 -0000 Author: cperciva Date: Mon Nov 4 03:00:44 2013 New Revision: 257602 URL: http://svnweb.freebsd.org/changeset/base/257602 Log: Change local tmpfile=`mktemp` || exit 1 into local tmpfile tmpfile=`mktemp` || exit 1 since the former is parsed as "local || exit 1" and loses the exit code from mktemp. Submitted by: jilles Modified: user/cperciva/panicmail/panicmail Modified: user/cperciva/panicmail/panicmail ============================================================================== --- user/cperciva/panicmail/panicmail Mon Nov 4 02:58:16 2013 (r257601) +++ user/cperciva/panicmail/panicmail Mon Nov 4 03:00:44 2013 (r257602) @@ -37,7 +37,8 @@ stop_cmd=":" # Gather the data we want to include in a panic report. panicmail_gather() { - local tmpfile=`mktemp` || exit 1 + local tmpfile + tmpfile=`mktemp` || exit 1 # We want the dump header. cat "${dumpdir}/info.$1" > "${dumpdir}/panicmail.$1" @@ -59,7 +60,8 @@ panicmail_gather() # Encrypt the information in the panic report. panicmail_encrypt() { - local tmpfile=`mktemp` || exit 1 + local tmpfile + tmpfile=`mktemp` || exit 1 # Encrypt using pkesh. /usr/local/bin/pkesh enc "$2" "${dumpdir}/panicmail.$1" "${tmpfile}" || exit 1 From owner-svn-src-user@FreeBSD.ORG Mon Nov 4 05:18:19 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id C150372B; Mon, 4 Nov 2013 05:18:19 +0000 (UTC) (envelope-from cperciva@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id AFB9C28A5; Mon, 4 Nov 2013 05:18:19 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA45IJIt011947; Mon, 4 Nov 2013 05:18:19 GMT (envelope-from cperciva@svn.freebsd.org) Received: (from cperciva@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA45IJ38011946; Mon, 4 Nov 2013 05:18:19 GMT (envelope-from cperciva@svn.freebsd.org) Message-Id: <201311040518.rA45IJ38011946@svn.freebsd.org> From: Colin Percival Date: Mon, 4 Nov 2013 05:18:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257606 - user/cperciva/pkesh X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Nov 2013 05:18:19 -0000 Author: cperciva Date: Mon Nov 4 05:18:19 2013 New Revision: 257606 URL: http://svnweb.freebsd.org/changeset/base/257606 Log: Add Copyright statement and BSD license per /usr/share/examples/etc/bsd-style-copyright Modified: user/cperciva/pkesh/pkesh.sh Modified: user/cperciva/pkesh/pkesh.sh ============================================================================== --- user/cperciva/pkesh/pkesh.sh Mon Nov 4 04:10:36 2013 (r257605) +++ user/cperciva/pkesh/pkesh.sh Mon Nov 4 05:18:19 2013 (r257606) @@ -1,5 +1,31 @@ #!/bin/sh -e +# Copyright (c) 2013 Colin Percival +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# 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 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$ + usage () { echo "usage: pkesh gen priv.key pub.key" echo "usage: pkesh enc pub.key in out" From owner-svn-src-user@FreeBSD.ORG Mon Nov 4 08:22:46 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 25705CC2; Mon, 4 Nov 2013 08:22:46 +0000 (UTC) (envelope-from cperciva@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 12D4423A1; Mon, 4 Nov 2013 08:22:46 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA48Mjdp074994; Mon, 4 Nov 2013 08:22:45 GMT (envelope-from cperciva@svn.freebsd.org) Received: (from cperciva@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA48MjEA074993; Mon, 4 Nov 2013 08:22:45 GMT (envelope-from cperciva@svn.freebsd.org) Message-Id: <201311040822.rA48MjEA074993@svn.freebsd.org> From: Colin Percival Date: Mon, 4 Nov 2013 08:22:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257621 - user/cperciva/panicmail X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Nov 2013 08:22:46 -0000 Author: cperciva Date: Mon Nov 4 08:22:45 2013 New Revision: 257621 URL: http://svnweb.freebsd.org/changeset/base/257621 Log: Add a public key which can be used to send me encrypted panics. Added: user/cperciva/panicmail/cperciva-panicmail.pem Added: user/cperciva/panicmail/cperciva-panicmail.pem ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/cperciva/panicmail/cperciva-panicmail.pem Mon Nov 4 08:22:45 2013 (r257621) @@ -0,0 +1,9 @@ +-----BEGIN PUBLIC KEY----- +MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAshfRoMfnsldIEdzv/Iyc +ot24ojxMXeGZyn/Pk5Q9+R8zWFclgdJA/bYG38LbL7WS29/NKGEnAKlU/JpTZHgx +15O5kncfbXnrL66dV/rZEp/VeUEwGhfsexFIWC3Rpl3YLfNnx0nLLxX+EXfKY23a +JvqUIHnP0Q3s8wVSrF840npH02ohE50VPdbI8q4LqV9RDQJjIg4psVUi0hnXWwVz +GJcOTJpcuSpLBXzYlchKqDsn91vOXE4rNUllwLLLbj1p/lycRHCv1pXNP6xq96ri +vtHnf8gzSEcqG1sSdGB8Z+hkj78EXCaGwGu4kO9GqhoOJ1J3MP5rQG5UAZTBlhx8 +pQIDAQAB +-----END PUBLIC KEY----- From owner-svn-src-user@FreeBSD.ORG Mon Nov 4 08:24:22 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id A12D1F7A; Mon, 4 Nov 2013 08:24:22 +0000 (UTC) (envelope-from cperciva@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 8E96123CE; Mon, 4 Nov 2013 08:24:22 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA48OMkX075213; Mon, 4 Nov 2013 08:24:22 GMT (envelope-from cperciva@svn.freebsd.org) Received: (from cperciva@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA48OMEk075212; Mon, 4 Nov 2013 08:24:22 GMT (envelope-from cperciva@svn.freebsd.org) Message-Id: <201311040824.rA48OMEk075212@svn.freebsd.org> From: Colin Percival Date: Mon, 4 Nov 2013 08:24:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257622 - user/cperciva/panicmail X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Nov 2013 08:24:22 -0000 Author: cperciva Date: Mon Nov 4 08:24:22 2013 New Revision: 257622 URL: http://svnweb.freebsd.org/changeset/base/257622 Log: Add copyright and BSD license text. Modified: user/cperciva/panicmail/panicmail Modified: user/cperciva/panicmail/panicmail ============================================================================== --- user/cperciva/panicmail/panicmail Mon Nov 4 08:22:45 2013 (r257621) +++ user/cperciva/panicmail/panicmail Mon Nov 4 08:24:22 2013 (r257622) @@ -1,5 +1,31 @@ #!/bin/sh +# Copyright (c) 2013 Colin Percival +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# 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 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$ + # PROVIDE: panicmail # REQUIRE: savecore mail From owner-svn-src-user@FreeBSD.ORG Mon Nov 4 09:01:53 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 378F9F55; Mon, 4 Nov 2013 09:01:53 +0000 (UTC) (envelope-from ray@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 24BDA25B9; Mon, 4 Nov 2013 09:01:53 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA491rgK089512; Mon, 4 Nov 2013 09:01:53 GMT (envelope-from ray@svn.freebsd.org) Received: (from ray@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA491rcV089511; Mon, 4 Nov 2013 09:01:53 GMT (envelope-from ray@svn.freebsd.org) Message-Id: <201311040901.rA491rcV089511@svn.freebsd.org> From: Aleksandr Rybalko Date: Mon, 4 Nov 2013 09:01:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257626 - user/ed/newcons/sys/dev/vt X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Nov 2013 09:01:53 -0000 Author: ray Date: Mon Nov 4 09:01:52 2013 New Revision: 257626 URL: http://svnweb.freebsd.org/changeset/base/257626 Log: Notify DRM about panic or kdb enter happen. So we can see kernel messages in that case. To investigate: Return from kdb is broken, seems due to locks usage. TODO Sponsored by: The FreeBSD Foundation Modified: user/ed/newcons/sys/dev/vt/vt_core.c Modified: user/ed/newcons/sys/dev/vt/vt_core.c ============================================================================== --- user/ed/newcons/sys/dev/vt/vt_core.c Mon Nov 4 08:48:35 2013 (r257625) +++ user/ed/newcons/sys/dev/vt/vt_core.c Mon Nov 4 09:01:52 2013 (r257626) @@ -724,6 +724,8 @@ vtterm_done(struct terminal *tm) if (vd->vd_curwindow != vw) { vd->vd_curwindow = vw; vd->vd_flags |= VDF_INVALID; + if (vd->vd_driver->vd_postswitch) + vd->vd_driver->vd_postswitch(vd); } vd->vd_flags &= ~VDF_SPLASH; vt_flush(vd); From owner-svn-src-user@FreeBSD.ORG Mon Nov 4 11:43:04 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 98400FEE; Mon, 4 Nov 2013 11:43:04 +0000 (UTC) (envelope-from pho@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 8435D2FEA; Mon, 4 Nov 2013 11:43:04 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA4Bh4Ij047506; Mon, 4 Nov 2013 11:43:04 GMT (envelope-from pho@svn.freebsd.org) Received: (from pho@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA4Bh4t8047505; Mon, 4 Nov 2013 11:43:04 GMT (envelope-from pho@svn.freebsd.org) Message-Id: <201311041143.rA4Bh4t8047505@svn.freebsd.org> From: Peter Holm Date: Mon, 4 Nov 2013 11:43:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257627 - user/pho/stress2/misc X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Nov 2013 11:43:04 -0000 Author: pho Date: Mon Nov 4 11:43:04 2013 New Revision: 257627 URL: http://svnweb.freebsd.org/changeset/base/257627 Log: Added a timeout and did some cleanup. Sponsored by: EMC / Isilon storage division Modified: user/pho/stress2/misc/truncate.sh Modified: user/pho/stress2/misc/truncate.sh ============================================================================== --- user/pho/stress2/misc/truncate.sh Mon Nov 4 09:01:52 2013 (r257626) +++ user/pho/stress2/misc/truncate.sh Mon Nov 4 11:43:04 2013 (r257627) @@ -35,7 +35,7 @@ here=`pwd` cd /tmp sed '1,/^EOF/d' < $here/$0 > truncate.c -cc -o truncate -Wall -O2 truncate.c +cc -o truncate -Wall -Wextra -O2 truncate.c || exit 1 rm -f truncate.c [ -d $RUNDIR ] || mkdir -p $RUNDIR cd $RUNDIR @@ -49,6 +49,7 @@ EOF #include #include #include +#include #include #include @@ -58,6 +59,7 @@ char buf[SIZ]; void test(void) { + time_t start; int fd[10], i, j; char name[128]; @@ -68,7 +70,10 @@ test(void) unlink(name); } + start = time(NULL); for (i = 0; i < 100000; i++) { + if (time(NULL) - start > 1200) + break; for (j = 0; j < 10; j++) { if (write(fd[j], buf, 2) != 2) err(1, "write"); @@ -77,10 +82,11 @@ test(void) } } - exit(0); + _exit(0); } + int -main(int argc, char **argv) +main(void) { int i, status; From owner-svn-src-user@FreeBSD.ORG Mon Nov 4 11:44:22 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 693B3159; Mon, 4 Nov 2013 11:44:22 +0000 (UTC) (envelope-from pho@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 5565F2FED; Mon, 4 Nov 2013 11:44:22 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA4BiM1N047714; Mon, 4 Nov 2013 11:44:22 GMT (envelope-from pho@svn.freebsd.org) Received: (from pho@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA4BiMSV047713; Mon, 4 Nov 2013 11:44:22 GMT (envelope-from pho@svn.freebsd.org) Message-Id: <201311041144.rA4BiMSV047713@svn.freebsd.org> From: Peter Holm Date: Mon, 4 Nov 2013 11:44:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257628 - user/pho/stress2/misc X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Nov 2013 11:44:22 -0000 Author: pho Date: Mon Nov 4 11:44:21 2013 New Revision: 257628 URL: http://svnweb.freebsd.org/changeset/base/257628 Log: Added a timeout for this test. Sponsored by: EMC / Isilon storage division Modified: user/pho/stress2/misc/rename2.sh Modified: user/pho/stress2/misc/rename2.sh ============================================================================== --- user/pho/stress2/misc/rename2.sh Mon Nov 4 11:43:04 2013 (r257627) +++ user/pho/stress2/misc/rename2.sh Mon Nov 4 11:44:21 2013 (r257628) @@ -34,7 +34,7 @@ here=`pwd` cd /tmp sed '1,/^EOF/d' < $here/$0 > rename.c -cc -o rename -Wall rename.c +cc -o rename -Wall rename.c || exit 1 rm -f rename.c cd $here @@ -57,6 +57,7 @@ EOF #include #include #include +#include #include static char dir1[128]; @@ -65,8 +66,8 @@ static char dir2[128]; int main(int argc, char **argv) { - int i; struct stat sb; + time_t start; sprintf(dir1, "/tmp/rename.dir.%d", getpid()); sprintf(dir2, "/tmp/rename.dir.2.%d", getpid()); @@ -78,7 +79,8 @@ main(int argc, char **argv) if (chdir("..") == -1) err(1, "chdir(%s)", ".."); - for (i = 0; i < 100000; i++) { + start = time(NULL); + while ((time(NULL) - start) < 120) { if (rename(dir1, dir2) == -1) { warn("rename(%s, %s)", dir1, dir2); if (stat(dir1, &sb) == -1) From owner-svn-src-user@FreeBSD.ORG Mon Nov 4 11:46:51 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 7F392255; Mon, 4 Nov 2013 11:46:51 +0000 (UTC) (envelope-from pho@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 6CDAC2FFE; Mon, 4 Nov 2013 11:46:51 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA4Bkpn3048026; Mon, 4 Nov 2013 11:46:51 GMT (envelope-from pho@svn.freebsd.org) Received: (from pho@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA4Bkp6A048025; Mon, 4 Nov 2013 11:46:51 GMT (envelope-from pho@svn.freebsd.org) Message-Id: <201311041146.rA4Bkp6A048025@svn.freebsd.org> From: Peter Holm Date: Mon, 4 Nov 2013 11:46:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257629 - user/pho/stress2/misc X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Nov 2013 11:46:51 -0000 Author: pho Date: Mon Nov 4 11:46:50 2013 New Revision: 257629 URL: http://svnweb.freebsd.org/changeset/base/257629 Log: Create own input file. Sponsored by: EMC / Isilon storage division Modified: user/pho/stress2/misc/sendfile2.sh Modified: user/pho/stress2/misc/sendfile2.sh ============================================================================== --- user/pho/stress2/misc/sendfile2.sh Mon Nov 4 11:44:21 2013 (r257628) +++ user/pho/stress2/misc/sendfile2.sh Mon Nov 4 11:46:50 2013 (r257629) @@ -43,7 +43,8 @@ rm -f sendfile2.c [ -d "$RUNDIR" ] || mkdir -p $RUNDIR cd $RUNDIR -cp /usr/lib/libc_pic.a large +dd if=/dev/random of=large bs=1m count=3 2>&1 | + egrep -v "records|transferred" md1=`md5 large` nc -l 7000 > lf & From owner-svn-src-user@FreeBSD.ORG Mon Nov 4 11:48:46 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 22A8C34E; Mon, 4 Nov 2013 11:48:46 +0000 (UTC) (envelope-from pho@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 10D072010; Mon, 4 Nov 2013 11:48:46 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA4BmjML048264; Mon, 4 Nov 2013 11:48:45 GMT (envelope-from pho@svn.freebsd.org) Received: (from pho@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA4BmjgP048263; Mon, 4 Nov 2013 11:48:45 GMT (envelope-from pho@svn.freebsd.org) Message-Id: <201311041148.rA4BmjgP048263@svn.freebsd.org> From: Peter Holm Date: Mon, 4 Nov 2013 11:48:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257630 - user/pho/stress2/misc X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Nov 2013 11:48:46 -0000 Author: pho Date: Mon Nov 4 11:48:45 2013 New Revision: 257630 URL: http://svnweb.freebsd.org/changeset/base/257630 Log: Added regression test. Sponsored by: EMC / Isilon storage division Added: user/pho/stress2/misc/nanosleep.sh (contents, props changed) Added: user/pho/stress2/misc/nanosleep.sh ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/pho/stress2/misc/nanosleep.sh Mon Nov 4 11:48:45 2013 (r257630) @@ -0,0 +1,96 @@ +#!/bin/sh + +# +# Copyright (c) 2013 EMC Corp. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# 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 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$ +# + +# A simplistic regression test for r200510: + +[ `sysctl kern.hz | sed 's/.* //'` -ne 1000 ] && exit 1 + +here=`pwd` +cd /tmp +sed '1,/^EOF/d' < $here/$0 > nanosleep.c +cc -o nanosleep -Wall -Wextra nanosleep.c || exit 1 +rm -f nanosleep.c + +/tmp/nanosleep || exit + +rm -f /tmp/nanosleep +exit 0 +EOF +#include +#include +#include +#include +#include +#include + +#define timespecsub(vvp, uvp) \ + do { \ + (vvp)->tv_sec -= (uvp)->tv_sec; \ + (vvp)->tv_nsec -= (uvp)->tv_nsec; \ + if ((vvp)->tv_nsec < 0) { \ + (vvp)->tv_sec--; \ + (vvp)->tv_nsec += 1000000000; \ + } \ + } while (0) + +#define N 20000 + +int +main(void) +{ + struct timespec rqt, rmt; + struct timespec start, finish; + long m; + int i; + + m = LONG_MAX; + for (i = 0; i < 100; i++) { + rqt.tv_sec = 0; + rqt.tv_nsec = N; + clock_gettime(CLOCK_REALTIME_PRECISE, &start); + if (nanosleep(&rqt, &rmt) == -1) + err(1, "nanosleep"); + clock_gettime(CLOCK_REALTIME_PRECISE, &finish); + timespecsub(&finish, &start); + if (finish.tv_nsec < N) + errx(1, "Short sleep: %ld", finish.tv_nsec); +// fprintf(stderr, "asked for %f, got %f\n", (double)N / 1e9, +// (double)finish.tv_nsec / 1e9); + if (m > finish.tv_nsec) + m = finish.tv_nsec; + } + if (m > 2 * N) { + fprintf(stderr, "nanosleep(%fs). Best value is %fs.\n", + (double)N / 1e9, (double)m / 1e9); + errx(1, "FAIL"); + } + + return (0); +} From owner-svn-src-user@FreeBSD.ORG Mon Nov 4 14:12:56 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id D03BFD05; Mon, 4 Nov 2013 14:12:56 +0000 (UTC) (envelope-from pho@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id BBB5627D6; Mon, 4 Nov 2013 14:12:56 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA4ECu7P098374; Mon, 4 Nov 2013 14:12:56 GMT (envelope-from pho@svn.freebsd.org) Received: (from pho@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA4ECuhr098373; Mon, 4 Nov 2013 14:12:56 GMT (envelope-from pho@svn.freebsd.org) Message-Id: <201311041412.rA4ECuhr098373@svn.freebsd.org> From: Peter Holm Date: Mon, 4 Nov 2013 14:12:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257634 - user/pho/stress2/misc X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Nov 2013 14:12:56 -0000 Author: pho Date: Mon Nov 4 14:12:56 2013 New Revision: 257634 URL: http://svnweb.freebsd.org/changeset/base/257634 Log: Added regression test. Sponsored by: EMC / Isilon storage division Added: user/pho/stress2/misc/kevent8.sh (contents, props changed) Added: user/pho/stress2/misc/kevent8.sh ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/pho/stress2/misc/kevent8.sh Mon Nov 4 14:12:56 2013 (r257634) @@ -0,0 +1,161 @@ +#!/bin/sh + +# +# Copyright (c) 2013 EMC Corp. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# 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 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$ + +# Out of VM seen due to missing close of kqueue handle. +# Fixed in 256849 + +. ../default.cfg + +ulimit -k 10000 || { echo FAIL; exit 1; } + +odir=`pwd` + +cd /tmp +sed '1,/^EOF/d' < $odir/$0 > kevent8.c +cc -o kevent8 -Wall -Wextra -O2 -g kevent8.c -lpthread || exit 1 +rm -f kevent8.c +cd $odir + +mount | grep "on $mntpoint " | grep -q md$mdstart && umount -f $mntpoint +mdconfig -l | grep -q $mdstart && mdconfig -d -u $mdstart + +mdconfig -a -t swap -s 2g -u ${mdstart} +bsdlabel -w md$mdstart auto +newfs -U md${mdstart}$part > /dev/null +mount /dev/md${mdstart}$part $mntpoint +chmod 777 $mntpoint + +su $testuser -c "(cd $mntpoint; /tmp/kevent8)" & +sleep 99 +umount -f $mntpoint +killall kevent8 +wait + +while mount | grep -q $mntpoint; do + umount $mntpoint || sleep 1 +done +mdconfig -d -u $mdstart +rm -f /tmp/kevent8 + +exit +EOF +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define PARALLEL 64 + +static char path[80]; + +int fd; + +void * +spin(void *arg __unused) +{ + int i; + setproctitle("spin"); + + for (i= 0;; i++) { + snprintf(path, sizeof(path), "file.%06d.%d", getpid(), i); + if ((fd = open(path, O_CREAT | O_TRUNC | O_RDWR, 0622)) == -1) + err(1, "creat()"); + close(fd); + fd = 0; + unlink(path); + } + return (NULL); +} + +void * +test(void *arg __unused) +{ + int kq; + int i, n; + struct kevent ev; + struct timespec ts; + + for (i = 0; i < 500000; i++) { + if ((kq = kqueue()) < 0) + if (errno != ENOMEM) + err(1, "kqueue()"); + + n = 0; + memset(&ev, 0, sizeof(ev)); + EV_SET(&ev, fd, EVFILT_VNODE, EV_ADD | EV_ENABLE | EV_CLEAR, + NOTE_DELETE|NOTE_RENAME|NOTE_EXTEND, 0, 0); + n++; + + if (kevent(kq, &ev, n, NULL, 0, NULL) < 0) + continue; /* Note: missing close(kq)! */ + + memset(&ev, 0, sizeof(ev)); + ts.tv_sec = 0; + ts.tv_nsec = 1000000; + if ((n = kevent(kq, NULL, 0, &ev, 1, &ts)) == -1) + err(1, "kevent()"); + + close(kq); + } + return (NULL); +} + + +int +main(void) +{ + int i; + pthread_t cp[PARALLEL], sp; + + if (pthread_create(&sp, NULL, spin, NULL) != 0) + perror("pthread_create"); + + for (i = 0; i < PARALLEL; i++) { + if (pthread_create(&cp[i], NULL, test, NULL) != 0) + perror("pthread_create"); + } + + + for (i = 0; i < PARALLEL; i++) + pthread_join(cp[i], NULL); + + close(fd); + + return (0); +} From owner-svn-src-user@FreeBSD.ORG Tue Nov 5 12:55:32 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id A7359F5E; Tue, 5 Nov 2013 12:55:32 +0000 (UTC) (envelope-from ray@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 90F6E2505; Tue, 5 Nov 2013 12:55:32 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA5CtW08068345; Tue, 5 Nov 2013 12:55:32 GMT (envelope-from ray@svn.freebsd.org) Received: (from ray@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA5CtVaE068335; Tue, 5 Nov 2013 12:55:31 GMT (envelope-from ray@svn.freebsd.org) Message-Id: <201311051255.rA5CtVaE068335@svn.freebsd.org> From: Aleksandr Rybalko Date: Tue, 5 Nov 2013 12:55:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257700 - in user/ed/newcons: . bin/df bin/sh cddl/contrib/opensolaris/cmd/lockstat cddl/contrib/opensolaris/common/ctf cddl/contrib/opensolaris/lib/libnvpair cddl/lib/libnvpair cddl/us... X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Nov 2013 12:55:32 -0000 Author: ray Date: Tue Nov 5 12:55:28 2013 New Revision: 257700 URL: http://svnweb.freebsd.org/changeset/base/257700 Log: MFC @r257698. Added: user/ed/newcons/contrib/byacc/package/mingw-byacc.spec - copied unchanged from r257698, head/contrib/byacc/package/mingw-byacc.spec user/ed/newcons/contrib/tzdata/leap-seconds.list - copied unchanged from r257698, head/contrib/tzdata/leap-seconds.list user/ed/newcons/etc/pkg/ - copied from r257698, head/etc/pkg/ user/ed/newcons/lib/libc/capability/cap_rights_init.3 - copied unchanged from r257698, head/lib/libc/capability/cap_rights_init.3 user/ed/newcons/lib/libc/gen/cap_rights_get.3 - copied unchanged from r257698, head/lib/libc/gen/cap_rights_get.3 user/ed/newcons/share/keys/ - copied from r257698, head/share/keys/ user/ed/newcons/share/man/man4/rights.4 - copied unchanged from r257698, head/share/man/man4/rights.4 user/ed/newcons/share/man/man4/urtwnfw.4 - copied unchanged from r257698, head/share/man/man4/urtwnfw.4 user/ed/newcons/sys/arm/arm/devmap.c - copied unchanged from r257698, head/sys/arm/arm/devmap.c user/ed/newcons/sys/arm/conf/WANDBOARD-DUAL - copied unchanged from r257698, head/sys/arm/conf/WANDBOARD-DUAL user/ed/newcons/sys/arm/conf/WANDBOARD-QUAD - copied unchanged from r257698, head/sys/arm/conf/WANDBOARD-QUAD user/ed/newcons/sys/arm/conf/WANDBOARD-SOLO - copied unchanged from r257698, head/sys/arm/conf/WANDBOARD-SOLO user/ed/newcons/sys/arm/conf/WANDBOARD.common - copied unchanged from r257698, head/sys/arm/conf/WANDBOARD.common user/ed/newcons/sys/arm/freescale/imx/files.imx6 - copied unchanged from r257698, head/sys/arm/freescale/imx/files.imx6 user/ed/newcons/sys/arm/freescale/imx/imx6_anatop.c - copied unchanged from r257698, head/sys/arm/freescale/imx/imx6_anatop.c user/ed/newcons/sys/arm/freescale/imx/imx6_anatopreg.h - copied unchanged from r257698, head/sys/arm/freescale/imx/imx6_anatopreg.h user/ed/newcons/sys/arm/freescale/imx/imx6_anatopvar.h - copied unchanged from r257698, head/sys/arm/freescale/imx/imx6_anatopvar.h user/ed/newcons/sys/arm/freescale/imx/imx6_ccm.c - copied unchanged from r257698, head/sys/arm/freescale/imx/imx6_ccm.c user/ed/newcons/sys/arm/freescale/imx/imx6_ccmreg.h - copied unchanged from r257698, head/sys/arm/freescale/imx/imx6_ccmreg.h user/ed/newcons/sys/arm/freescale/imx/imx6_machdep.c - copied unchanged from r257698, head/sys/arm/freescale/imx/imx6_machdep.c user/ed/newcons/sys/arm/freescale/imx/imx6_pl310.c - copied unchanged from r257698, head/sys/arm/freescale/imx/imx6_pl310.c user/ed/newcons/sys/arm/freescale/imx/imx6_usbphy.c - copied unchanged from r257698, head/sys/arm/freescale/imx/imx6_usbphy.c user/ed/newcons/sys/arm/freescale/imx/imx_machdep.c - copied unchanged from r257698, head/sys/arm/freescale/imx/imx_machdep.c user/ed/newcons/sys/arm/freescale/imx/imx_machdep.h - copied unchanged from r257698, head/sys/arm/freescale/imx/imx_machdep.h user/ed/newcons/sys/arm/freescale/imx/imx_nop_usbphy.c - copied unchanged from r257698, head/sys/arm/freescale/imx/imx_nop_usbphy.c user/ed/newcons/sys/arm/freescale/imx/imx_sdhci.c - copied unchanged from r257698, head/sys/arm/freescale/imx/imx_sdhci.c user/ed/newcons/sys/arm/freescale/imx/std.imx6 - copied unchanged from r257698, head/sys/arm/freescale/imx/std.imx6 user/ed/newcons/sys/arm/include/devmap.h - copied unchanged from r257698, head/sys/arm/include/devmap.h user/ed/newcons/sys/boot/fdt/dts/imx6.dtsi - copied unchanged from r257698, head/sys/boot/fdt/dts/imx6.dtsi user/ed/newcons/sys/boot/fdt/dts/wandboard-dual.dts - copied unchanged from r257698, head/sys/boot/fdt/dts/wandboard-dual.dts user/ed/newcons/sys/boot/fdt/dts/wandboard-quad.dts - copied unchanged from r257698, head/sys/boot/fdt/dts/wandboard-quad.dts user/ed/newcons/sys/boot/fdt/dts/wandboard-solo.dts - copied unchanged from r257698, head/sys/boot/fdt/dts/wandboard-solo.dts user/ed/newcons/sys/dev/netmap/netmap_mem2.h - copied unchanged from r257698, head/sys/dev/netmap/netmap_mem2.h user/ed/newcons/sys/net/ifq.h - copied unchanged from r257698, head/sys/net/ifq.h user/ed/newcons/sys/netpfil/pf/pf.h - copied unchanged from r257698, head/sys/netpfil/pf/pf.h user/ed/newcons/sys/netpfil/pf/pf_altq.h - copied unchanged from r257698, head/sys/netpfil/pf/pf_altq.h user/ed/newcons/sys/netpfil/pf/pf_mtag.h - copied unchanged from r257698, head/sys/netpfil/pf/pf_mtag.h user/ed/newcons/sys/powerpc/mpc85xx/pci_mpc85xx.c - copied unchanged from r257698, head/sys/powerpc/mpc85xx/pci_mpc85xx.c user/ed/newcons/sys/x86/include/busdma_impl.h - copied unchanged from r257698, head/sys/x86/include/busdma_impl.h user/ed/newcons/sys/x86/iommu/ - copied from r257698, head/sys/x86/iommu/ user/ed/newcons/sys/x86/x86/busdma_bounce.c - copied unchanged from r257698, head/sys/x86/x86/busdma_bounce.c user/ed/newcons/tools/build/options/WITHOUT_NMTREE - copied unchanged from r257698, head/tools/build/options/WITHOUT_NMTREE user/ed/newcons/tools/regression/bin/sh/builtins/trap13.0 - copied unchanged from r257698, head/tools/regression/bin/sh/builtins/trap13.0 user/ed/newcons/tools/regression/bin/sh/builtins/trap14.0 - copied unchanged from r257698, head/tools/regression/bin/sh/builtins/trap14.0 user/ed/newcons/usr.sbin/bhyve/legacy_irq.c - copied unchanged from r257698, head/usr.sbin/bhyve/legacy_irq.c user/ed/newcons/usr.sbin/bhyve/legacy_irq.h - copied unchanged from r257698, head/usr.sbin/bhyve/legacy_irq.h user/ed/newcons/usr.sbin/bhyve/pci_lpc.c - copied unchanged from r257698, head/usr.sbin/bhyve/pci_lpc.c user/ed/newcons/usr.sbin/bhyve/pci_lpc.h - copied unchanged from r257698, head/usr.sbin/bhyve/pci_lpc.h user/ed/newcons/usr.sbin/bhyve/uart_emul.c - copied unchanged from r257698, head/usr.sbin/bhyve/uart_emul.c user/ed/newcons/usr.sbin/bhyve/uart_emul.h - copied unchanged from r257698, head/usr.sbin/bhyve/uart_emul.h user/ed/newcons/usr.sbin/pkg/pkg.7 - copied unchanged from r257698, head/usr.sbin/pkg/pkg.7 Deleted: user/ed/newcons/etc/namedb/ user/ed/newcons/etc/periodic/daily/220.backup-pkgdb user/ed/newcons/etc/periodic/daily/470.status-named user/ed/newcons/etc/periodic/daily/490.status-pkg-changes user/ed/newcons/etc/periodic/security/460.chkportsum user/ed/newcons/etc/periodic/weekly/400.status-pkg user/ed/newcons/etc/rc.d/named user/ed/newcons/lib/libiconv_compat/ user/ed/newcons/share/man/man4/ng_fec.4 user/ed/newcons/sys/amd64/vmm/io/vdev.c user/ed/newcons/sys/amd64/vmm/io/vdev.h user/ed/newcons/sys/modules/netgraph/fec/ user/ed/newcons/sys/net/pf_mtag.h user/ed/newcons/sys/netgraph/ng_fec.c user/ed/newcons/sys/netgraph/ng_fec.h user/ed/newcons/sys/powerpc/include/trap_aim.h user/ed/newcons/sys/powerpc/include/trap_booke.h user/ed/newcons/sys/powerpc/mpc85xx/pci_fdt.c user/ed/newcons/tools/build/options/WITH_NMTREE user/ed/newcons/tools/build/options/WITH_PKGTOOLS user/ed/newcons/usr.sbin/pkg_install/ Modified: user/ed/newcons/Makefile.inc1 user/ed/newcons/ObsoleteFiles.inc user/ed/newcons/UPDATING user/ed/newcons/bin/df/df.1 user/ed/newcons/bin/sh/nodetypes user/ed/newcons/bin/sh/sh.1 user/ed/newcons/bin/sh/trap.c user/ed/newcons/cddl/contrib/opensolaris/cmd/lockstat/lockstat.1 user/ed/newcons/cddl/contrib/opensolaris/cmd/lockstat/sym.c user/ed/newcons/cddl/contrib/opensolaris/common/ctf/ctf_create.c user/ed/newcons/cddl/contrib/opensolaris/lib/libnvpair/libnvpair.c user/ed/newcons/cddl/lib/libnvpair/Makefile user/ed/newcons/cddl/usr.sbin/lockstat/Makefile user/ed/newcons/contrib/binutils/bfd/elf32-score.c user/ed/newcons/contrib/binutils/bfd/elflink.c user/ed/newcons/contrib/binutils/bfd/po/bfd.pot user/ed/newcons/contrib/binutils/binutils/readelf.c user/ed/newcons/contrib/binutils/gas/config/atof-ieee.c user/ed/newcons/contrib/binutils/gas/symbols.c user/ed/newcons/contrib/binutils/opcodes/i386-dis.c user/ed/newcons/contrib/byacc/CHANGES user/ed/newcons/contrib/byacc/VERSION user/ed/newcons/contrib/byacc/aclocal.m4 user/ed/newcons/contrib/byacc/config.guess user/ed/newcons/contrib/byacc/config.sub user/ed/newcons/contrib/byacc/configure user/ed/newcons/contrib/byacc/package/byacc.spec user/ed/newcons/contrib/byacc/package/debian/changelog user/ed/newcons/contrib/byacc/reader.c user/ed/newcons/contrib/byacc/skeleton.c user/ed/newcons/contrib/byacc/test/calc.tab.c user/ed/newcons/contrib/byacc/test/calc1.tab.c user/ed/newcons/contrib/byacc/test/calc2.tab.c user/ed/newcons/contrib/byacc/test/calc3.tab.c user/ed/newcons/contrib/byacc/test/code_calc.code.c user/ed/newcons/contrib/byacc/test/code_error.code.c user/ed/newcons/contrib/byacc/test/error.tab.c user/ed/newcons/contrib/byacc/test/ftp.tab.c user/ed/newcons/contrib/byacc/test/grammar.tab.c user/ed/newcons/contrib/byacc/test/pure_calc.tab.c user/ed/newcons/contrib/byacc/test/pure_error.tab.c user/ed/newcons/contrib/byacc/test/quote_calc-s.tab.c user/ed/newcons/contrib/byacc/test/quote_calc.tab.c user/ed/newcons/contrib/byacc/test/quote_calc2-s.tab.c user/ed/newcons/contrib/byacc/test/quote_calc2.tab.c user/ed/newcons/contrib/byacc/test/quote_calc3-s.tab.c user/ed/newcons/contrib/byacc/test/quote_calc3.tab.c user/ed/newcons/contrib/byacc/test/quote_calc4-s.tab.c user/ed/newcons/contrib/byacc/test/quote_calc4.tab.c user/ed/newcons/contrib/gcclibs/libssp/ssp.c user/ed/newcons/contrib/gperf/src/options.cc user/ed/newcons/contrib/groff/src/roff/troff/input.cpp user/ed/newcons/contrib/groff/src/roff/troff/mtsm.cpp user/ed/newcons/contrib/groff/src/roff/troff/node.cpp user/ed/newcons/contrib/libpcap/bpf/net/bpf_filter.c user/ed/newcons/contrib/libpcap/bpf_dump.c user/ed/newcons/contrib/libpcap/bpf_image.c user/ed/newcons/contrib/libpcap/grammar.y user/ed/newcons/contrib/libpcap/pcap/bpf.h user/ed/newcons/contrib/libpcap/pcap/pcap.h user/ed/newcons/contrib/libreadline/bind.c user/ed/newcons/contrib/libreadline/complete.c user/ed/newcons/contrib/libreadline/display.c user/ed/newcons/contrib/libreadline/histexpand.c user/ed/newcons/contrib/libreadline/history.c user/ed/newcons/contrib/libreadline/input.c user/ed/newcons/contrib/libreadline/search.c user/ed/newcons/contrib/libreadline/support/shobj-conf user/ed/newcons/contrib/libreadline/tilde.c user/ed/newcons/contrib/llvm/tools/clang/tools/driver/driver.cpp user/ed/newcons/contrib/opie/libopie/accessfile.c user/ed/newcons/contrib/opie/libopie/generator.c user/ed/newcons/contrib/opie/libopie/lookup.c user/ed/newcons/contrib/opie/libopie/newseed.c user/ed/newcons/contrib/opie/libopie/parsechallenge.c user/ed/newcons/contrib/opie/libopie/passwd.c user/ed/newcons/contrib/opie/libopie/randomchallenge.c user/ed/newcons/contrib/opie/libopie/verify.c user/ed/newcons/contrib/opie/libopie/version.c user/ed/newcons/contrib/opie/opie.h user/ed/newcons/contrib/opie/opieinfo.c user/ed/newcons/contrib/opie/opiekey.c user/ed/newcons/contrib/subversion/subversion/libsvn_subr/opt.c user/ed/newcons/contrib/subversion/subversion/libsvn_subr/version.c user/ed/newcons/contrib/tcp_wrappers/clean_exit.c user/ed/newcons/contrib/tcp_wrappers/hosts_access.c user/ed/newcons/contrib/tcp_wrappers/options.c user/ed/newcons/contrib/tcp_wrappers/percent_x.c user/ed/newcons/contrib/tcp_wrappers/rfc931.c user/ed/newcons/contrib/tcp_wrappers/shell_cmd.c user/ed/newcons/contrib/tcp_wrappers/update.c user/ed/newcons/contrib/tcpdump/print-ip.c user/ed/newcons/contrib/tzdata/africa user/ed/newcons/contrib/tzdata/antarctica user/ed/newcons/contrib/tzdata/asia user/ed/newcons/contrib/tzdata/australasia user/ed/newcons/contrib/tzdata/backward user/ed/newcons/contrib/tzdata/etcetera user/ed/newcons/contrib/tzdata/europe user/ed/newcons/contrib/tzdata/northamerica user/ed/newcons/contrib/tzdata/southamerica user/ed/newcons/contrib/tzdata/zone.tab user/ed/newcons/contrib/wpa/src/utils/radiotap.h user/ed/newcons/etc/Makefile user/ed/newcons/etc/defaults/periodic.conf user/ed/newcons/etc/defaults/rc.conf user/ed/newcons/etc/freebsd-update.conf user/ed/newcons/etc/mtree/BSD.include.dist user/ed/newcons/etc/mtree/BSD.root.dist user/ed/newcons/etc/mtree/BSD.usr.dist user/ed/newcons/etc/network.subr user/ed/newcons/etc/periodic/daily/Makefile user/ed/newcons/etc/periodic/security/Makefile user/ed/newcons/etc/periodic/weekly/Makefile user/ed/newcons/etc/rc.d/Makefile user/ed/newcons/etc/rc.d/netif user/ed/newcons/etc/rc.d/ntpdate user/ed/newcons/etc/rc.d/rpcbind user/ed/newcons/etc/rc.d/syslogd user/ed/newcons/gnu/lib/libgcc/Makefile user/ed/newcons/gnu/usr.bin/binutils/ld/Makefile user/ed/newcons/gnu/usr.bin/binutils/ld/ld.1 user/ed/newcons/include/Makefile user/ed/newcons/include/iconv.h user/ed/newcons/lib/Makefile user/ed/newcons/lib/csu/arm/crt1.c user/ed/newcons/lib/libc/capability/Makefile.inc user/ed/newcons/lib/libc/gen/Makefile.inc user/ed/newcons/lib/libc/iconv/Symbol.map user/ed/newcons/lib/libc/iconv/iconv.c user/ed/newcons/lib/libc/string/strlcpy.3 user/ed/newcons/lib/libc/sys/cap_ioctls_limit.2 user/ed/newcons/lib/libc/sys/cap_rights_limit.2 user/ed/newcons/lib/libc/sys/kqueue.2 user/ed/newcons/lib/libcam/camlib.c user/ed/newcons/lib/libnetgraph/debug.c user/ed/newcons/lib/libproc/_libproc.h user/ed/newcons/lib/libproc/proc_bkpt.c user/ed/newcons/lib/libproc/proc_create.c user/ed/newcons/lib/libproc/proc_regs.c user/ed/newcons/lib/libproc/proc_sym.c user/ed/newcons/lib/libproc/proc_util.c user/ed/newcons/lib/libutil/login.conf.5 user/ed/newcons/lib/libz/FREEBSD-upgrade (contents, props changed) user/ed/newcons/lib/libz/Makefile (contents, props changed) user/ed/newcons/lib/libz/Symbol.map (contents, props changed) user/ed/newcons/lib/libz/Versions.def (contents, props changed) user/ed/newcons/lib/libz/zopen.c (contents, props changed) user/ed/newcons/lib/msun/arm/fenv.h user/ed/newcons/libexec/rbootd/bpf.c user/ed/newcons/release/picobsd/build/picobsd user/ed/newcons/release/release.sh user/ed/newcons/sbin/camcontrol/camcontrol.c user/ed/newcons/sbin/hastctl/hastctl.c user/ed/newcons/sbin/hastd/control.c user/ed/newcons/sbin/hastd/hast.h user/ed/newcons/sbin/hastd/hastd.8 user/ed/newcons/sbin/hastd/primary.c user/ed/newcons/sbin/hastd/secondary.c user/ed/newcons/sbin/ifconfig/Makefile user/ed/newcons/sbin/mdconfig/mdconfig.8 user/ed/newcons/sbin/newfs/mkfs.c user/ed/newcons/sbin/nvmecontrol/perftest.c user/ed/newcons/sbin/pfctl/pf_print_state.c user/ed/newcons/share/Makefile user/ed/newcons/share/examples/bhyve/vmrun.sh user/ed/newcons/share/i18n/csmapper/JIS/JISX0201-KANA%UCS.src user/ed/newcons/share/i18n/csmapper/JIS/JISX0208@1990%UCS.src user/ed/newcons/share/i18n/csmapper/JIS/UCS%JISX0201-KANA.src user/ed/newcons/share/i18n/csmapper/JIS/UCS%JISX0208@1990.src user/ed/newcons/share/i18n/csmapper/JIS/charset.pivot.JIS.src user/ed/newcons/share/i18n/csmapper/JIS/mapper.dir.JIS.src user/ed/newcons/share/i18n/esdb/EUC/EUC-JP.src user/ed/newcons/share/man/man3/tree.3 user/ed/newcons/share/man/man4/Makefile user/ed/newcons/share/man/man4/altera_atse.4 user/ed/newcons/share/man/man4/bpf.4 user/ed/newcons/share/man/man4/capsicum.4 user/ed/newcons/share/man/man4/lagg.4 user/ed/newcons/share/man/man4/natm.4 user/ed/newcons/share/man/man4/netgraph.4 user/ed/newcons/share/man/man4/netmap.4 user/ed/newcons/share/man/man4/urtwn.4 user/ed/newcons/share/man/man5/rc.conf.5 user/ed/newcons/share/man/man5/src.conf.5 user/ed/newcons/share/man/man7/hier.7 user/ed/newcons/share/man/man9/getenv.9 user/ed/newcons/share/man/man9/ifnet.9 user/ed/newcons/share/misc/bsd-family-tree user/ed/newcons/share/misc/committers-ports.dot user/ed/newcons/share/misc/committers-src.dot user/ed/newcons/share/mk/bsd.own.mk user/ed/newcons/share/mk/bsd.prog.mk user/ed/newcons/sys/amd64/amd64/bpf_jit_machdep.c user/ed/newcons/sys/amd64/amd64/minidump_machdep.c user/ed/newcons/sys/amd64/amd64/trap.c user/ed/newcons/sys/amd64/conf/GENERIC user/ed/newcons/sys/amd64/conf/NOTES user/ed/newcons/sys/amd64/vmm/intel/vmcs.c user/ed/newcons/sys/amd64/vmm/intel/vmx.c user/ed/newcons/sys/amd64/vmm/intel/vmx_genassym.c user/ed/newcons/sys/amd64/vmm/intel/vtd.c user/ed/newcons/sys/amd64/vmm/io/vlapic.c user/ed/newcons/sys/amd64/vmm/io/vlapic.h user/ed/newcons/sys/amd64/vmm/vmm.c user/ed/newcons/sys/amd64/vmm/vmm_dev.c user/ed/newcons/sys/amd64/vmm/vmm_instruction_emul.c user/ed/newcons/sys/amd64/vmm/vmm_ktr.h user/ed/newcons/sys/amd64/vmm/vmm_lapic.c user/ed/newcons/sys/arm/allwinner/a10_clk.c user/ed/newcons/sys/arm/allwinner/a10_gpio.c user/ed/newcons/sys/arm/allwinner/a10_machdep.c user/ed/newcons/sys/arm/allwinner/a20/a20_cpu_cfg.c user/ed/newcons/sys/arm/allwinner/timer.c user/ed/newcons/sys/arm/arm/bus_space_generic.c user/ed/newcons/sys/arm/arm/busdma_machdep-v6.c user/ed/newcons/sys/arm/arm/busdma_machdep.c user/ed/newcons/sys/arm/arm/cpufunc.c user/ed/newcons/sys/arm/arm/cpufunc_asm_pj4b.S user/ed/newcons/sys/arm/arm/genassym.c user/ed/newcons/sys/arm/arm/generic_timer.c user/ed/newcons/sys/arm/arm/gic.c user/ed/newcons/sys/arm/arm/identcpu.c user/ed/newcons/sys/arm/arm/locore.S user/ed/newcons/sys/arm/arm/machdep.c user/ed/newcons/sys/arm/arm/minidump_machdep.c user/ed/newcons/sys/arm/arm/mp_machdep.c user/ed/newcons/sys/arm/arm/mpcore_timer.c user/ed/newcons/sys/arm/arm/nexus.c user/ed/newcons/sys/arm/arm/pmap-v6.c user/ed/newcons/sys/arm/arm/pmap.c user/ed/newcons/sys/arm/arm/trap.c user/ed/newcons/sys/arm/arm/undefined.c user/ed/newcons/sys/arm/arm/vfp.c user/ed/newcons/sys/arm/arm/vm_machdep.c user/ed/newcons/sys/arm/at91/at91.c user/ed/newcons/sys/arm/at91/at91_machdep.c user/ed/newcons/sys/arm/at91/at91_mci.c user/ed/newcons/sys/arm/at91/at91_pmc.c user/ed/newcons/sys/arm/at91/if_ate.c user/ed/newcons/sys/arm/broadcom/bcm2835/bcm2835_dma.c user/ed/newcons/sys/arm/broadcom/bcm2835/bcm2835_fb.c user/ed/newcons/sys/arm/broadcom/bcm2835/bcm2835_gpio.c user/ed/newcons/sys/arm/broadcom/bcm2835/bcm2835_machdep.c user/ed/newcons/sys/arm/broadcom/bcm2835/bcm2835_mbox.c user/ed/newcons/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c user/ed/newcons/sys/arm/broadcom/bcm2835/bcm2835_spi.c user/ed/newcons/sys/arm/broadcom/bcm2835/bcm2835_systimer.c user/ed/newcons/sys/arm/conf/ARMADAXP user/ed/newcons/sys/arm/conf/DIGI-CCWMX53 user/ed/newcons/sys/arm/econa/econa.c user/ed/newcons/sys/arm/econa/econa_machdep.c user/ed/newcons/sys/arm/econa/if_ece.c user/ed/newcons/sys/arm/econa/timer.c user/ed/newcons/sys/arm/freescale/imx/files.imx51 user/ed/newcons/sys/arm/freescale/imx/files.imx53 user/ed/newcons/sys/arm/freescale/imx/imx51_ccm.c user/ed/newcons/sys/arm/freescale/imx/imx51_ccmreg.h user/ed/newcons/sys/arm/freescale/imx/imx51_ipuv3.c user/ed/newcons/sys/arm/freescale/imx/imx51_machdep.c user/ed/newcons/sys/arm/freescale/imx/imx53_machdep.c user/ed/newcons/sys/arm/freescale/imx/imx_gpt.c user/ed/newcons/sys/arm/freescale/imx/tzic.c user/ed/newcons/sys/arm/include/armreg.h user/ed/newcons/sys/arm/include/atomic.h user/ed/newcons/sys/arm/include/cpu.h user/ed/newcons/sys/arm/include/cpufunc.h user/ed/newcons/sys/arm/include/fdt.h user/ed/newcons/sys/arm/include/frame.h user/ed/newcons/sys/arm/include/machdep.h user/ed/newcons/sys/arm/include/pcb.h user/ed/newcons/sys/arm/include/pcpu.h user/ed/newcons/sys/arm/include/pmap.h user/ed/newcons/sys/arm/include/undefined.h user/ed/newcons/sys/arm/include/vmparam.h user/ed/newcons/sys/arm/lpc/if_lpe.c user/ed/newcons/sys/arm/lpc/lpc_fb.c user/ed/newcons/sys/arm/lpc/lpc_gpio.c user/ed/newcons/sys/arm/lpc/lpc_machdep.c user/ed/newcons/sys/arm/lpc/lpc_mmc.c user/ed/newcons/sys/arm/lpc/lpc_spi.c user/ed/newcons/sys/arm/lpc/lpc_timer.c user/ed/newcons/sys/arm/mv/armadaxp/std.armadaxp user/ed/newcons/sys/arm/mv/common.c user/ed/newcons/sys/arm/mv/mv_localbus.c user/ed/newcons/sys/arm/mv/mv_machdep.c user/ed/newcons/sys/arm/mv/mv_sata.c user/ed/newcons/sys/arm/mv/mvvar.h user/ed/newcons/sys/arm/mv/orion/db88f5xxx.c user/ed/newcons/sys/arm/mv/timer.c user/ed/newcons/sys/arm/rockchip/rk30xx_gpio.c user/ed/newcons/sys/arm/rockchip/rk30xx_grf.c user/ed/newcons/sys/arm/rockchip/rk30xx_machdep.c user/ed/newcons/sys/arm/rockchip/rk30xx_pmu.c user/ed/newcons/sys/arm/s3c2xx0/files.s3c2xx0 user/ed/newcons/sys/arm/s3c2xx0/s3c24x0.c user/ed/newcons/sys/arm/s3c2xx0/s3c24x0_machdep.c user/ed/newcons/sys/arm/s3c2xx0/s3c2xx0_space.c user/ed/newcons/sys/arm/sa11x0/assabet_machdep.c user/ed/newcons/sys/arm/sa11x0/sa11x0.c user/ed/newcons/sys/arm/sa11x0/sa11x0_io.c user/ed/newcons/sys/arm/samsung/exynos/arch_timer.c user/ed/newcons/sys/arm/samsung/exynos/exynos5_machdep.c user/ed/newcons/sys/arm/tegra/tegra2_machdep.c user/ed/newcons/sys/arm/ti/am335x/am335x_dmtimer.c user/ed/newcons/sys/arm/ti/am335x/am335x_lcd_syscons.c user/ed/newcons/sys/arm/ti/am335x/am335x_prcm.c user/ed/newcons/sys/arm/ti/am335x/am335x_scm_padconf.c user/ed/newcons/sys/arm/ti/cpsw/if_cpsw.c user/ed/newcons/sys/arm/ti/omap4/omap4_prcm_clks.c user/ed/newcons/sys/arm/ti/omap4/omap4_scm_padconf.c user/ed/newcons/sys/arm/ti/omap4/pandaboard/pandaboard.c user/ed/newcons/sys/arm/ti/ti_cpuid.c user/ed/newcons/sys/arm/ti/ti_machdep.c user/ed/newcons/sys/arm/ti/ti_mmchs.c user/ed/newcons/sys/arm/ti/ti_prcm.c user/ed/newcons/sys/arm/ti/ti_scm.c user/ed/newcons/sys/arm/ti/ti_sdhci.c user/ed/newcons/sys/arm/ti/twl/twl.c user/ed/newcons/sys/arm/ti/twl/twl_clks.c user/ed/newcons/sys/arm/ti/twl/twl_vreg.c user/ed/newcons/sys/arm/versatile/if_smc_fdt.c user/ed/newcons/sys/arm/versatile/pl050.c user/ed/newcons/sys/arm/versatile/sp804.c user/ed/newcons/sys/arm/versatile/versatile_clcd.c user/ed/newcons/sys/arm/versatile/versatile_machdep.c user/ed/newcons/sys/arm/versatile/versatile_pci.c user/ed/newcons/sys/arm/versatile/versatile_timer.c user/ed/newcons/sys/arm/xilinx/zy7_machdep.c user/ed/newcons/sys/arm/xscale/i80321/ep80219_machdep.c user/ed/newcons/sys/arm/xscale/i80321/i80321_pci.c user/ed/newcons/sys/arm/xscale/i80321/iq31244_machdep.c user/ed/newcons/sys/arm/xscale/i80321/iq80321.c user/ed/newcons/sys/arm/xscale/i8134x/crb_machdep.c user/ed/newcons/sys/arm/xscale/i8134x/i81342_pci.c user/ed/newcons/sys/arm/xscale/ixp425/avila_machdep.c user/ed/newcons/sys/arm/xscale/ixp425/if_npe.c user/ed/newcons/sys/arm/xscale/ixp425/ixp425_pci.c user/ed/newcons/sys/arm/xscale/ixp425/ixp425_wdog.c user/ed/newcons/sys/arm/xscale/pxa/if_smc_smi.c user/ed/newcons/sys/arm/xscale/pxa/pxa_machdep.c user/ed/newcons/sys/arm/xscale/pxa/pxa_obio.c user/ed/newcons/sys/boot/arm/uboot/Makefile user/ed/newcons/sys/boot/fdt/dts/am335x.dtsi user/ed/newcons/sys/boot/fdt/dts/beaglebone-black.dts user/ed/newcons/sys/boot/fdt/dts/db78460.dts user/ed/newcons/sys/boot/fdt/dts/digi-ccwmx53.dts user/ed/newcons/sys/boot/fdt/dts/imx51x.dtsi user/ed/newcons/sys/boot/fdt/dts/imx53-qsb.dts user/ed/newcons/sys/boot/fdt/dts/imx53x.dtsi user/ed/newcons/sys/boot/forth/beastie.4th user/ed/newcons/sys/boot/forth/loader.4th user/ed/newcons/sys/boot/forth/loader.4th.8 user/ed/newcons/sys/boot/forth/loader.conf user/ed/newcons/sys/boot/forth/loader.conf.5 user/ed/newcons/sys/boot/forth/loader.rc user/ed/newcons/sys/boot/forth/menu-commands.4th user/ed/newcons/sys/boot/forth/menu.4th user/ed/newcons/sys/boot/forth/menu.rc user/ed/newcons/sys/boot/forth/menusets.4th user/ed/newcons/sys/boot/i386/loader/loader.rc user/ed/newcons/sys/boot/powerpc/ps3/start.S user/ed/newcons/sys/boot/uboot/lib/disk.c user/ed/newcons/sys/boot/uboot/lib/glue.c user/ed/newcons/sys/cam/cam.h user/ed/newcons/sys/cam/cam_xpt.c user/ed/newcons/sys/cam/scsi/scsi_xpt.c user/ed/newcons/sys/cddl/contrib/opensolaris/uts/common/sys/fasttrap_impl.h user/ed/newcons/sys/cddl/contrib/opensolaris/uts/intel/dtrace/fasttrap_isa.c user/ed/newcons/sys/cddl/dev/dtrace/amd64/dtrace_subr.c user/ed/newcons/sys/cddl/dev/sdt/sdt.c user/ed/newcons/sys/compat/linprocfs/linprocfs.c user/ed/newcons/sys/compat/linsysfs/linsysfs.c user/ed/newcons/sys/compat/linux/linux_ioctl.c user/ed/newcons/sys/compat/linux/linux_socket.c user/ed/newcons/sys/compat/ndis/kern_ndis.c user/ed/newcons/sys/compat/ndis/subr_ndis.c user/ed/newcons/sys/compat/ndis/subr_usbd.c user/ed/newcons/sys/compat/svr4/svr4_sockio.c user/ed/newcons/sys/conf/Makefile.arm user/ed/newcons/sys/conf/NOTES user/ed/newcons/sys/conf/files user/ed/newcons/sys/conf/files.amd64 user/ed/newcons/sys/conf/files.arm user/ed/newcons/sys/conf/files.i386 user/ed/newcons/sys/conf/files.pc98 user/ed/newcons/sys/conf/files.powerpc user/ed/newcons/sys/conf/options user/ed/newcons/sys/contrib/altq/altq/altq_cbq.c user/ed/newcons/sys/contrib/altq/altq/altq_cdnr.c user/ed/newcons/sys/contrib/altq/altq/altq_hfsc.c user/ed/newcons/sys/contrib/altq/altq/altq_priq.c user/ed/newcons/sys/contrib/altq/altq/altq_red.c user/ed/newcons/sys/contrib/altq/altq/altq_rio.c user/ed/newcons/sys/contrib/altq/altq/altq_rmclass.c user/ed/newcons/sys/contrib/altq/altq/altq_subr.c user/ed/newcons/sys/contrib/ipfilter/netinet/ip_compat.h user/ed/newcons/sys/contrib/ipfilter/netinet/radix_ipf.c user/ed/newcons/sys/dev/acpica/acpi.c user/ed/newcons/sys/dev/acpica/acpi_pci.c user/ed/newcons/sys/dev/adb/adb_kbd.c user/ed/newcons/sys/dev/ae/if_ae.c user/ed/newcons/sys/dev/age/if_age.c user/ed/newcons/sys/dev/aic7xxx/aicasm/Makefile user/ed/newcons/sys/dev/alc/if_alc.c user/ed/newcons/sys/dev/ale/if_ale.c user/ed/newcons/sys/dev/altera/atse/if_atse_fdt.c user/ed/newcons/sys/dev/altera/atse/if_atse_nexus.c user/ed/newcons/sys/dev/altera/avgen/altera_avgen_nexus.c user/ed/newcons/sys/dev/altera/jtag_uart/altera_jtag_uart_nexus.c user/ed/newcons/sys/dev/altera/sdcard/altera_sdcard_nexus.c user/ed/newcons/sys/dev/an/if_an.c user/ed/newcons/sys/dev/arcmsr/arcmsr.c user/ed/newcons/sys/dev/asr/asr.c user/ed/newcons/sys/dev/ath/ath_dfs/null/dfs_null.c user/ed/newcons/sys/dev/ath/ath_rate/sample/sample.c user/ed/newcons/sys/dev/ath/if_ath.c user/ed/newcons/sys/dev/ath/if_ath_ahb.c user/ed/newcons/sys/dev/ath/if_ath_beacon.c user/ed/newcons/sys/dev/ath/if_ath_btcoex.c user/ed/newcons/sys/dev/ath/if_ath_keycache.c user/ed/newcons/sys/dev/ath/if_ath_lna_div.c user/ed/newcons/sys/dev/ath/if_ath_pci.c user/ed/newcons/sys/dev/ath/if_ath_rx.c user/ed/newcons/sys/dev/ath/if_ath_rx_edma.c user/ed/newcons/sys/dev/ath/if_ath_spectral.c user/ed/newcons/sys/dev/ath/if_ath_sysctl.c user/ed/newcons/sys/dev/ath/if_ath_tdma.c user/ed/newcons/sys/dev/ath/if_ath_tx.c user/ed/newcons/sys/dev/ath/if_ath_tx_edma.c user/ed/newcons/sys/dev/bce/if_bce.c user/ed/newcons/sys/dev/bce/if_bcereg.h user/ed/newcons/sys/dev/bfe/if_bfe.c user/ed/newcons/sys/dev/bge/if_bge.c user/ed/newcons/sys/dev/bm/if_bm.c user/ed/newcons/sys/dev/bwi/bwimac.c user/ed/newcons/sys/dev/bwi/bwiphy.c user/ed/newcons/sys/dev/bwi/bwirf.c user/ed/newcons/sys/dev/bwi/if_bwi.c user/ed/newcons/sys/dev/bwi/if_bwi_pci.c user/ed/newcons/sys/dev/bwn/if_bwn.c user/ed/newcons/sys/dev/cadence/if_cgem.c user/ed/newcons/sys/dev/cas/if_cas.c user/ed/newcons/sys/dev/ce/if_ce.c user/ed/newcons/sys/dev/cesa/cesa.c user/ed/newcons/sys/dev/cfe/cfe_resource.c user/ed/newcons/sys/dev/cm/if_cm_isa.c user/ed/newcons/sys/dev/cm/smc90cx6.c user/ed/newcons/sys/dev/cp/if_cp.c user/ed/newcons/sys/dev/cs/if_cs.c user/ed/newcons/sys/dev/cs/if_cs_isa.c user/ed/newcons/sys/dev/cs/if_cs_pccard.c user/ed/newcons/sys/dev/cs/if_csvar.h user/ed/newcons/sys/dev/ctau/if_ct.c user/ed/newcons/sys/dev/cx/if_cx.c user/ed/newcons/sys/dev/cxgb/cxgb_adapter.h user/ed/newcons/sys/dev/cxgb/cxgb_main.c user/ed/newcons/sys/dev/cxgb/cxgb_sge.c user/ed/newcons/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c user/ed/newcons/sys/dev/cxgb/ulp/tom/cxgb_listen.c user/ed/newcons/sys/dev/cxgbe/adapter.h user/ed/newcons/sys/dev/cxgbe/common/t4_hw.c user/ed/newcons/sys/dev/cxgbe/t4_l2t.c user/ed/newcons/sys/dev/cxgbe/t4_main.c user/ed/newcons/sys/dev/cxgbe/t4_sge.c user/ed/newcons/sys/dev/cxgbe/t4_tracer.c user/ed/newcons/sys/dev/cxgbe/tom/t4_connect.c user/ed/newcons/sys/dev/cxgbe/tom/t4_tom.c user/ed/newcons/sys/dev/dc/dcphy.c user/ed/newcons/sys/dev/dc/if_dc.c user/ed/newcons/sys/dev/dc/pnphy.c user/ed/newcons/sys/dev/de/if_de.c user/ed/newcons/sys/dev/e1000/if_em.c user/ed/newcons/sys/dev/e1000/if_igb.c user/ed/newcons/sys/dev/e1000/if_lem.c user/ed/newcons/sys/dev/e1000/if_lem.h user/ed/newcons/sys/dev/ed/if_ed.c user/ed/newcons/sys/dev/ed/if_ed_3c503.c user/ed/newcons/sys/dev/ed/if_ed_hpp.c user/ed/newcons/sys/dev/ed/if_ed_pccard.c user/ed/newcons/sys/dev/ed/if_ed_rtl80x9.c user/ed/newcons/sys/dev/en/if_en_pci.c user/ed/newcons/sys/dev/en/midway.c user/ed/newcons/sys/dev/ep/if_ep.c user/ed/newcons/sys/dev/ep/if_ep_mca.c user/ed/newcons/sys/dev/et/if_et.c user/ed/newcons/sys/dev/etherswitch/arswitch/arswitch.c user/ed/newcons/sys/dev/etherswitch/arswitch/arswitch_phy.c user/ed/newcons/sys/dev/etherswitch/arswitch/arswitch_vlans.c user/ed/newcons/sys/dev/etherswitch/miiproxy.c user/ed/newcons/sys/dev/etherswitch/rtl8366/rtl8366rb.c user/ed/newcons/sys/dev/etherswitch/ukswitch/ukswitch.c user/ed/newcons/sys/dev/ex/if_ex.c user/ed/newcons/sys/dev/fatm/if_fatm.c user/ed/newcons/sys/dev/fdt/fdt_pci.c user/ed/newcons/sys/dev/fdt/fdt_slicer.c user/ed/newcons/sys/dev/fdt/fdtbus.c user/ed/newcons/sys/dev/fe/if_fe.c user/ed/newcons/sys/dev/fe/if_fe_pccard.c user/ed/newcons/sys/dev/ffec/if_ffec.c user/ed/newcons/sys/dev/firewire/if_fwe.c user/ed/newcons/sys/dev/firewire/if_fwip.c user/ed/newcons/sys/dev/firewire/sbp.c user/ed/newcons/sys/dev/fxp/if_fxp.c user/ed/newcons/sys/dev/fxp/inphy.c user/ed/newcons/sys/dev/gem/if_gem.c user/ed/newcons/sys/dev/gxemul/disk/gxemul_disk.c user/ed/newcons/sys/dev/gxemul/ether/if_gx.c user/ed/newcons/sys/dev/hatm/if_hatm.c user/ed/newcons/sys/dev/hatm/if_hatm_intr.c user/ed/newcons/sys/dev/hatm/if_hatm_ioctl.c user/ed/newcons/sys/dev/hatm/if_hatm_rx.c user/ed/newcons/sys/dev/hatm/if_hatm_tx.c user/ed/newcons/sys/dev/hme/if_hme.c user/ed/newcons/sys/dev/hme/if_hme_pci.c user/ed/newcons/sys/dev/hme/if_hme_sbus.c user/ed/newcons/sys/dev/hptiop/hptiop.c user/ed/newcons/sys/dev/hyperv/netvsc/hv_net_vsc.c user/ed/newcons/sys/dev/hyperv/netvsc/hv_netvsc_drv_freebsd.c user/ed/newcons/sys/dev/hyperv/vmbus/hv_vmbus_drv_freebsd.c user/ed/newcons/sys/dev/ic/ns16550.h user/ed/newcons/sys/dev/ie/if_ie.c user/ed/newcons/sys/dev/ie/if_ie_isa.c user/ed/newcons/sys/dev/if_ndis/if_ndis.c user/ed/newcons/sys/dev/if_ndis/if_ndis_pccard.c user/ed/newcons/sys/dev/if_ndis/if_ndis_pci.c user/ed/newcons/sys/dev/if_ndis/if_ndis_usb.c user/ed/newcons/sys/dev/iicbus/if_ic.c user/ed/newcons/sys/dev/ipmi/ipmi.c user/ed/newcons/sys/dev/ipw/if_ipw.c user/ed/newcons/sys/dev/iscsi_initiator/isc_cam.c user/ed/newcons/sys/dev/isp/isp_freebsd.c user/ed/newcons/sys/dev/isp/isp_freebsd.h user/ed/newcons/sys/dev/iwi/if_iwi.c user/ed/newcons/sys/dev/iwn/if_iwn.c user/ed/newcons/sys/dev/iwn/if_iwn_debug.h user/ed/newcons/sys/dev/iwn/if_iwn_devid.h user/ed/newcons/sys/dev/iwn/if_iwnreg.h user/ed/newcons/sys/dev/iwn/if_iwnvar.h user/ed/newcons/sys/dev/ixgb/if_ixgb.h user/ed/newcons/sys/dev/ixgbe/ixgbe.c user/ed/newcons/sys/dev/ixgbe/ixgbe.h user/ed/newcons/sys/dev/ixgbe/ixv.h user/ed/newcons/sys/dev/jme/if_jme.c user/ed/newcons/sys/dev/le/if_le_ledma.c user/ed/newcons/sys/dev/le/lance.c user/ed/newcons/sys/dev/lge/if_lge.c user/ed/newcons/sys/dev/lmc/if_lmc.c user/ed/newcons/sys/dev/lmc/if_lmc.h user/ed/newcons/sys/dev/malo/if_malo.c user/ed/newcons/sys/dev/malo/if_malo_pci.c user/ed/newcons/sys/dev/malo/if_malohal.c user/ed/newcons/sys/dev/mge/if_mge.c user/ed/newcons/sys/dev/mii/acphy.c user/ed/newcons/sys/dev/mii/amphy.c user/ed/newcons/sys/dev/mii/atphy.c user/ed/newcons/sys/dev/mii/axphy.c user/ed/newcons/sys/dev/mii/bmtphy.c user/ed/newcons/sys/dev/mii/brgphy.c user/ed/newcons/sys/dev/mii/ciphy.c user/ed/newcons/sys/dev/mii/e1000phy.c user/ed/newcons/sys/dev/mii/gentbi.c user/ed/newcons/sys/dev/mii/icsphy.c user/ed/newcons/sys/dev/mii/ip1000phy.c user/ed/newcons/sys/dev/mii/jmphy.c user/ed/newcons/sys/dev/mii/lxtphy.c user/ed/newcons/sys/dev/mii/mii.c user/ed/newcons/sys/dev/mii/mii_physubr.c user/ed/newcons/sys/dev/mii/miidevs user/ed/newcons/sys/dev/mii/mlphy.c user/ed/newcons/sys/dev/mii/nsgphy.c user/ed/newcons/sys/dev/mii/nsphy.c user/ed/newcons/sys/dev/mii/nsphyter.c user/ed/newcons/sys/dev/mii/pnaphy.c user/ed/newcons/sys/dev/mii/qsphy.c user/ed/newcons/sys/dev/mii/rdcphy.c user/ed/newcons/sys/dev/mii/rgephy.c user/ed/newcons/sys/dev/mii/rlphy.c user/ed/newcons/sys/dev/mii/rlswitch.c user/ed/newcons/sys/dev/mii/smcphy.c user/ed/newcons/sys/dev/mii/smscphy.c user/ed/newcons/sys/dev/mii/tdkphy.c user/ed/newcons/sys/dev/mii/tlphy.c user/ed/newcons/sys/dev/mii/truephy.c user/ed/newcons/sys/dev/mii/ukphy.c user/ed/newcons/sys/dev/mii/xmphy.c user/ed/newcons/sys/dev/mps/mps_sas.c user/ed/newcons/sys/dev/mpt/mpt_cam.c user/ed/newcons/sys/dev/msk/if_msk.c user/ed/newcons/sys/dev/mvs/mvs_soc.c user/ed/newcons/sys/dev/mwl/if_mwl.c user/ed/newcons/sys/dev/mwl/if_mwl_pci.c user/ed/newcons/sys/dev/mxge/if_mxge.c user/ed/newcons/sys/dev/my/if_my.c user/ed/newcons/sys/dev/netmap/if_em_netmap.h user/ed/newcons/sys/dev/netmap/if_igb_netmap.h user/ed/newcons/sys/dev/netmap/if_lem_netmap.h user/ed/newcons/sys/dev/netmap/if_re_netmap.h user/ed/newcons/sys/dev/netmap/ixgbe_netmap.h user/ed/newcons/sys/dev/netmap/netmap.c user/ed/newcons/sys/dev/netmap/netmap_kern.h user/ed/newcons/sys/dev/netmap/netmap_mem2.c user/ed/newcons/sys/dev/nfe/if_nfe.c user/ed/newcons/sys/dev/nge/if_nge.c user/ed/newcons/sys/dev/nve/if_nve.c user/ed/newcons/sys/dev/nvme/nvme_ctrlr.c user/ed/newcons/sys/dev/nvme/nvme_ns.c user/ed/newcons/sys/dev/nxge/if_nxge.c user/ed/newcons/sys/dev/oce/oce_if.h user/ed/newcons/sys/dev/ofw/ofw_bus_subr.c user/ed/newcons/sys/dev/ofw/ofw_bus_subr.h user/ed/newcons/sys/dev/ofw/ofw_nexus.c user/ed/newcons/sys/dev/patm/if_patm.c user/ed/newcons/sys/dev/patm/if_patm_attach.c user/ed/newcons/sys/dev/patm/if_patm_intr.c user/ed/newcons/sys/dev/patm/if_patm_ioctl.c user/ed/newcons/sys/dev/patm/if_patm_rx.c user/ed/newcons/sys/dev/patm/if_patm_tx.c user/ed/newcons/sys/dev/pcn/if_pcn.c user/ed/newcons/sys/dev/pdq/if_fea.c user/ed/newcons/sys/dev/pdq/if_fpa.c user/ed/newcons/sys/dev/pdq/pdq_freebsd.h user/ed/newcons/sys/dev/pdq/pdq_ifsubr.c user/ed/newcons/sys/dev/ppbus/if_plip.c user/ed/newcons/sys/dev/qlxgb/qla_os.h user/ed/newcons/sys/dev/qlxgbe/ql_os.h user/ed/newcons/sys/dev/qlxge/qls_os.h user/ed/newcons/sys/dev/ral/rt2560.c user/ed/newcons/sys/dev/ral/rt2661.c user/ed/newcons/sys/dev/ral/rt2860.c user/ed/newcons/sys/dev/random/harvest.c user/ed/newcons/sys/dev/re/if_re.c user/ed/newcons/sys/dev/rt/if_rt.c user/ed/newcons/sys/dev/sbni/if_sbni.c user/ed/newcons/sys/dev/sbni/if_sbni_isa.c user/ed/newcons/sys/dev/sf/if_sf.c user/ed/newcons/sys/dev/sfxge/sfxge.c user/ed/newcons/sys/dev/sfxge/sfxge.h user/ed/newcons/sys/dev/sfxge/sfxge_dma.c user/ed/newcons/sys/dev/sfxge/sfxge_ev.c user/ed/newcons/sys/dev/sfxge/sfxge_intr.c user/ed/newcons/sys/dev/sge/if_sge.c user/ed/newcons/sys/dev/siba/siba_bwn.c user/ed/newcons/sys/dev/siba/siba_core.c user/ed/newcons/sys/dev/sis/if_sis.c user/ed/newcons/sys/dev/sk/if_sk.c user/ed/newcons/sys/dev/smc/if_smc.c user/ed/newcons/sys/dev/sn/if_sn.c user/ed/newcons/sys/dev/sn/if_sn_isa.c user/ed/newcons/sys/dev/snc/dp83932.c user/ed/newcons/sys/dev/snc/if_snc.c user/ed/newcons/sys/dev/snc/if_snc_pccard.c user/ed/newcons/sys/dev/ste/if_ste.c user/ed/newcons/sys/dev/stge/if_stge.c user/ed/newcons/sys/dev/terasic/de4led/terasic_de4led_nexus.c user/ed/newcons/sys/dev/terasic/mtl/terasic_mtl_nexus.c user/ed/newcons/sys/dev/ti/if_ti.c user/ed/newcons/sys/dev/tl/if_tl.c user/ed/newcons/sys/dev/tsec/if_tsec.c user/ed/newcons/sys/dev/tsec/if_tsec_fdt.c user/ed/newcons/sys/dev/twa/tw_osl_cam.c user/ed/newcons/sys/dev/tx/if_tx.c user/ed/newcons/sys/dev/txp/if_txp.c user/ed/newcons/sys/dev/uart/uart.h user/ed/newcons/sys/dev/uart/uart_bus_fdt.c user/ed/newcons/sys/dev/uart/uart_cpu_fdt.c user/ed/newcons/sys/dev/uart/uart_dev_ns8250.c user/ed/newcons/sys/dev/usb/controller/ehci_imx.c user/ed/newcons/sys/dev/usb/controller/ehci_pci.c user/ed/newcons/sys/dev/usb/net/if_aue.c user/ed/newcons/sys/dev/usb/net/if_axe.c user/ed/newcons/sys/dev/usb/net/if_cdce.c user/ed/newcons/sys/dev/usb/net/if_cue.c user/ed/newcons/sys/dev/usb/net/if_ipheth.c user/ed/newcons/sys/dev/usb/net/if_kue.c user/ed/newcons/sys/dev/usb/net/if_mos.c user/ed/newcons/sys/dev/usb/net/if_rue.c user/ed/newcons/sys/dev/usb/net/if_smsc.c user/ed/newcons/sys/dev/usb/net/if_udav.c user/ed/newcons/sys/dev/usb/net/if_usie.c user/ed/newcons/sys/dev/usb/net/ruephy.c user/ed/newcons/sys/dev/usb/net/uhso.c user/ed/newcons/sys/dev/usb/net/usb_ethernet.c user/ed/newcons/sys/dev/usb/serial/u3g.c user/ed/newcons/sys/dev/usb/serial/umodem.c user/ed/newcons/sys/dev/usb/storage/umass.c user/ed/newcons/sys/dev/usb/usb.h user/ed/newcons/sys/dev/usb/usb_dev.c user/ed/newcons/sys/dev/usb/usb_device.h user/ed/newcons/sys/dev/usb/usb_generic.c user/ed/newcons/sys/dev/usb/usb_hub.c user/ed/newcons/sys/dev/usb/usb_pf.c user/ed/newcons/sys/dev/usb/usbdevs user/ed/newcons/sys/dev/usb/wlan/if_rsu.c user/ed/newcons/sys/dev/usb/wlan/if_rum.c user/ed/newcons/sys/dev/usb/wlan/if_run.c user/ed/newcons/sys/dev/usb/wlan/if_runreg.h user/ed/newcons/sys/dev/usb/wlan/if_uath.c user/ed/newcons/sys/dev/usb/wlan/if_upgt.c user/ed/newcons/sys/dev/usb/wlan/if_ural.c user/ed/newcons/sys/dev/usb/wlan/if_urtw.c user/ed/newcons/sys/dev/usb/wlan/if_urtwn.c user/ed/newcons/sys/dev/usb/wlan/if_zyd.c user/ed/newcons/sys/dev/vge/if_vge.c user/ed/newcons/sys/dev/virtio/network/if_vtnet.c user/ed/newcons/sys/dev/vmware/vmxnet3/if_vmx.c user/ed/newcons/sys/dev/vr/if_vr.c user/ed/newcons/sys/dev/vte/if_vte.c user/ed/newcons/sys/dev/vx/if_vx.c user/ed/newcons/sys/dev/vx/if_vx_eisa.c user/ed/newcons/sys/dev/vx/if_vx_pci.c user/ed/newcons/sys/dev/wb/if_wb.c user/ed/newcons/sys/dev/wds/wd7000.c user/ed/newcons/sys/dev/wi/if_wi.c user/ed/newcons/sys/dev/wi/if_wi_pccard.c user/ed/newcons/sys/dev/wi/if_wi_pci.c user/ed/newcons/sys/dev/wl/if_wl.c user/ed/newcons/sys/dev/wpi/if_wpi.c user/ed/newcons/sys/dev/xe/if_xe.c user/ed/newcons/sys/dev/xe/if_xe_pccard.c user/ed/newcons/sys/dev/xen/console/console.c user/ed/newcons/sys/dev/xen/netback/netback.c user/ed/newcons/sys/dev/xen/netback/netback_unit_tests.c user/ed/newcons/sys/dev/xen/netfront/netfront.c user/ed/newcons/sys/dev/xen/pcifront/pcifront.c user/ed/newcons/sys/dev/xen/timer/timer.c user/ed/newcons/sys/dev/xl/if_xl.c user/ed/newcons/sys/dev/xl/xlphy.c user/ed/newcons/sys/fs/nfs/nfs_commonkrpc.c user/ed/newcons/sys/fs/nfs/nfsport.h user/ed/newcons/sys/geom/eli/g_eli_ctl.c user/ed/newcons/sys/geom/geom_disk.c user/ed/newcons/sys/geom/geom_disk.h user/ed/newcons/sys/i386/conf/NOTES user/ed/newcons/sys/i386/i386/bpf_jit_machdep.c user/ed/newcons/sys/i386/i386/trap.c user/ed/newcons/sys/ia64/ia64/busdma_machdep.c user/ed/newcons/sys/ia64/ia64/machdep.c user/ed/newcons/sys/ia64/ia64/mp_machdep.c user/ed/newcons/sys/ia64/ia64/pmap.c user/ed/newcons/sys/ia64/include/param.h user/ed/newcons/sys/ia64/include/pmap.h user/ed/newcons/sys/kern/kern_environment.c user/ed/newcons/sys/kern/kern_event.c user/ed/newcons/sys/kern/kern_jail.c user/ed/newcons/sys/kern/kern_poll.c user/ed/newcons/sys/kern/subr_bus_dma.c user/ed/newcons/sys/kern/subr_kdb.c user/ed/newcons/sys/kern/subr_param.c user/ed/newcons/sys/kern/sys_socket.c user/ed/newcons/sys/kern/uipc_socket.c user/ed/newcons/sys/mips/adm5120/if_admsw.c user/ed/newcons/sys/mips/adm5120/obio.c user/ed/newcons/sys/mips/alchemy/obio.c user/ed/newcons/sys/mips/atheros/apb.c user/ed/newcons/sys/mips/atheros/ar71xx_ehci.c user/ed/newcons/sys/mips/atheros/ar71xx_pci.c user/ed/newcons/sys/mips/atheros/ar71xx_spi.c user/ed/newcons/sys/mips/atheros/ar71xx_wdog.c user/ed/newcons/sys/mips/atheros/ar724x_pci.c user/ed/newcons/sys/mips/atheros/if_arge.c user/ed/newcons/sys/mips/cavium/ciu.c user/ed/newcons/sys/mips/cavium/octe/ethernet-common.c user/ed/newcons/sys/mips/cavium/octe/ethernet-mdio.c user/ed/newcons/sys/mips/cavium/octe/ethernet-mem.c user/ed/newcons/sys/mips/cavium/octe/ethernet-rgmii.c user/ed/newcons/sys/mips/cavium/octe/ethernet-rx.c user/ed/newcons/sys/mips/cavium/octe/ethernet-sgmii.c user/ed/newcons/sys/mips/cavium/octe/ethernet-spi.c user/ed/newcons/sys/mips/cavium/octe/ethernet-tx.c user/ed/newcons/sys/mips/cavium/octe/ethernet-xaui.c user/ed/newcons/sys/mips/cavium/octe/ethernet.c user/ed/newcons/sys/mips/cavium/octeon_ebt3000_cf.c user/ed/newcons/sys/mips/cavium/octeon_pmc.c user/ed/newcons/sys/mips/cavium/octeon_rnd.c user/ed/newcons/sys/mips/cavium/octeon_rtc.c user/ed/newcons/sys/mips/idt/if_kr.c user/ed/newcons/sys/mips/idt/obio.c user/ed/newcons/sys/mips/malta/gt.c user/ed/newcons/sys/mips/mips/busdma_machdep.c user/ed/newcons/sys/mips/mips/tick.c user/ed/newcons/sys/mips/mips/trap.c user/ed/newcons/sys/mips/nlm/dev/net/xlpge.c user/ed/newcons/sys/mips/nlm/tick.c user/ed/newcons/sys/mips/nlm/xlp_pci.c user/ed/newcons/sys/mips/rmi/dev/nlge/if_nlge.c user/ed/newcons/sys/mips/rmi/iodi.c user/ed/newcons/sys/mips/rmi/tick.c user/ed/newcons/sys/mips/rt305x/obio.c user/ed/newcons/sys/mips/sibyte/sb_zbbus.c user/ed/newcons/sys/modules/aic7xxx/Makefile user/ed/newcons/sys/modules/aic7xxx/ahc/Makefile user/ed/newcons/sys/modules/aic7xxx/ahd/Makefile user/ed/newcons/sys/modules/netgraph/Makefile user/ed/newcons/sys/modules/vmm/Makefile user/ed/newcons/sys/net/bpf.c user/ed/newcons/sys/net/bpf.h user/ed/newcons/sys/net/bridgestp.c user/ed/newcons/sys/net/ieee8023ad_lacp.c user/ed/newcons/sys/net/if.c user/ed/newcons/sys/net/if.h user/ed/newcons/sys/net/if_arcsubr.c user/ed/newcons/sys/net/if_atmsubr.c user/ed/newcons/sys/net/if_bridge.c user/ed/newcons/sys/net/if_clone.c user/ed/newcons/sys/net/if_clone.h user/ed/newcons/sys/net/if_disc.c user/ed/newcons/sys/net/if_edsc.c user/ed/newcons/sys/net/if_ef.c user/ed/newcons/sys/net/if_enc.c user/ed/newcons/sys/net/if_epair.c user/ed/newcons/sys/net/if_ethersubr.c user/ed/newcons/sys/net/if_faith.c user/ed/newcons/sys/net/if_fddisubr.c user/ed/newcons/sys/net/if_fwsubr.c user/ed/newcons/sys/net/if_gif.c user/ed/newcons/sys/net/if_gre.c user/ed/newcons/sys/net/if_iso88025subr.c user/ed/newcons/sys/net/if_loop.c user/ed/newcons/sys/net/if_media.h user/ed/newcons/sys/net/if_mib.c user/ed/newcons/sys/net/if_spppfr.c user/ed/newcons/sys/net/if_spppsubr.c user/ed/newcons/sys/net/if_stf.c user/ed/newcons/sys/net/if_tap.c user/ed/newcons/sys/net/if_tun.c user/ed/newcons/sys/net/if_var.h user/ed/newcons/sys/net/if_vlan.c user/ed/newcons/sys/net/if_vlan_var.h user/ed/newcons/sys/net/netmap.h user/ed/newcons/sys/net/pfil.c user/ed/newcons/sys/net/pfvar.h user/ed/newcons/sys/net/raw_cb.c user/ed/newcons/sys/net/raw_usrreq.c user/ed/newcons/sys/net/route.c user/ed/newcons/sys/net/rtsock.c user/ed/newcons/sys/net80211/ieee80211.c user/ed/newcons/sys/net80211/ieee80211_action.c user/ed/newcons/sys/net80211/ieee80211_adhoc.c user/ed/newcons/sys/net80211/ieee80211_ageq.c user/ed/newcons/sys/net80211/ieee80211_alq.c user/ed/newcons/sys/net80211/ieee80211_amrr.c user/ed/newcons/sys/net80211/ieee80211_ddb.c user/ed/newcons/sys/net80211/ieee80211_dfs.c user/ed/newcons/sys/net80211/ieee80211_freebsd.c user/ed/newcons/sys/net80211/ieee80211_hostap.c user/ed/newcons/sys/net80211/ieee80211_ht.c user/ed/newcons/sys/net80211/ieee80211_input.c user/ed/newcons/sys/net80211/ieee80211_ioctl.c user/ed/newcons/sys/net80211/ieee80211_mesh.c user/ed/newcons/sys/net80211/ieee80211_monitor.c user/ed/newcons/sys/net80211/ieee80211_node.c user/ed/newcons/sys/net80211/ieee80211_output.c user/ed/newcons/sys/net80211/ieee80211_phy.c user/ed/newcons/sys/net80211/ieee80211_power.c user/ed/newcons/sys/net80211/ieee80211_proto.c user/ed/newcons/sys/net80211/ieee80211_radiotap.c user/ed/newcons/sys/net80211/ieee80211_ratectl.c user/ed/newcons/sys/net80211/ieee80211_ratectl_none.c user/ed/newcons/sys/net80211/ieee80211_regdomain.c user/ed/newcons/sys/net80211/ieee80211_rssadapt.c user/ed/newcons/sys/net80211/ieee80211_scan.c user/ed/newcons/sys/net80211/ieee80211_scan_sta.c user/ed/newcons/sys/net80211/ieee80211_superg.c user/ed/newcons/sys/net80211/ieee80211_wds.c user/ed/newcons/sys/netatalk/aarp.c user/ed/newcons/sys/netatalk/at_control.c user/ed/newcons/sys/netatalk/ddp_input.c user/ed/newcons/sys/netatalk/ddp_output.c user/ed/newcons/sys/netatalk/ddp_pcb.c user/ed/newcons/sys/netatalk/ddp_usrreq.c user/ed/newcons/sys/netgraph/netflow/netflow.c user/ed/newcons/sys/netgraph/ng_bridge.c user/ed/newcons/sys/netgraph/ng_cisco.c user/ed/newcons/sys/netgraph/ng_eiface.c user/ed/newcons/sys/netgraph/ng_ether.c user/ed/newcons/sys/netgraph/ng_iface.c user/ed/newcons/sys/netgraph/ng_ipfw.c user/ed/newcons/sys/netgraph/ng_one2many.c user/ed/newcons/sys/netgraph/ng_sppp.c user/ed/newcons/sys/netinet/if_atm.c user/ed/newcons/sys/netinet/if_ether.c user/ed/newcons/sys/netinet/igmp.c user/ed/newcons/sys/netinet/in.c user/ed/newcons/sys/netinet/in_gif.c user/ed/newcons/sys/netinet/in_mcast.c user/ed/newcons/sys/netinet/in_pcb.c user/ed/newcons/sys/netinet/in_proto.c user/ed/newcons/sys/netinet/in_rmx.c user/ed/newcons/sys/netinet/in_var.h user/ed/newcons/sys/netinet/ip_carp.c user/ed/newcons/sys/netinet/ip_divert.c user/ed/newcons/sys/netinet/ip_gre.c user/ed/newcons/sys/netinet/ip_icmp.c user/ed/newcons/sys/netinet/ip_ipsec.c user/ed/newcons/sys/netinet/ip_mroute.c user/ed/newcons/sys/netinet/ip_output.c user/ed/newcons/sys/netinet/libalias/alias_db.c user/ed/newcons/sys/netinet/raw_ip.c user/ed/newcons/sys/netinet/sctp_asconf.c user/ed/newcons/sys/netinet/sctp_output.c user/ed/newcons/sys/netinet/sctp_pcb.c user/ed/newcons/sys/netinet/sctp_timer.c user/ed/newcons/sys/netinet/sctp_usrreq.c user/ed/newcons/sys/netinet/sctputil.c user/ed/newcons/sys/netinet/siftr.c user/ed/newcons/sys/netinet/tcp_hostcache.c user/ed/newcons/sys/netinet/tcp_input.c user/ed/newcons/sys/netinet/tcp_offload.c user/ed/newcons/sys/netinet/tcp_reass.c user/ed/newcons/sys/netinet/tcp_sack.c user/ed/newcons/sys/netinet/tcp_subr.c user/ed/newcons/sys/netinet/tcp_syncache.c user/ed/newcons/sys/netinet/tcp_timewait.c user/ed/newcons/sys/netinet/tcp_usrreq.c user/ed/newcons/sys/netinet/toecore.c user/ed/newcons/sys/netinet/udp_usrreq.c user/ed/newcons/sys/netinet6/dest6.c user/ed/newcons/sys/netinet6/frag6.c user/ed/newcons/sys/netinet6/icmp6.c user/ed/newcons/sys/netinet6/in6.c user/ed/newcons/sys/netinet6/in6_gif.c user/ed/newcons/sys/netinet6/in6_ifattach.c user/ed/newcons/sys/netinet6/in6_mcast.c user/ed/newcons/sys/netinet6/in6_pcb.c user/ed/newcons/sys/netinet6/in6_proto.c user/ed/newcons/sys/netinet6/in6_rmx.c user/ed/newcons/sys/netinet6/in6_src.c user/ed/newcons/sys/netinet6/ip6_forward.c user/ed/newcons/sys/netinet6/ip6_id.c user/ed/newcons/sys/netinet6/ip6_input.c user/ed/newcons/sys/netinet6/ip6_ipsec.c user/ed/newcons/sys/netinet6/ip6_mroute.c user/ed/newcons/sys/netinet6/ip6_output.c user/ed/newcons/sys/netinet6/mld6.c user/ed/newcons/sys/netinet6/nd6.c user/ed/newcons/sys/netinet6/nd6_rtr.c user/ed/newcons/sys/netinet6/raw_ip6.c user/ed/newcons/sys/netinet6/route6.c user/ed/newcons/sys/netinet6/scope6.c user/ed/newcons/sys/netinet6/sctp6_usrreq.c user/ed/newcons/sys/netinet6/udp6_usrreq.c user/ed/newcons/sys/netipsec/ipsec.c user/ed/newcons/sys/netipsec/ipsec_input.c user/ed/newcons/sys/netipsec/ipsec_output.c user/ed/newcons/sys/netipsec/key.c user/ed/newcons/sys/netipsec/keysock.c user/ed/newcons/sys/netipsec/xform_ah.c user/ed/newcons/sys/netipsec/xform_esp.c user/ed/newcons/sys/netipsec/xform_ipip.c user/ed/newcons/sys/netipx/ipx.c user/ed/newcons/sys/netipx/ipx_input.c user/ed/newcons/sys/netipx/ipx_outputfl.c user/ed/newcons/sys/netipx/ipx_pcb.c user/ed/newcons/sys/netipx/ipx_usrreq.c user/ed/newcons/sys/netnatm/natm.c user/ed/newcons/sys/netnatm/natm_pcb.c user/ed/newcons/sys/netnatm/natm_proto.c user/ed/newcons/sys/netpfil/ipfw/ip_dn_io.c user/ed/newcons/sys/netpfil/ipfw/ip_dummynet.c user/ed/newcons/sys/netpfil/ipfw/ip_fw2.c user/ed/newcons/sys/netpfil/ipfw/ip_fw_dynamic.c user/ed/newcons/sys/netpfil/ipfw/ip_fw_log.c user/ed/newcons/sys/netpfil/ipfw/ip_fw_nat.c user/ed/newcons/sys/netpfil/pf/if_pflog.c user/ed/newcons/sys/netpfil/pf/if_pfsync.c user/ed/newcons/sys/netpfil/pf/pf.c user/ed/newcons/sys/netpfil/pf/pf_if.c user/ed/newcons/sys/netpfil/pf/pf_ioctl.c user/ed/newcons/sys/netpfil/pf/pf_lb.c user/ed/newcons/sys/netpfil/pf/pf_norm.c user/ed/newcons/sys/netpfil/pf/pf_osfp.c user/ed/newcons/sys/netpfil/pf/pf_ruleset.c user/ed/newcons/sys/netpfil/pf/pf_table.c user/ed/newcons/sys/nfs/bootp_subr.c user/ed/newcons/sys/nfsclient/nfs_vfsops.c user/ed/newcons/sys/nfsclient/nfs_vnops.c user/ed/newcons/sys/nfsserver/nfs_srvkrpc.c user/ed/newcons/sys/ofed/drivers/infiniband/ulp/ipoib/ipoib.h user/ed/newcons/sys/ofed/drivers/infiniband/ulp/sdp/sdp.h user/ed/newcons/sys/ofed/drivers/net/mlx4/en_netdev.c user/ed/newcons/sys/ofed/include/linux/list.h user/ed/newcons/sys/pci/if_rl.c user/ed/newcons/sys/pci/if_rlreg.h user/ed/newcons/sys/powerpc/aim/machdep.c user/ed/newcons/sys/powerpc/aim/mmu_oea.c user/ed/newcons/sys/powerpc/aim/mmu_oea64.c user/ed/newcons/sys/powerpc/aim/mp_cpudep.c user/ed/newcons/sys/powerpc/aim/trap.c user/ed/newcons/sys/powerpc/booke/locore.S user/ed/newcons/sys/powerpc/booke/machdep.c user/ed/newcons/sys/powerpc/booke/machdep_e500.c user/ed/newcons/sys/powerpc/booke/pmap.c user/ed/newcons/sys/powerpc/include/pmap.h user/ed/newcons/sys/powerpc/include/psl.h user/ed/newcons/sys/powerpc/include/tlb.h user/ed/newcons/sys/powerpc/include/trap.h user/ed/newcons/sys/powerpc/include/vmparam.h user/ed/newcons/sys/powerpc/mpc85xx/fsl_sdhc.c user/ed/newcons/sys/powerpc/mpc85xx/mpc85xx.c user/ed/newcons/sys/powerpc/mpc85xx/mpc85xx.h user/ed/newcons/sys/powerpc/powerpc/bus_machdep.c user/ed/newcons/sys/powerpc/powerpc/busdma_machdep.c user/ed/newcons/sys/powerpc/powerpc/exec_machdep.c user/ed/newcons/sys/powerpc/powerpc/genassym.c user/ed/newcons/sys/powerpc/ps3/if_glc.c user/ed/newcons/sys/powerpc/pseries/mmu_phyp.c user/ed/newcons/sys/powerpc/pseries/phyp_llan.c user/ed/newcons/sys/powerpc/pseries/phyp_vscsi.c user/ed/newcons/sys/powerpc/pseries/platform_chrp.c user/ed/newcons/sys/powerpc/pseries/plpar_iommu.c user/ed/newcons/sys/security/mac_ifoff/mac_ifoff.c user/ed/newcons/sys/sparc64/include/bus_dma.h user/ed/newcons/sys/sys/bus_dma.h user/ed/newcons/sys/sys/dtrace_bsd.h user/ed/newcons/sys/sys/eventhandler.h user/ed/newcons/sys/sys/jail.h user/ed/newcons/sys/sys/mount.h user/ed/newcons/sys/sys/param.h user/ed/newcons/sys/sys/random.h user/ed/newcons/sys/sys/sdt.h user/ed/newcons/sys/sys/sockio.h user/ed/newcons/sys/vm/vm_object.c user/ed/newcons/sys/x86/include/trap.h user/ed/newcons/sys/x86/x86/busdma_machdep.c user/ed/newcons/tools/build/mk/OptionalObsoleteFiles.inc user/ed/newcons/tools/build/options/WITHOUT_PKGBOOTSTRAP user/ed/newcons/tools/regression/pjdfstest/Makefile user/ed/newcons/tools/regression/pjdfstest/pjdfstest.c user/ed/newcons/tools/tools/ath/athstats/Makefile user/ed/newcons/tools/tools/netmap/nm_util.c user/ed/newcons/tools/tools/netmap/pkt-gen.c user/ed/newcons/usr.bin/calendar/calendars/calendar.freebsd user/ed/newcons/usr.bin/iscsictl/iscsictl.8 user/ed/newcons/usr.bin/iscsictl/iscsictl.c user/ed/newcons/usr.bin/limits/limits.1 user/ed/newcons/usr.bin/limits/limits.c user/ed/newcons/usr.bin/netstat/Makefile user/ed/newcons/usr.bin/netstat/if.c user/ed/newcons/usr.bin/netstat/main.c user/ed/newcons/usr.bin/netstat/netstat.1 user/ed/newcons/usr.bin/procstat/procstat.1 user/ed/newcons/usr.bin/xinstall/xinstall.c user/ed/newcons/usr.sbin/Makefile user/ed/newcons/usr.sbin/arp/arp.4 user/ed/newcons/usr.sbin/bhyve/Makefile user/ed/newcons/usr.sbin/bhyve/acpi.c user/ed/newcons/usr.sbin/bhyve/acpi.h user/ed/newcons/usr.sbin/bhyve/bhyverun.c user/ed/newcons/usr.sbin/bhyve/inout.c user/ed/newcons/usr.sbin/bhyve/inout.h user/ed/newcons/usr.sbin/bhyve/mptbl.c user/ed/newcons/usr.sbin/bhyve/mptbl.h user/ed/newcons/usr.sbin/bhyve/pci_emul.c user/ed/newcons/usr.sbin/bhyve/pci_emul.h user/ed/newcons/usr.sbin/bhyve/pci_uart.c user/ed/newcons/usr.sbin/crashinfo/crashinfo.sh user/ed/newcons/usr.sbin/ctladm/ctladm.8 user/ed/newcons/usr.sbin/ctladm/ctladm.c user/ed/newcons/usr.sbin/edquota/edquota.c user/ed/newcons/usr.sbin/newsyslog/newsyslog.c user/ed/newcons/usr.sbin/pkg/Makefile user/ed/newcons/usr.sbin/pkg/config.c user/ed/newcons/usr.sbin/pkg/config.h user/ed/newcons/usr.sbin/pkg/pkg.c user/ed/newcons/usr.sbin/tcpdump/tcpdump/Makefile user/ed/newcons/usr.sbin/utx/Makefile user/ed/newcons/usr.sbin/utx/utx.8 user/ed/newcons/usr.sbin/utx/utx.c Directory Properties: user/ed/newcons/ (props changed) user/ed/newcons/cddl/ (props changed) user/ed/newcons/cddl/contrib/opensolaris/ (props changed) user/ed/newcons/contrib/binutils/ (props changed) user/ed/newcons/contrib/byacc/ (props changed) user/ed/newcons/contrib/groff/ (props changed) user/ed/newcons/contrib/libpcap/ (props changed) user/ed/newcons/contrib/llvm/ (props changed) user/ed/newcons/contrib/llvm/tools/clang/ (props changed) user/ed/newcons/contrib/subversion/ (props changed) user/ed/newcons/contrib/tcpdump/ (props changed) user/ed/newcons/contrib/tzdata/ (props changed) user/ed/newcons/contrib/wpa/ (props changed) user/ed/newcons/gnu/lib/ (props changed) user/ed/newcons/gnu/usr.bin/binutils/ (props changed) user/ed/newcons/lib/libc/ (props changed) user/ed/newcons/lib/libutil/ (props changed) user/ed/newcons/lib/libz/ (props changed) user/ed/newcons/sbin/ (props changed) user/ed/newcons/share/man/man4/ (props changed) user/ed/newcons/sys/ (props changed) user/ed/newcons/sys/amd64/vmm/ (props changed) user/ed/newcons/sys/boot/ (props changed) user/ed/newcons/sys/cddl/contrib/opensolaris/ (props changed) user/ed/newcons/sys/conf/ (props changed) user/ed/newcons/sys/contrib/ipfilter/ (props changed) user/ed/newcons/sys/dev/hyperv/ (props changed) user/ed/newcons/sys/modules/vmm/ (props changed) user/ed/newcons/usr.bin/calendar/ (props changed) user/ed/newcons/usr.bin/procstat/ (props changed) user/ed/newcons/usr.sbin/bhyve/ (props changed) Modified: user/ed/newcons/Makefile.inc1 ============================================================================== --- user/ed/newcons/Makefile.inc1 Tue Nov 5 12:52:56 2013 (r257699) +++ user/ed/newcons/Makefile.inc1 Tue Nov 5 12:55:28 2013 (r257700) @@ -1019,20 +1019,7 @@ buildkernel: @echo "--------------------------------------------------------------" @echo ">>> stage 2.3: build tools" @echo "--------------------------------------------------------------" - cd ${KRNLOBJDIR}/${_kernel}; \ - PATH=${BPATH}:${PATH} \ - MAKESRCPATH=${KERNSRCDIR}/dev/aic7xxx/aicasm \ - ${MAKE} SSP_CFLAGS= -DNO_CPU_CFLAGS -DNO_CTF -DEARLY_BUILD \ - -f ${KERNSRCDIR}/dev/aic7xxx/aicasm/Makefile -# XXX - Gratuitously builds aicasm in the ``makeoptions NO_MODULES'' case. -.if !defined(MODULES_WITH_WORLD) && !defined(NO_MODULES) && exists(${KERNSRCDIR}/modules) -.for target in obj depend all - cd ${KERNSRCDIR}/modules/aic7xxx/aicasm; \ - PATH=${BPATH}:${PATH} \ - MAKEOBJDIRPREFIX=${KRNLOBJDIR}/${_kernel}/modules \ - ${MAKE} SSP_CFLAGS= -DNO_CPU_CFLAGS -DNO_CTF -DEARLY_BUILD ${target} -.endfor -.endif + @# Currently no special kernel tools to build. .if !defined(NO_KERNELDEPEND) @echo @echo "--------------------------------------------------------------" @@ -1319,10 +1306,6 @@ bootstrap-tools: .MAKE # # build-tools: Build special purpose build tools # -.if defined(MODULES_WITH_WORLD) && exists(${KERNSRCDIR}/modules) -_aicasm= sys/modules/aic7xxx/aicasm -.endif - .if !defined(NO_SHARE) _share= share/syscons/scrnmaps .endif @@ -1344,7 +1327,6 @@ build-tools: .MAKE lib/ncurses/ncurses \ lib/ncurses/ncursesw \ ${_share} \ - ${_aicasm} \ usr.bin/awk \ lib/libmagic \ usr.bin/mkesdb_static \ @@ -1388,12 +1370,17 @@ _binutils= gnu/usr.bin/binutils # If an full path to an external cross compiler is given, don't build # a cross compiler. .if ${XCC:M/*} == "" && ${MK_CROSS_COMPILER} != "no" -.if (${MK_CLANG_IS_CC} != "no" || ${CC:T:Mclang} == "clang") && ${TARGET} != "pc98" +.if ${MK_CLANG_IS_CC} != "no" || ${CC:T:Mclang} == "clang" _clang= usr.bin/clang _clang_libs= lib/clang .else _cc= gnu/usr.bin/cc .endif + +# The boot2 for pc98 requires gcc. +.if ${TARGET} == "pc98" +_cc= gnu/usr.bin/cc +.endif .endif cross-tools: .MAKE @@ -1405,7 +1392,8 @@ cross-tools: .MAKE usr.bin/xlint/lint1 usr.bin/xlint/lint2 usr.bin/xlint/xlint \ ${_btxld} \ ${_crunchide} \ - ${_kgzip} + ${_kgzip} \ + sys/dev/aic7xxx/aicasm ${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all,install)"; \ cd ${.CURDIR}/${_tool} && \ ${MAKE} DIRPRFX=${_tool}/ obj && \ @@ -1681,6 +1669,7 @@ delete-old-files: # argument list will get too long. Using .for/.endfor make "loops" will make # the Makefile parser segfault. @exec 3<&0; \ + cd ${.CURDIR}; \ ${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \ -V OLD_FILES -V "OLD_FILES:Musr/share/*.gz:R" | xargs -n1 | \ while read file; do \ @@ -1703,7 +1692,8 @@ delete-old-files: check-old-files: @echo ">>> Checking for old files" - @${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \ + @cd ${.CURDIR}; \ + ${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \ -V OLD_FILES -V "OLD_FILES:Musr/share/*.gz:R" | xargs -n1 | \ while read file; do \ if [ -f "${DESTDIR}/$${file}" -o -L "${DESTDIR}/$${file}" ]; then \ @@ -1724,6 +1714,7 @@ delete-old-libs: @echo ">>> Removing old libraries" @echo "${OLD_LIBS_MESSAGE}" | fmt @exec 3<&0; \ + cd ${.CURDIR}; \ ${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \ -V OLD_LIBS | xargs -n1 | \ while read file; do \ @@ -1743,7 +1734,8 @@ delete-old-libs: check-old-libs: @echo ">>> Checking for old libraries" - @${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \ + @cd ${.CURDIR}; \ + ${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \ -V OLD_LIBS | xargs -n1 | \ while read file; do \ if [ -f "${DESTDIR}/$${file}" -o -L "${DESTDIR}/$${file}" ]; then \ @@ -1758,7 +1750,8 @@ check-old-libs: delete-old-dirs: @echo ">>> Removing old directories" - @${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \ + @cd ${.CURDIR}; \ + ${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \ -V OLD_DIRS | xargs -n1 | sort -r | \ while read dir; do \ if [ -d "${DESTDIR}/$${dir}" ]; then \ @@ -1771,7 +1764,8 @@ delete-old-dirs: check-old-dirs: @echo ">>> Checking for old directories" - @${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \ + @cd ${.CURDIR}; \ + ${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \ -V OLD_DIRS | xargs -n1 | \ while read dir; do \ if [ -d "${DESTDIR}/$${dir}" ]; then \ Modified: user/ed/newcons/ObsoleteFiles.inc ============================================================================== --- user/ed/newcons/ObsoleteFiles.inc Tue Nov 5 12:52:56 2013 (r257699) +++ user/ed/newcons/ObsoleteFiles.inc Tue Nov 5 12:55:28 2013 (r257700) @@ -38,6 +38,41 @@ # xargs -n1 | sort | uniq -d; # done +# 20131103: WITH_LIBICONV_COMPAT removal +OLD_FILES+=usr/include/_libiconv_compat.h +OLD_FILES+=usr/lib/libiconv.a +OLD_FILES+=usr/lib/libiconv.so +OLD_FILES+=usr/lib/libiconv.so.3 +OLD_FILES+=usr/lib/libiconv_p.a +# 20131103: removal of utxrm(8), use 'utx rm' instead. +OLD_FILES+=usr/sbin/utxrm +OLD_FILES+=usr/share/man/man8/utxrm.8.gz +# 20131031: pkg_install has been removed +OLD_FILES+=etc/periodic/daily/220.backup-pkgdb +OLD_FILES+=etc/periodic/daily/490.status-pkg-changes +OLD_FILES+=etc/periodic/security/460.chkportsum +OLD_FILES+=etc/periodic/weekly/400.status-pkg +OLD_FILES+=usr/sbin/pkg_add +OLD_FILES+=usr/sbin/pkg_create +OLD_FILES+=usr/sbin/pkg_delete +OLD_FILES+=usr/sbin/pkg_info +OLD_FILES+=usr/sbin/pkg_updating +OLD_FILES+=usr/sbin/pkg_version +OLD_FILES+=usr/share/man/man1/pkg_add.1.gz +OLD_FILES+=usr/share/man/man1/pkg_create.1.gz +OLD_FILES+=usr/share/man/man1/pkg_delete.1.gz +OLD_FILES+=usr/share/man/man1/pkg_info.1.gz +OLD_FILES+=usr/share/man/man1/pkg_updating.1.gz +OLD_FILES+=usr/share/man/man1/pkg_version.1.gz +# 20131030: /etc/keys moved to /usr/share/keys +OLD_DIRS+=etc/keys +OLD_DIRS+=etc/keys/pkg +OLD_DIRS+=etc/keys/pkg/revoked +OLD_DIRS+=etc/keys/pkg/trusted +OLD_FILES+=etc/keys/pkg/trusted/pkg.freebsd.org.2013102301 +# 20131028: ng_fec(4) removed +OLD_FILES+=usr/include/netgraph/ng_fec.h +OLD_FILES+=usr/share/man/man4/ng_fec.4.gz # 20131023: remove never used iscsi directory OLD_DIRS+=usr/share/examples/iscsi # 20131014: libbsdyml becomes private Modified: user/ed/newcons/UPDATING ============================================================================== --- user/ed/newcons/UPDATING Tue Nov 5 12:52:56 2013 (r257699) +++ user/ed/newcons/UPDATING Tue Nov 5 12:55:28 2013 (r257700) @@ -31,6 +31,13 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20131025: + The default version of mtree is nmtree which is obtained from + NetBSD. The output is generally the same, but may vary + slightly. If you found you need identical output adding + "-F freebsd9" to the command line should do the trick. For the + time being, the old mtree is available as fmtree. + 20131014: libbsdyml has been renamed to libyaml and moved to /usr/lib/private. This will break ports-mgmt/pkg. Rebuild the port, or upgrade to pkg Modified: user/ed/newcons/bin/df/df.1 ============================================================================== --- user/ed/newcons/bin/df/df.1 Tue Nov 5 12:52:56 2013 (r257699) +++ user/ed/newcons/bin/df/df.1 Tue Nov 5 12:55:28 2013 (r257700) @@ -198,7 +198,7 @@ If the value is outside, it will be set .Xr mount 8 , .Xr pstat 8 , .Xr quot 8 , -.Xr swapinfo 8 . +.Xr swapinfo 8 .Sh STANDARDS With the exception of most options, the Modified: user/ed/newcons/bin/sh/nodetypes ============================================================================== --- user/ed/newcons/bin/sh/nodetypes Tue Nov 5 12:52:56 2013 (r257699) +++ user/ed/newcons/bin/sh/nodetypes Tue Nov 5 12:55:28 2013 (r257700) @@ -118,16 +118,16 @@ NFROMTO nfile # fd<> fname NAPPEND nfile # fd>> fname NCLOBBER nfile # fd>| fname type int - next nodeptr # next redirection in list fd int # file descriptor being redirected + next nodeptr # next redirection in list fname nodeptr # file name, in a NARG node expfname temp char *expfname # actual file name NTOFD ndup # fd<&dupfd NFROMFD ndup # fd>&dupfd type int - next nodeptr # next redirection in list fd int # file descriptor being redirected + next nodeptr # next redirection in list dupfd int # file descriptor to duplicate vname nodeptr # file name if fd>&$var @@ -135,8 +135,8 @@ NFROMFD ndup # fd>&dupfd NHERE nhere # fd<<\! NXHERE nhere # fd< Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id A1904A81; Tue, 5 Nov 2013 22:57:05 +0000 (UTC) (envelope-from ray@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 8F4E92DA3; Tue, 5 Nov 2013 22:57:05 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA5Mv5PD078645; Tue, 5 Nov 2013 22:57:05 GMT (envelope-from ray@svn.freebsd.org) Received: (from ray@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA5Mv5XW078643; Tue, 5 Nov 2013 22:57:05 GMT (envelope-from ray@svn.freebsd.org) Message-Id: <201311052257.rA5Mv5XW078643@svn.freebsd.org> From: Aleksandr Rybalko Date: Tue, 5 Nov 2013 22:57:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257722 - user/ed/newcons/sys/dev/vt X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Nov 2013 22:57:05 -0000 Author: ray Date: Tue Nov 5 22:57:05 2013 New Revision: 257722 URL: http://svnweb.freebsd.org/changeset/base/257722 Log: Enable splash on Mute flag. TODO: use tunable for control splash. Sponsored by: The FreeBSD Foundation Modified: user/ed/newcons/sys/dev/vt/vt_core.c Modified: user/ed/newcons/sys/dev/vt/vt_core.c ============================================================================== --- user/ed/newcons/sys/dev/vt/vt_core.c Tue Nov 5 22:33:45 2013 (r257721) +++ user/ed/newcons/sys/dev/vt/vt_core.c Tue Nov 5 22:57:05 2013 (r257722) @@ -740,7 +740,7 @@ vtterm_splash(struct vt_device *vd) vt_axis_t top, left; /* Display a nice boot splash. */ - if (!(vd->vd_flags & VDF_TEXTMODE)) { + if (!(vd->vd_flags & VDF_TEXTMODE) && (boothowto & RB_MUTE)) { top = (vd->vd_height - vt_logo_height) / 2; left = (vd->vd_width - vt_logo_width) / 2; From owner-svn-src-user@FreeBSD.ORG Tue Nov 5 22:59:12 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 61BD1B6F; Tue, 5 Nov 2013 22:59:12 +0000 (UTC) (envelope-from ray@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 4FB0E2DAD; Tue, 5 Nov 2013 22:59:12 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA5MxCIl078887; Tue, 5 Nov 2013 22:59:12 GMT (envelope-from ray@svn.freebsd.org) Received: (from ray@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA5MxCfI078886; Tue, 5 Nov 2013 22:59:12 GMT (envelope-from ray@svn.freebsd.org) Message-Id: <201311052259.rA5MxCfI078886@svn.freebsd.org> From: Aleksandr Rybalko Date: Tue, 5 Nov 2013 22:59:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257723 - user/ed/newcons/sys/dev/vt X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Nov 2013 22:59:12 -0000 Author: ray Date: Tue Nov 5 22:59:11 2013 New Revision: 257723 URL: http://svnweb.freebsd.org/changeset/base/257723 Log: Increase history size to 500 lines. Sponsored by: The FreeBSD Foundation Modified: user/ed/newcons/sys/dev/vt/vt.h Modified: user/ed/newcons/sys/dev/vt/vt.h ============================================================================== --- user/ed/newcons/sys/dev/vt/vt.h Tue Nov 5 22:57:05 2013 (r257722) +++ user/ed/newcons/sys/dev/vt/vt.h Tue Nov 5 22:59:11 2013 (r257723) @@ -125,7 +125,7 @@ struct vt_buf { #define VBF_SCROLL 0x8 /* scroll locked mode. */ #define VBF_HISTORY_FULL 0x10 /* All rows filled. */ int vb_history_size; -#define VBF_DEFAULT_HISTORY_SIZE 200 +#define VBF_DEFAULT_HISTORY_SIZE 500 int vb_roffset; /* (b) History rows offset. */ int vb_curroffset; /* (b) Saved rows offset. */ term_pos_t vb_cursor; /* (u) Cursor position. */ From owner-svn-src-user@FreeBSD.ORG Tue Nov 5 23:00:27 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 506A4DF2; Tue, 5 Nov 2013 23:00:27 +0000 (UTC) (envelope-from ray@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 3F02C2DEB; Tue, 5 Nov 2013 23:00:27 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA5N0RVe079432; Tue, 5 Nov 2013 23:00:27 GMT (envelope-from ray@svn.freebsd.org) Received: (from ray@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA5N0Rrc079431; Tue, 5 Nov 2013 23:00:27 GMT (envelope-from ray@svn.freebsd.org) Message-Id: <201311052300.rA5N0Rrc079431@svn.freebsd.org> From: Aleksandr Rybalko Date: Tue, 5 Nov 2013 23:00:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257724 - user/ed/newcons/sys/dev/vt X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Nov 2013 23:00:27 -0000 Author: ray Date: Tue Nov 5 23:00:26 2013 New Revision: 257724 URL: http://svnweb.freebsd.org/changeset/base/257724 Log: Define default size for early console to 640x480. Sponsored by: The FreeBSD Foundation Modified: user/ed/newcons/sys/dev/vt/vt.h Modified: user/ed/newcons/sys/dev/vt/vt.h ============================================================================== --- user/ed/newcons/sys/dev/vt/vt.h Tue Nov 5 22:59:11 2013 (r257723) +++ user/ed/newcons/sys/dev/vt/vt.h Tue Nov 5 23:00:26 2013 (r257724) @@ -256,6 +256,13 @@ void vt_upgrade(struct vt_device *vd); #define PIXEL_WIDTH(w) ((w) / 8) #define PIXEL_HEIGHT(h) ((h) / 16) +#ifndef VT_FB_DEFAULT_WIDTH +#define VT_FB_DEFAULT_WIDTH 640 +#endif +#ifndef VT_FB_DEFAULT_HEIGHT +#define VT_FB_DEFAULT_HEIGHT 480 +#endif + #define VT_CONSDEV_DECLARE(driver, width, height, softc) \ static struct terminal driver ## _consterm; \ static struct vt_window driver ## _conswindow; \ From owner-svn-src-user@FreeBSD.ORG Tue Nov 5 23:01:58 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 68F68F08; Tue, 5 Nov 2013 23:01:58 +0000 (UTC) (envelope-from ray@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 3C9AE2E0D; Tue, 5 Nov 2013 23:01:58 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA5N1wIr081547; Tue, 5 Nov 2013 23:01:58 GMT (envelope-from ray@svn.freebsd.org) Received: (from ray@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA5N1vQR081545; Tue, 5 Nov 2013 23:01:57 GMT (envelope-from ray@svn.freebsd.org) Message-Id: <201311052301.rA5N1vQR081545@svn.freebsd.org> From: Aleksandr Rybalko Date: Tue, 5 Nov 2013 23:01:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257725 - user/ed/newcons/sys/dev/vt/hw/fb X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Nov 2013 23:01:58 -0000 Author: ray Date: Tue Nov 5 23:01:57 2013 New Revision: 257725 URL: http://svnweb.freebsd.org/changeset/base/257725 Log: Export vt_fb VT driver methods to allow reuse. Sponsored by: The FreeBSD Foundation Modified: user/ed/newcons/sys/dev/vt/hw/fb/vt_fb.c user/ed/newcons/sys/dev/vt/hw/fb/vt_fb.h Modified: user/ed/newcons/sys/dev/vt/hw/fb/vt_fb.c ============================================================================== --- user/ed/newcons/sys/dev/vt/hw/fb/vt_fb.c Tue Nov 5 23:00:26 2013 (r257724) +++ user/ed/newcons/sys/dev/vt/hw/fb/vt_fb.c Tue Nov 5 23:01:57 2013 (r257725) @@ -41,11 +41,6 @@ __FBSDID("$FreeBSD$"); #include #include -static vd_init_t vt_fb_init; -static vd_blank_t vt_fb_blank; -static vd_bitbltchr_t vt_fb_bitbltchr; -static vd_postswitch_t vt_fb_postswitch; - static struct vt_driver vt_fb_driver = { .vd_init = vt_fb_init, .vd_blank = vt_fb_blank, @@ -54,7 +49,7 @@ static struct vt_driver vt_fb_driver = { .vd_priority = VD_PRIORITY_GENERIC+10, }; -static void +void vt_fb_blank(struct vt_device *vd, term_color_t color) { struct fb_info *info; @@ -63,6 +58,7 @@ vt_fb_blank(struct vt_device *vd, term_c info = vd->vd_softc; c = info->fb_cmap[color]; + switch (FBTYPE_GET_BYTESPP(info)) { case 1: for (o = 0; o < info->fb_stride; o++) @@ -95,7 +91,7 @@ vt_fb_blank(struct vt_device *vd, term_c } } -static void +void vt_fb_bitbltchr(struct vt_device *vd, const uint8_t *src, vt_axis_t top, vt_axis_t left, unsigned int width, unsigned int height, term_color_t fg, term_color_t bg) @@ -147,7 +143,7 @@ vt_fb_bitbltchr(struct vt_device *vd, co } } -static void +void vt_fb_postswitch(struct vt_device *vd) { struct fb_info *info; @@ -181,7 +177,7 @@ vt_fb_init_cmap(uint32_t *cmap, int dept } } -static int +int vt_fb_init(struct vt_device *vd) { struct fb_info *info; @@ -212,5 +208,6 @@ vt_fb_attach(struct fb_info *info) { vt_allocate(&vt_fb_driver, info); + return (0); } Modified: user/ed/newcons/sys/dev/vt/hw/fb/vt_fb.h ============================================================================== --- user/ed/newcons/sys/dev/vt/hw/fb/vt_fb.h Tue Nov 5 23:00:26 2013 (r257724) +++ user/ed/newcons/sys/dev/vt/hw/fb/vt_fb.h Tue Nov 5 23:01:57 2013 (r257725) @@ -34,4 +34,12 @@ /* Generic framebuffer interface call vt_fb_attach to init VT(9) */ int vt_fb_attach(struct fb_info *info); +int fb_probe(struct fb_info *info); + +vd_init_t vt_fb_init; +vd_blank_t vt_fb_blank; +vd_bitbltchr_t vt_fb_bitbltchr; +vd_postswitch_t vt_fb_postswitch; + + #endif /* _DEV_VT_HW_FB_VT_FB_H_ */ From owner-svn-src-user@FreeBSD.ORG Tue Nov 5 23:09:36 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id D14B7BD; Tue, 5 Nov 2013 23:09:36 +0000 (UTC) (envelope-from ray@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id AF40B2E35; Tue, 5 Nov 2013 23:09:36 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA5N9a3X082672; Tue, 5 Nov 2013 23:09:36 GMT (envelope-from ray@svn.freebsd.org) Received: (from ray@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA5N9aSV082671; Tue, 5 Nov 2013 23:09:36 GMT (envelope-from ray@svn.freebsd.org) Message-Id: <201311052309.rA5N9aSV082671@svn.freebsd.org> From: Aleksandr Rybalko Date: Tue, 5 Nov 2013 23:09:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257726 - user/ed/newcons/sys/dev/vt/hw/fb X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Nov 2013 23:09:37 -0000 Author: ray Date: Tue Nov 5 23:09:36 2013 New Revision: 257726 URL: http://svnweb.freebsd.org/changeset/base/257726 Log: Early console with FDT/OFW support. TODO - done PPC, SPARC64 and FDT-less variants. Sponsored by: The FreeBSD Foundation Added: user/ed/newcons/sys/dev/vt/hw/fb/vt_early_fb.c (contents, props changed) Added: user/ed/newcons/sys/dev/vt/hw/fb/vt_early_fb.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/ed/newcons/sys/dev/vt/hw/fb/vt_early_fb.c Tue Nov 5 23:09:36 2013 (r257726) @@ -0,0 +1,278 @@ +/*- + * Copyright (c) 2013 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Aleksandr Rybalko under sponsorship from the + * FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * 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 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$ + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include + +#include "opt_platform.h" + +#ifdef FDT +#include +#include +#include +#include +#endif + +#include +#include +#include + +static vd_init_t vt_efb_init; + +static struct vt_driver vt_fb_early_driver = { + .vd_init = vt_efb_init, + .vd_blank = vt_fb_blank, + .vd_bitbltchr = vt_fb_bitbltchr, + .vd_priority = VD_PRIORITY_GENERIC, +}; + +static struct fb_info info; +VT_CONSDEV_DECLARE(vt_fb_early_driver, + MAX(80, PIXEL_WIDTH(VT_FB_DEFAULT_WIDTH)), + MAX(25, PIXEL_HEIGHT(VT_FB_DEFAULT_HEIGHT)), &info); + +static void +#ifdef FDT +vt_efb_initialize(struct fb_info *info, phandle_t node) +#else +vt_efb_initialize(struct fb_info *info) +#endif +{ +#ifdef FDT + char name[64]; + cell_t retval; + ihandle_t ih; + int i; + + /* Open display device, thereby initializing it */ + memset(name, 0, sizeof(name)); + OF_package_to_path(node, name, sizeof(name)); + ih = OF_open(name); +#endif + + /* + * Set up the color map + */ + switch (info->fb_depth) { + case 8: + vt_generate_vga_palette(info->fb_cmap, COLOR_FORMAT_RGB, + 0x7, 5, 0x7, 2, 0x3, 0); + break; + case 15: + vt_generate_vga_palette(info->fb_cmap, COLOR_FORMAT_RGB, + 0x1f, 10, 0x1f, 5, 0x1f, 0); + break; + case 16: + vt_generate_vga_palette(info->fb_cmap, COLOR_FORMAT_RGB, + 0x1f, 11, 0x3f, 5, 0x1f, 0); + break; + case 24: + case 32: +#if BYTE_ORDER == BIG_ENDIAN + vt_generate_vga_palette(info->fb_cmap, + COLOR_FORMAT_RGB, 255, 16, 255, 8, 255, 0); +#else + vt_generate_vga_palette(info->fb_cmap, + COLOR_FORMAT_RGB, 255, 0, 255, 8, 255, 16); +#endif +#ifdef FDT + for (i = 0; i < 16; i++) { + OF_call_method("color!", ih, 4, 1, + (cell_t)((info->fb_cmap[i] >> 16) & 0xff), + (cell_t)((info->fb_cmap[i] >> 8) & 0xff), + (cell_t)((info->fb_cmap[i] >> 0) & 0xff), + (cell_t)i, &retval); + } +#endif + break; + + default: + panic("Unknown color space fb_depth %d", info->fb_depth); + break; + } +} + +static int +vt_efb_init(struct vt_device *vd) +{ + struct ofw_pci_register pciaddrs[8]; + struct fb_info *info; + int i, len, n_pciaddrs; + phandle_t chosen, node; + ihandle_t stdout; + char type[64]; + + info = vd->vd_softc; + + chosen = OF_finddevice("/chosen"); + OF_getprop(chosen, "stdout", &stdout, sizeof(stdout)); + node = OF_instance_to_package(stdout); + if (node == -1) { + /* + * The "/chosen/stdout" does not exist try + * using "screen" directly. + */ + node = OF_finddevice("screen"); + } + OF_getprop(node, "device_type", type, sizeof(type)); + if (strcmp(type, "display") != 0) + return (CN_DEAD); + +#define GET(name, var) \ + if (OF_getproplen(node, (name)) != sizeof(info->fb_##var)) \ + return (CN_DEAD); \ + OF_getencprop(node, (name), &info->fb_##var, sizeof(info->fb_##var)); \ + if (info->fb_##var == 0) \ + return (CN_DEAD); + + GET("height", height) + GET("width", width) + GET("depth", depth) + GET("linebytes", stride) +#undef GET + + info->fb_size = info->fb_height * info->fb_stride; + + /* + * Get the PCI addresses of the adapter, if present. The node may be the + * child of the PCI device: in that case, try the parent for + * the assigned-addresses property. + */ + len = OF_getprop(node, "assigned-addresses", pciaddrs, + sizeof(pciaddrs)); + if (len == -1) { + len = OF_getprop(OF_parent(node), "assigned-addresses", + pciaddrs, sizeof(pciaddrs)); + } + if (len == -1) + len = 0; + n_pciaddrs = len / sizeof(struct ofw_pci_register); + + /* + * Grab the physical address of the framebuffer, and then map it + * into our memory space. If the MMU is not yet up, it will be + * remapped for us when relocation turns on. + */ + if (OF_getproplen(node, "address") == sizeof(info->fb_pbase)) { + /* XXX We assume #address-cells is 1 at this point. */ + OF_getencprop(node, "address", &info->fb_pbase, + sizeof(info->fb_pbase)); + + #if defined(__powerpc__) + sc->sc_memt = &bs_be_tag; + bus_space_map(sc->sc_memt, info->fb_pbase, info->fb_size, + BUS_SPACE_MAP_PREFETCHABLE, &info->fb_vbase); + #elif defined(__sparc64__) + OF_decode_addr(node, 0, &space, &phys); + sc->sc_memt = &vt_efb_memt[0]; + info->addr = sparc64_fake_bustag(space, fb_phys, sc->sc_memt); + #else + bus_space_map(fdtbus_bs_tag, info->fb_pbase, info->fb_size, + BUS_SPACE_MAP_PREFETCHABLE, + (bus_space_handle_t *)&info->fb_vbase); + #endif + } else { + /* + * Some IBM systems don't have an address property. Try to + * guess the framebuffer region from the assigned addresses. + * This is ugly, but there doesn't seem to be an alternative. + * Linux does the same thing. + */ + + info->fb_pbase = n_pciaddrs; + for (i = 0; i < n_pciaddrs; i++) { + /* If it is too small, not the framebuffer */ + if (pciaddrs[i].size_lo < info->fb_size) + continue; + /* If it is not memory, it isn't either */ + if (!(pciaddrs[i].phys_hi & + OFW_PCI_PHYS_HI_SPACE_MEM32)) + continue; + + /* This could be the framebuffer */ + info->fb_pbase = i; + + /* If it is prefetchable, it certainly is */ + if (pciaddrs[i].phys_hi & OFW_PCI_PHYS_HI_PREFETCHABLE) + break; + } + + if (info->fb_pbase == n_pciaddrs) /* No candidates found */ + return (CN_DEAD); + + #if defined(__powerpc__) + OF_decode_addr(node, info->fb_pbase, &sc->sc_memt, + &info->fb_vbase); + #elif defined(__sparc64__) + OF_decode_addr(node, info->fb_pbase, &space, &info->fb_pbase); + sc->sc_memt = &vt_efb_memt[0]; + info->fb_vbase = sparc64_fake_bustag(space, info->fb_pbase, + sc->sc_memt); + #else + bus_space_map(fdtbus_bs_tag, info->fb_pbase, info->fb_size, + BUS_SPACE_MAP_PREFETCHABLE, + (bus_space_handle_t *)&info->fb_vbase); + #endif + } + + + /* blank full size */ + len = info->fb_size / 4; + for (i = 0; i < len; i++) { + ((uint32_t *)info->fb_vbase)[i] = 0; + } + + /* Get pixel storage size. */ + info->fb_bpp = info->fb_stride / info->fb_width * 8; + + /* + * Early FB driver work with static window buffer 80x25, so reduce + * size to 640x480. + */ + info->fb_width = VT_FB_DEFAULT_WIDTH; + info->fb_height = VT_FB_DEFAULT_HEIGHT; + +#ifdef FDT + vt_efb_initialize(info, node); +#else + vt_efb_initialize(info); +#endif + fb_probe(info); + vt_fb_init(vd); + + + return (CN_INTERNAL); +} From owner-svn-src-user@FreeBSD.ORG Tue Nov 5 23:12:53 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id D3D731F7; Tue, 5 Nov 2013 23:12:53 +0000 (UTC) (envelope-from ray@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id C193E2E77; Tue, 5 Nov 2013 23:12:53 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA5NCrr9085314; Tue, 5 Nov 2013 23:12:53 GMT (envelope-from ray@svn.freebsd.org) Received: (from ray@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA5NCr23085313; Tue, 5 Nov 2013 23:12:53 GMT (envelope-from ray@svn.freebsd.org) Message-Id: <201311052312.rA5NCr23085313@svn.freebsd.org> From: Aleksandr Rybalko Date: Tue, 5 Nov 2013 23:12:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257727 - user/ed/newcons/sys/dev/fb X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Nov 2013 23:12:53 -0000 Author: ray Date: Tue Nov 5 23:12:53 2013 New Revision: 257727 URL: http://svnweb.freebsd.org/changeset/base/257727 Log: Allow to use fb_probe() outside of driver. Sponsored by: The FreeBSD Foundation Modified: user/ed/newcons/sys/dev/fb/fbd.c Modified: user/ed/newcons/sys/dev/fb/fbd.c ============================================================================== --- user/ed/newcons/sys/dev/fb/fbd.c Tue Nov 5 23:09:36 2013 (r257726) +++ user/ed/newcons/sys/dev/fb/fbd.c Tue Nov 5 23:12:53 2013 (r257727) @@ -48,6 +48,7 @@ __FBSDID("$FreeBSD$"); #include +#include #include #include "fb_if.h" @@ -206,7 +207,7 @@ vt_fb_indir_copy(struct fb_info *sc, uin sc->copy(sc->fb_priv, offset_to, offset_from, size); } -static int +int fb_probe(struct fb_info *info) { From owner-svn-src-user@FreeBSD.ORG Tue Nov 5 23:16:53 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 0D3CC336; Tue, 5 Nov 2013 23:16:53 +0000 (UTC) (envelope-from ray@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id EF7062E90; Tue, 5 Nov 2013 23:16:52 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA5NGq2D085883; Tue, 5 Nov 2013 23:16:52 GMT (envelope-from ray@svn.freebsd.org) Received: (from ray@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA5NGqHi085882; Tue, 5 Nov 2013 23:16:52 GMT (envelope-from ray@svn.freebsd.org) Message-Id: <201311052316.rA5NGqHi085882@svn.freebsd.org> From: Aleksandr Rybalko Date: Tue, 5 Nov 2013 23:16:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257728 - user/ed/newcons/sys/arm/freescale/imx X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Nov 2013 23:16:53 -0000 Author: ray Date: Tue Nov 5 23:16:52 2013 New Revision: 257728 URL: http://svnweb.freebsd.org/changeset/base/257728 Log: Enable vt_early_fb driver for i.MX515 build. Sponsored by: The FreeBSD Foundation Modified: user/ed/newcons/sys/arm/freescale/imx/files.imx51 Modified: user/ed/newcons/sys/arm/freescale/imx/files.imx51 ============================================================================== --- user/ed/newcons/sys/arm/freescale/imx/files.imx51 Tue Nov 5 23:12:53 2013 (r257727) +++ user/ed/newcons/sys/arm/freescale/imx/files.imx51 Tue Nov 5 23:16:52 2013 (r257728) @@ -51,4 +51,4 @@ dev/ofw/ofw_iicbus.c optional fsliic # IPU - Image Processing Unit (frame buffer also) arm/freescale/imx/imx51_ipuv3.c optional sc arm/freescale/imx/imx51_ipuv3_newcons.c optional vt - +dev/vt/hw/fb/vt_early_fb.c optional vt From owner-svn-src-user@FreeBSD.ORG Wed Nov 6 11:16:11 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id AF39B3BE; Wed, 6 Nov 2013 11:16:11 +0000 (UTC) (envelope-from ray@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 9AB6425B1; Wed, 6 Nov 2013 11:16:11 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA6BGBpL041530; Wed, 6 Nov 2013 11:16:11 GMT (envelope-from ray@svn.freebsd.org) Received: (from ray@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA6BG63M041497; Wed, 6 Nov 2013 11:16:06 GMT (envelope-from ray@svn.freebsd.org) Message-Id: <201311061116.rA6BG63M041497@svn.freebsd.org> From: Aleksandr Rybalko Date: Wed, 6 Nov 2013 11:16:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257741 - in user/ed/newcons: etc gnu/lib/libgcc lib/libc/string sbin/ifconfig share/man/man9 sys/arm/allwinner sys/arm/allwinner/a20 sys/arm/arm sys/arm/broadcom/bcm2835 sys/arm/freesc... X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Nov 2013 11:16:11 -0000 Author: ray Date: Wed Nov 6 11:16:05 2013 New Revision: 257741 URL: http://svnweb.freebsd.org/changeset/base/257741 Log: MFC @r257740. Added: user/ed/newcons/sys/arm/arm/bus_space-v6.c - copied unchanged from r257740, head/sys/arm/arm/bus_space-v6.c Deleted: user/ed/newcons/sys/arm/allwinner/bus_space.c user/ed/newcons/sys/arm/freescale/imx/bus_space.c user/ed/newcons/sys/arm/rockchip/bus_space.c Modified: user/ed/newcons/etc/network.subr user/ed/newcons/gnu/lib/libgcc/Makefile user/ed/newcons/lib/libc/string/strlcpy.3 user/ed/newcons/sbin/ifconfig/ifconfig.c user/ed/newcons/share/man/man9/ifnet.9 user/ed/newcons/sys/arm/allwinner/a20/files.a20 user/ed/newcons/sys/arm/allwinner/files.a10 user/ed/newcons/sys/arm/arm/nexus.c user/ed/newcons/sys/arm/broadcom/bcm2835/bcm2835_fb.c user/ed/newcons/sys/arm/freescale/imx/files.imx51 user/ed/newcons/sys/arm/freescale/imx/files.imx53 user/ed/newcons/sys/arm/freescale/imx/files.imx6 user/ed/newcons/sys/arm/freescale/imx/tzic.c user/ed/newcons/sys/arm/mv/mv_localbus.c user/ed/newcons/sys/arm/mv/mv_pci.c user/ed/newcons/sys/arm/rockchip/files.rk30xx user/ed/newcons/sys/compat/linux/linux_ioctl.c user/ed/newcons/sys/compat/svr4/svr4_sockio.c user/ed/newcons/sys/conf/files user/ed/newcons/sys/conf/kern.pre.mk user/ed/newcons/sys/dev/fdt/simplebus.c user/ed/newcons/sys/dev/usb/wlan/if_run.c user/ed/newcons/sys/kern/capabilities.conf user/ed/newcons/sys/mips/cavium/std.octeon1 user/ed/newcons/sys/mips/mips/nexus.c user/ed/newcons/sys/net/if.c user/ed/newcons/sys/net/if.h user/ed/newcons/sys/netinet/in.c user/ed/newcons/sys/netpfil/pf/pf.c user/ed/newcons/sys/powerpc/mpc85xx/lbc.c user/ed/newcons/sys/powerpc/mpc85xx/pci_mpc85xx.c user/ed/newcons/tools/tools/syscall_timing/syscall_timing.c user/ed/newcons/usr.bin/dtc/fdt.cc user/ed/newcons/usr.sbin/bhyve/bhyverun.c user/ed/newcons/usr.sbin/bhyve/block_if.c user/ed/newcons/usr.sbin/bhyve/mevent.c user/ed/newcons/usr.sbin/bhyve/pci_ahci.c user/ed/newcons/usr.sbin/bhyve/pci_virtio_net.c user/ed/newcons/usr.sbin/pkg/pkg.c user/ed/newcons/usr.sbin/route6d/route6d.c Directory Properties: user/ed/newcons/ (props changed) user/ed/newcons/gnu/lib/ (props changed) user/ed/newcons/lib/libc/ (props changed) user/ed/newcons/sbin/ (props changed) user/ed/newcons/sys/ (props changed) user/ed/newcons/sys/conf/ (props changed) user/ed/newcons/usr.sbin/bhyve/ (props changed) Modified: user/ed/newcons/etc/network.subr ============================================================================== --- user/ed/newcons/etc/network.subr Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/etc/network.subr Wed Nov 6 11:16:05 2013 (r257741) @@ -1429,9 +1429,6 @@ childif_create() fi ${IFCONFIG_CMD} $i name $child && cfg=0 fi - if autoif $child; then - ifn_start $child - fi done # Create vlan interfaces @@ -1455,9 +1452,6 @@ childif_create() ${IFCONFIG_CMD} $i name $child && cfg=0 fi fi - if autoif $child; then - ifn_start $child - fi done return ${cfg} Modified: user/ed/newcons/gnu/lib/libgcc/Makefile ============================================================================== --- user/ed/newcons/gnu/lib/libgcc/Makefile Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/gnu/lib/libgcc/Makefile Wed Nov 6 11:16:05 2013 (r257741) @@ -27,19 +27,6 @@ CFLAGS+= -DIN_GCC -DIN_LIBGCC2 -D__GCC_F -I${GCCDIR}/config -I${GCCDIR} -I. \ -I${.CURDIR}/../../usr.bin/cc/cc_tools -# Added to quiesce warning around gcc_assert() for an inline macro that uses -# a static variable. This code has been moved around in gcc, but is still in -# use in the latest trunk version of the compiler. -# -# gnu/lib/libgcc/../../../contrib/gcc/unwind-dw2.c:208:36: -# warning: static variable 'dwarf_reg_size_table' is used in an inline -# function with external linkage [-Wstatic-in-inline] -# gcc_assert (index < (int) sizeof(dwarf_reg_size_table)); -# ^ -.if ${COMPILER_TYPE} == "clang" -CFLAGS+= -Wno-static-in-inline -.endif - LDFLAGS+= -nodefaultlibs LDADD+= -lc Modified: user/ed/newcons/lib/libc/string/strlcpy.3 ============================================================================== --- user/ed/newcons/lib/libc/string/strlcpy.3 Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/lib/libc/string/strlcpy.3 Wed Nov 6 11:16:05 2013 (r257741) @@ -27,7 +27,7 @@ .\" .\" $FreeBSD$ .\" -.Dd November 10, 2013 +.Dd November 4, 2013 .Dt STRLCPY 3 .Os .Sh NAME Modified: user/ed/newcons/sbin/ifconfig/ifconfig.c ============================================================================== --- user/ed/newcons/sbin/ifconfig/ifconfig.c Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/sbin/ifconfig/ifconfig.c Wed Nov 6 11:16:05 2013 (r257741) @@ -909,7 +909,7 @@ unsetifdescr(const char *val, int value, } #define IFFBITS \ -"\020\1UP\2BROADCAST\3DEBUG\4LOOPBACK\5POINTOPOINT\6SMART\7RUNNING" \ +"\020\1UP\2BROADCAST\3DEBUG\4LOOPBACK\5POINTOPOINT\7RUNNING" \ "\10NOARP\11PROMISC\12ALLMULTI\13OACTIVE\14SIMPLEX\15LINK0\16LINK1\17LINK2" \ "\20MULTICAST\22PPROMISC\23MONITOR\24STATICARP" Modified: user/ed/newcons/share/man/man9/ifnet.9 ============================================================================== --- user/ed/newcons/share/man/man9/ifnet.9 Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/share/man/man9/ifnet.9 Wed Nov 6 11:16:05 2013 (r257741) @@ -28,7 +28,7 @@ .\" .\" $FreeBSD$ .\" -.Dd April 26, 2013 +.Dd November 5, 2013 .Dt IFNET 9 .Os .Sh NAME @@ -583,14 +583,6 @@ The interface is a loopback device. The interface is point-to-point; .Dq broadcast address is actually the address of the other end. -.It Dv IFF_SMART -.Aq S* -The interface manages its own routes, rather than using the generic -code in -.Fn if_up -and -.Fn if_down . -This is probably useful for serial lines. .It Dv IFF_DRV_RUNNING .Aq D* The interface has been configured and dynamic resources were Modified: user/ed/newcons/sys/arm/allwinner/a20/files.a20 ============================================================================== --- user/ed/newcons/sys/arm/allwinner/a20/files.a20 Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/sys/arm/allwinner/a20/files.a20 Wed Nov 6 11:16:05 2013 (r257741) @@ -16,6 +16,6 @@ arm/allwinner/a10_gpio.c optional gpio arm/allwinner/a10_ehci.c optional ehci arm/allwinner/a10_wdog.c standard arm/allwinner/timer.c standard -arm/allwinner/bus_space.c standard +arm/arm/bus_space-v6.c standard arm/allwinner/common.c standard arm/allwinner/a10_machdep.c standard Modified: user/ed/newcons/sys/arm/allwinner/files.a10 ============================================================================== --- user/ed/newcons/sys/arm/allwinner/files.a10 Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/sys/arm/allwinner/files.a10 Wed Nov 6 11:16:05 2013 (r257741) @@ -16,7 +16,7 @@ arm/allwinner/a10_ehci.c optional ehci arm/allwinner/a10_wdog.c standard arm/allwinner/timer.c standard arm/allwinner/aintc.c standard -arm/allwinner/bus_space.c standard +arm/arm/bus_space-v6.c standard arm/allwinner/common.c standard #arm/allwinner/console.c standard arm/allwinner/a10_machdep.c standard Copied: user/ed/newcons/sys/arm/arm/bus_space-v6.c (from r257740, head/sys/arm/arm/bus_space-v6.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ user/ed/newcons/sys/arm/arm/bus_space-v6.c Wed Nov 6 11:16:05 2013 (r257741, copy of r257740, head/sys/arm/arm/bus_space-v6.c) @@ -0,0 +1,153 @@ +/*- + * Copyright (c) 2012 Damjan Marion + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * 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 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. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include + +#include + +/* Prototypes for all the bus_space structure functions */ +bs_protos(generic); +bs_protos(generic_armv4); + +/* + * The bus space tag. This is constant for all instances, so + * we never have to explicitly "create" it. + */ +static struct bus_space _base_tag = { + /* cookie */ + (void *) 0, + + /* mapping/unmapping */ + generic_bs_map, + generic_bs_unmap, + generic_bs_subregion, + + /* allocation/deallocation */ + generic_bs_alloc, + generic_bs_free, + + /* barrier */ + generic_bs_barrier, + + /* read (single) */ + generic_bs_r_1, + generic_armv4_bs_r_2, + generic_bs_r_4, + NULL, + + /* read multiple */ + generic_bs_rm_1, + generic_armv4_bs_rm_2, + generic_bs_rm_4, + NULL, + + /* read region */ + generic_bs_rr_1, + generic_armv4_bs_rr_2, + generic_bs_rr_4, + NULL, + + /* write (single) */ + generic_bs_w_1, + generic_armv4_bs_w_2, + generic_bs_w_4, + NULL, + + /* write multiple */ + generic_bs_wm_1, + generic_armv4_bs_wm_2, + generic_bs_wm_4, + NULL, + + /* write region */ + generic_bs_wr_1, + generic_armv4_bs_wr_2, + generic_bs_wr_4, + NULL, + + /* set multiple */ + NULL, + NULL, + NULL, + NULL, + + /* set region */ + generic_bs_sr_1, + generic_armv4_bs_sr_2, + generic_bs_sr_4, + NULL, + + /* copy */ + NULL, + generic_armv4_bs_c_2, + NULL, + NULL, + + /* read stream (single) */ + NULL, + NULL, + NULL, + NULL, + + /* read multiple stream */ + NULL, + generic_armv4_bs_rm_2, /* bus_space_read_multi_stream_2 */ + NULL, + NULL, + + /* read region stream */ + NULL, + NULL, + NULL, + NULL, + + /* write stream (single) */ + NULL, + NULL, + NULL, + NULL, + + /* write multiple stream */ + NULL, + generic_armv4_bs_wm_2, /* bus_space_write_multi_stream_2 */ + NULL, + NULL, + + /* write region stream */ + NULL, + NULL, + NULL, + NULL +}; + +bus_space_tag_t fdtbus_bs_tag = &_base_tag; Modified: user/ed/newcons/sys/arm/arm/nexus.c ============================================================================== --- user/ed/newcons/sys/arm/arm/nexus.c Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/sys/arm/arm/nexus.c Wed Nov 6 11:16:05 2013 (r257741) @@ -60,6 +60,12 @@ __FBSDID("$FreeBSD$"); #include #include +#include "opt_platform.h" + +#ifdef FDT +#include +#include +#else static MALLOC_DEFINE(M_NEXUSDEV, "nexusdev", "Nexus device"); struct nexus_device { @@ -76,13 +82,18 @@ static int nexus_print_child(device_t, d static device_t nexus_add_child(device_t, u_int, const char *, int); static struct resource *nexus_alloc_resource(device_t, device_t, int, int *, u_long, u_long, u_long, u_int); +#endif static int nexus_activate_resource(device_t, device_t, int, int, struct resource *); +static int nexus_deactivate_resource(device_t, device_t, int, int, + struct resource *); + static int nexus_setup_intr(device_t dev, device_t child, struct resource *res, int flags, driver_filter_t *filt, driver_intr_t *intr, void *arg, void **cookiep); static int nexus_teardown_intr(device_t, device_t, struct resource *, void *); static device_method_t nexus_methods[] = { +#ifndef FDT /* Device interface */ DEVMETHOD(device_probe, nexus_probe), DEVMETHOD(device_attach, nexus_attach), @@ -90,19 +101,28 @@ static device_method_t nexus_methods[] = DEVMETHOD(bus_print_child, nexus_print_child), DEVMETHOD(bus_add_child, nexus_add_child), DEVMETHOD(bus_alloc_resource, nexus_alloc_resource), +#endif DEVMETHOD(bus_activate_resource, nexus_activate_resource), + DEVMETHOD(bus_deactivate_resource, nexus_deactivate_resource), DEVMETHOD(bus_setup_intr, nexus_setup_intr), DEVMETHOD(bus_teardown_intr, nexus_teardown_intr), { 0, 0 } }; +static devclass_t nexus_devclass; +#ifndef FDT static driver_t nexus_driver = { "nexus", nexus_methods, 1 /* no softc */ }; -static devclass_t nexus_devclass; +#else +DEFINE_CLASS_1(nexus, nexus_driver, nexus_methods, + sizeof(struct ofw_nexus_softc), ofw_nexus_driver); +#endif +DRIVER_MODULE(nexus, root, nexus_driver, nexus_devclass, 0, 0); +#ifndef FDT static int nexus_probe(device_t dev) { @@ -113,30 +133,6 @@ nexus_probe(device_t dev) } static int -nexus_setup_intr(device_t dev, device_t child, struct resource *res, int flags, - driver_filter_t *filt, driver_intr_t *intr, void *arg, void **cookiep) -{ - int irq; - - if ((rman_get_flags(res) & RF_SHAREABLE) == 0) - flags |= INTR_EXCL; - - for (irq = rman_get_start(res); irq <= rman_get_end(res); irq++) { - arm_setup_irqhandler(device_get_nameunit(child), - filt, intr, arg, irq, flags, cookiep); - arm_unmask_irq(irq); - } - return (0); -} - -static int -nexus_teardown_intr(device_t dev, device_t child, struct resource *r, void *ih) -{ - - return (arm_remove_irqhandler(rman_get_start(r), ih)); -} - -static int nexus_attach(device_t dev) { @@ -156,7 +152,6 @@ nexus_attach(device_t dev) return (0); } - static int nexus_print_child(device_t bus, device_t child) { @@ -193,7 +188,6 @@ nexus_add_child(device_t bus, u_int orde * child of one of our descendants, not a direct child of nexus0. * (Exceptions include footbridge.) */ -#define ARM_BUS_SPACE_MEM 1 static struct resource * nexus_alloc_resource(device_t bus, device_t child, int type, int *rid, u_long start, u_long end, u_long count, u_int flags) @@ -204,6 +198,7 @@ nexus_alloc_resource(device_t bus, devic switch (type) { case SYS_RES_MEMORY: + case SYS_RES_IOPORT: rm = &mem_rman; break; @@ -216,7 +211,6 @@ nexus_alloc_resource(device_t bus, devic return (0); rman_set_rid(rv, *rid); - rman_set_bustag(rv, (void*)ARM_BUS_SPACE_MEM); rman_set_bushandle(rv, rman_get_start(rv)); if (needactivate) { @@ -228,6 +222,31 @@ nexus_alloc_resource(device_t bus, devic return (rv); } +#endif + +static int +nexus_setup_intr(device_t dev, device_t child, struct resource *res, int flags, + driver_filter_t *filt, driver_intr_t *intr, void *arg, void **cookiep) +{ + int irq; + + if ((rman_get_flags(res) & RF_SHAREABLE) == 0) + flags |= INTR_EXCL; + + for (irq = rman_get_start(res); irq <= rman_get_end(res); irq++) { + arm_setup_irqhandler(device_get_nameunit(child), + filt, intr, arg, irq, flags, cookiep); + arm_unmask_irq(irq); + } + return (0); +} + +static int +nexus_teardown_intr(device_t dev, device_t child, struct resource *r, void *ih) +{ + + return (arm_remove_irqhandler(rman_get_start(r), ih)); +} static int @@ -237,7 +256,7 @@ nexus_activate_resource(device_t bus, de /* * If this is a memory resource, map it into the kernel. */ - if (rman_get_bustag(r) == (void*)ARM_BUS_SPACE_MEM) { + if (type == SYS_RES_MEMORY || type == SYS_RES_IOPORT) { caddr_t vaddr = 0; u_int32_t paddr; u_int32_t psize; @@ -248,9 +267,21 @@ nexus_activate_resource(device_t bus, de poffs = paddr - trunc_page(paddr); vaddr = (caddr_t) pmap_mapdev(paddr-poffs, psize+poffs) + poffs; rman_set_virtual(r, vaddr); +#ifdef FDT + rman_set_bustag(r, fdtbus_bs_tag); +#else + rman_set_bustag(r, (void *)1); +#endif rman_set_bushandle(r, (bus_space_handle_t) vaddr); } return (rman_activate_resource(r)); } -DRIVER_MODULE(nexus, root, nexus_driver, nexus_devclass, 0, 0); +static int +nexus_deactivate_resource(device_t bus, device_t child, int type, int rid, + struct resource *res) +{ + + return (rman_deactivate_resource(res)); +} + Modified: user/ed/newcons/sys/arm/broadcom/bcm2835/bcm2835_fb.c ============================================================================== --- user/ed/newcons/sys/arm/broadcom/bcm2835/bcm2835_fb.c Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/sys/arm/broadcom/bcm2835/bcm2835_fb.c Wed Nov 6 11:16:05 2013 (r257741) @@ -361,7 +361,7 @@ static driver_t bcm_fb_driver = { sizeof(struct bcmsc_softc), }; -DRIVER_MODULE(bcm2835fb, fdtbus, bcm_fb_driver, bcm_fb_devclass, 0, 0); +DRIVER_MODULE(bcm2835fb, nexus, bcm_fb_driver, bcm_fb_devclass, 0, 0); /* * Video driver routines and glue. Modified: user/ed/newcons/sys/arm/freescale/imx/files.imx51 ============================================================================== --- user/ed/newcons/sys/arm/freescale/imx/files.imx51 Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/sys/arm/freescale/imx/files.imx51 Wed Nov 6 11:16:05 2013 (r257741) @@ -11,7 +11,7 @@ kern/kern_clocksource.c standard arm/freescale/imx/imx_machdep.c standard arm/freescale/imx/imx51_machdep.c standard arm/freescale/imx/common.c standard -arm/freescale/imx/bus_space.c standard +arm/arm/bus_space-v6.c standard # Dummy serial console #arm/freescale/imx/console.c standard Modified: user/ed/newcons/sys/arm/freescale/imx/files.imx53 ============================================================================== --- user/ed/newcons/sys/arm/freescale/imx/files.imx53 Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/sys/arm/freescale/imx/files.imx53 Wed Nov 6 11:16:05 2013 (r257741) @@ -11,7 +11,7 @@ kern/kern_clocksource.c standard arm/freescale/imx/imx_machdep.c standard arm/freescale/imx/imx53_machdep.c standard arm/freescale/imx/common.c standard -arm/freescale/imx/bus_space.c standard +arm/arm/bus_space-v6.c standard # Special serial console for debuging early boot code #arm/freescale/imx/console.c standard Modified: user/ed/newcons/sys/arm/freescale/imx/files.imx6 ============================================================================== --- user/ed/newcons/sys/arm/freescale/imx/files.imx6 Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/sys/arm/freescale/imx/files.imx6 Wed Nov 6 11:16:05 2013 (r257741) @@ -16,7 +16,7 @@ kern/kern_clocksource.c standard # arm/arm/gic.c standard arm/arm/pl310.c standard -arm/freescale/imx/bus_space.c standard +arm/arm/bus_space-v6.c standard arm/freescale/imx/common.c standard arm/freescale/imx/imx6_anatop.c standard arm/freescale/imx/imx6_ccm.c standard Modified: user/ed/newcons/sys/arm/freescale/imx/tzic.c ============================================================================== --- user/ed/newcons/sys/arm/freescale/imx/tzic.c Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/sys/arm/freescale/imx/tzic.c Wed Nov 6 11:16:05 2013 (r257741) @@ -142,9 +142,9 @@ static devclass_t tzic_devclass; /* * Memory space of controller located outside of device range, so let him to - * attach not only to simplebus, but fdtbus also. + * attach not only to simplebus, but nexus also. */ -EARLY_DRIVER_MODULE(tzic, fdtbus, tzic_driver, tzic_devclass, 0, 0, +EARLY_DRIVER_MODULE(tzic, nexus, tzic_driver, tzic_devclass, 0, 0, BUS_PASS_INTERRUPT); EARLY_DRIVER_MODULE(tzic, simplebus, tzic_driver, tzic_devclass, 0, 0, BUS_PASS_INTERRUPT); Modified: user/ed/newcons/sys/arm/mv/mv_localbus.c ============================================================================== --- user/ed/newcons/sys/arm/mv/mv_localbus.c Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/sys/arm/mv/mv_localbus.c Wed Nov 6 11:16:05 2013 (r257741) @@ -156,7 +156,7 @@ static struct localbus_bank localbus_ban devclass_t localbus_devclass; -DRIVER_MODULE(localbus, fdtbus, localbus_driver, localbus_devclass, 0, 0); +DRIVER_MODULE(localbus, nexus, localbus_driver, localbus_devclass, 0, 0); static int fdt_localbus_reg_decode(phandle_t node, struct localbus_softc *sc, Modified: user/ed/newcons/sys/arm/mv/mv_pci.c ============================================================================== --- user/ed/newcons/sys/arm/mv/mv_pci.c Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/sys/arm/mv/mv_pci.c Wed Nov 6 11:16:05 2013 (r257741) @@ -230,7 +230,7 @@ static driver_t mv_pcib_driver = { devclass_t pcib_devclass; -DRIVER_MODULE(pcib, fdtbus, mv_pcib_driver, pcib_devclass, 0, 0); +DRIVER_MODULE(pcib, nexus, mv_pcib_driver, pcib_devclass, 0, 0); static struct mtx pcicfg_mtx; Modified: user/ed/newcons/sys/arm/rockchip/files.rk30xx ============================================================================== --- user/ed/newcons/sys/arm/rockchip/files.rk30xx Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/sys/arm/rockchip/files.rk30xx Wed Nov 6 11:16:05 2013 (r257741) @@ -12,7 +12,7 @@ arm/arm/irq_dispatch.S standard arm/arm/gic.c standard arm/arm/mpcore_timer.c standard -arm/rockchip/bus_space.c standard +arm/arm/bus_space-v6.c standard arm/rockchip/common.c standard arm/rockchip/rk30xx_machdep.c standard arm/rockchip/rk30xx_pmu.c standard Modified: user/ed/newcons/sys/compat/linux/linux_ioctl.c ============================================================================== --- user/ed/newcons/sys/compat/linux/linux_ioctl.c Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/sys/compat/linux/linux_ioctl.c Wed Nov 6 11:16:05 2013 (r257741) @@ -2287,7 +2287,7 @@ linux_gifflags(struct thread *td, struct flags = (ifp->if_flags | ifp->if_drv_flags) & 0xffff; /* these flags have no Linux equivalent */ - flags &= ~(IFF_SMART|IFF_DRV_OACTIVE|IFF_SIMPLEX| + flags &= ~(IFF_DRV_OACTIVE|IFF_SIMPLEX| IFF_LINK0|IFF_LINK1|IFF_LINK2); /* Linux' multicast flag is in a different bit */ if (flags & IFF_MULTICAST) { Modified: user/ed/newcons/sys/compat/svr4/svr4_sockio.c ============================================================================== --- user/ed/newcons/sys/compat/svr4/svr4_sockio.c Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/sys/compat/svr4/svr4_sockio.c Wed Nov 6 11:16:05 2013 (r257741) @@ -154,15 +154,16 @@ svr4_sock_ioctl(fp, td, retval, fd, cmd, sc.svr4_ifc_len)); ifc = (struct ifconf *)≻ - ifc->ifc_req.ifr_addr.sa_family = - sc.svr4_ifc_req.svr4_ifr_addr.sa_family; - ifc->ifc_req.ifr_addr.sa_len = sizeof(struct osockaddr); + ifc->ifc_req->ifr_addr.sa_family = + sc.svr4_ifc_req->svr4_ifr_addr.sa_family; + ifc->ifc_req->ifr_addr.sa_len = + sizeof(struct osockaddr); - error = fo_ioctl(fp, SIOCGIFCONF, &sc, - td->td_ucred, td)); + error = fo_ioctl(fp, SIOCGIFCONF, &sc, td->td_ucred, + td); - sc.svr4_ifc_req.svr4_ifr_addr.sa_family = - ifc->ifc_req.ifr_addr.sa_family; + sc.svr4_ifc_req->svr4_ifr_addr.sa_family = + ifc->ifc_req->ifr_addr.sa_family; if (error != 0) return error; Modified: user/ed/newcons/sys/conf/files ============================================================================== --- user/ed/newcons/sys/conf/files Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/sys/conf/files Wed Nov 6 11:16:05 2013 (r257741) @@ -1403,7 +1403,7 @@ dev/fdt/fdt_pci.c optional fdt pci dev/fdt/fdt_slicer.c optional fdt cfi | fdt nand dev/fdt/fdt_static_dtb.S optional fdt fdt_dtb_static \ dependency "$S/boot/fdt/dts/${FDT_DTS_FILE}" -dev/fdt/fdtbus.c optional fdt +dev/fdt/fdtbus.c optional fdtbus dev/fdt/simplebus.c optional fdt dev/fe/if_fe.c optional fe dev/fe/if_fe_pccard.c optional fe pccard Modified: user/ed/newcons/sys/conf/kern.pre.mk ============================================================================== --- user/ed/newcons/sys/conf/kern.pre.mk Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/sys/conf/kern.pre.mk Wed Nov 6 11:16:05 2013 (r257741) @@ -80,16 +80,17 @@ INCLUDES+= -I$S/dev/cxgb -I$S/dev/cxgbe CFLAGS= ${COPTFLAGS} ${C_DIALECT} ${DEBUG} ${CWARNFLAGS} CFLAGS+= ${INCLUDES} -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h +CFLAGS_PARAM_INLINE_UNIT_GROWTH?=100 +CFLAGS_PARAM_LARGE_FUNCTION_GROWTH?=1000 +.if ${MACHINE_CPUARCH} == "mips" +CFLAGS_ARCH_PARAMS?=--param max-inline-insns-single=1000 +.endif .if ${COMPILER_TYPE} != "clang" CFLAGS+= -fno-common -finline-limit=${INLINE_LIMIT} -.if ${MACHINE_CPUARCH} != "mips" -CFLAGS+= --param inline-unit-growth=100 -CFLAGS+= --param large-function-growth=1000 -.else -# XXX Actually a gross hack just for Octeon because of the Simple Executive. -CFLAGS+= --param inline-unit-growth=10000 -CFLAGS+= --param large-function-growth=100000 -CFLAGS+= --param max-inline-insns-single=10000 +CFLAGS+= --param inline-unit-growth=${CFLAGS_PARAM_INLINE_UNIT_GROWTH} +CFLAGS+= --param large-function-growth=${CFLAGS_PARAM_LARGE_FUNCTION_GROWTH} +.if defined(CFLAGS_ARCH_PARAMS) +CFLAGS+=${CFLAGS_ARCH_PARAMS} .endif .endif WERROR?= -Werror @@ -193,7 +194,7 @@ MKMODULESENV+= WITHOUT_MODULES="${WITHOU MKMODULESENV+= DEBUG_FLAGS="${DEBUG}" .endif -# Are various things configured? +# Detect knerel config options that force stack frames to be turned on. DDB_ENABLED!= grep DDB opt_ddb.h || true ; echo DTR_ENABLED!= grep KDTRACE_FRAME opt_kdtrace.h || true ; echo HWPMC_ENABLED!= grep HWPMC opt_hwpmc_hooks.h || true ; echo Modified: user/ed/newcons/sys/dev/fdt/simplebus.c ============================================================================== --- user/ed/newcons/sys/dev/fdt/simplebus.c Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/sys/dev/fdt/simplebus.c Wed Nov 6 11:16:05 2013 (r257741) @@ -138,7 +138,7 @@ static driver_t simplebus_driver = { devclass_t simplebus_devclass; -DRIVER_MODULE(simplebus, fdtbus, simplebus_driver, simplebus_devclass, 0, 0); +DRIVER_MODULE(simplebus, nexus, simplebus_driver, simplebus_devclass, 0, 0); DRIVER_MODULE(simplebus, simplebus, simplebus_driver, simplebus_devclass, 0, 0); Modified: user/ed/newcons/sys/dev/usb/wlan/if_run.c ============================================================================== --- user/ed/newcons/sys/dev/usb/wlan/if_run.c Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/sys/dev/usb/wlan/if_run.c Wed Nov 6 11:16:05 2013 (r257741) @@ -700,7 +700,7 @@ run_attach(device_t self) TASK_INIT(&sc->cmdq_task, 0, run_cmdq_cb, sc); TASK_INIT(&sc->ratectl_task, 0, run_ratectl_cb, sc); - callout_init((struct callout *)&sc->ratectl_ch, 1); + usb_callout_init_mtx(&sc->ratectl_ch, &sc->sc_mtx, 0); if (bootverbose) ieee80211_announce(ic); @@ -1010,13 +1010,12 @@ run_load_microcode(struct run_softc *sc) /* cheap sanity check */ temp = fw->data; bytes = *temp; - if (bytes != be64toh(0xffffff0210280210)) { + if (bytes != be64toh(0xffffff0210280210ULL)) { device_printf(sc->sc_dev, "firmware checksum failed\n"); error = EINVAL; goto fail; } - run_read(sc, RT2860_ASIC_VER_ID, &tmp); /* write microcode image */ run_write_region_1(sc, RT2870_FW_BASE, base, 4096); run_write(sc, RT2860_H2M_MAILBOX_CID, 0xffffffff); @@ -2237,8 +2236,10 @@ run_ratectl_cb(void *arg, int pending) ieee80211_iterate_nodes(&ic->ic_sta, run_iter_func, sc); } + RUN_LOCK(sc); if(sc->ratectl_run != RUN_RATECTL_OFF) usb_callout_reset(&sc->ratectl_ch, hz, run_ratectl_to, sc); + RUN_UNLOCK(sc); } static void Modified: user/ed/newcons/sys/kern/capabilities.conf ============================================================================== --- user/ed/newcons/sys/kern/capabilities.conf Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/sys/kern/capabilities.conf Wed Nov 6 11:16:05 2013 (r257741) @@ -386,13 +386,6 @@ listen lseek ## -## Allow MAC label operations by file descriptor, subject to capability -## rights. -## -mac_get_fd -mac_set_fd - -## ## Allow simple VM operations on the current process. ## madvise @@ -552,7 +545,7 @@ sched_get_priority_min ## sched_getparam sched_getscheduler -sched_rr_getinterval +sched_rr_get_interval sched_setparam sched_setscheduler sched_yield Modified: user/ed/newcons/sys/mips/cavium/std.octeon1 ============================================================================== --- user/ed/newcons/sys/mips/cavium/std.octeon1 Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/sys/mips/cavium/std.octeon1 Wed Nov 6 11:16:05 2013 (r257741) @@ -3,3 +3,7 @@ files "../cavium/files.octeon1" machine mips mips64 cpu CPU_CNMIPS + +makeoptions CFLAGS_PARAM_INLINE_UNIT_GROWTH=10000 +makeoptions CFLAGS_PARAM_LARGE_FUNCTION_GROWTH=100000 +makeoptions CFLAGS_ARCH_PARAMS="--param max-inline-insns-single=10000" Modified: user/ed/newcons/sys/mips/mips/nexus.c ============================================================================== --- user/ed/newcons/sys/mips/mips/nexus.c Wed Nov 6 10:31:52 2013 (r257740) +++ user/ed/newcons/sys/mips/mips/nexus.c Wed Nov 6 11:16:05 2013 (r257741) @@ -58,6 +58,12 @@ __FBSDID("$FreeBSD$"); #include #include +#include "opt_platform.h" + +#ifdef FDT +#include +#endif + #undef NEXUS_DEBUG #ifdef NEXUS_DEBUG #define dprintf printf @@ -65,6 +71,9 @@ __FBSDID("$FreeBSD$"); #define dprintf(x, arg...) #endif /* NEXUS_DEBUG */ +#define NUM_MIPS_IRQS 6 + +#ifndef FDT static MALLOC_DEFINE(M_NEXUSDEV, "nexusdev", "Nexus device"); struct nexus_device { @@ -72,7 +81,6 @@ struct nexus_device { }; #define DEVTONX(dev) ((struct nexus_device *)device_get_ivars(dev)) -#define NUM_MIPS_IRQS 6 static struct rman irq_rman; static struct rman mem_rman; @@ -80,18 +88,13 @@ static struct rman mem_rman; static struct resource * nexus_alloc_resource(device_t, device_t, int, int *, u_long, u_long, u_long, u_int); -static int nexus_activate_resource(device_t, device_t, int, int, - struct resource *); static device_t nexus_add_child(device_t, u_int, const char *, int); static int nexus_attach(device_t); -static int nexus_deactivate_resource(device_t, device_t, int, int, - struct resource *); static void nexus_delete_resource(device_t, device_t, int, int); static struct resource_list * nexus_get_reslist(device_t, device_t); static int nexus_get_resource(device_t, device_t, int, int, u_long *, u_long *); -static void nexus_hinted_child(device_t, const char *, int); static int nexus_print_child(device_t, device_t); static int nexus_print_all_resources(device_t dev); static int nexus_probe(device_t); @@ -99,6 +102,12 @@ static int nexus_release_resource(device struct resource *); static int nexus_set_resource(device_t, device_t, int, int, u_long, u_long); +#endif +static int nexus_activate_resource(device_t, device_t, int, int, + struct resource *); +static int nexus_deactivate_resource(device_t, device_t, int, int, + struct resource *); +static void nexus_hinted_child(device_t, const char *, int); static int nexus_setup_intr(device_t dev, device_t child, struct resource *res, int flags, driver_filter_t *filt, driver_intr_t *intr, void *arg, void **cookiep); @@ -106,35 +115,43 @@ static int nexus_teardown_intr(device_t, void *); static device_method_t nexus_methods[] = { +#ifndef FDT /* Device interface */ DEVMETHOD(device_probe, nexus_probe), DEVMETHOD(device_attach, nexus_attach), /* Bus interface */ DEVMETHOD(bus_add_child, nexus_add_child), - DEVMETHOD(bus_activate_resource,nexus_activate_resource), DEVMETHOD(bus_alloc_resource, nexus_alloc_resource), - DEVMETHOD(bus_deactivate_resource, nexus_deactivate_resource), DEVMETHOD(bus_delete_resource, nexus_delete_resource), DEVMETHOD(bus_get_resource, nexus_get_resource), DEVMETHOD(bus_get_resource_list, nexus_get_reslist), - DEVMETHOD(bus_hinted_child, nexus_hinted_child), DEVMETHOD(bus_print_child, nexus_print_child), DEVMETHOD(bus_release_resource, nexus_release_resource), DEVMETHOD(bus_set_resource, nexus_set_resource), +#endif DEVMETHOD(bus_setup_intr, nexus_setup_intr), DEVMETHOD(bus_teardown_intr, nexus_teardown_intr), + DEVMETHOD(bus_activate_resource,nexus_activate_resource), + DEVMETHOD(bus_deactivate_resource, nexus_deactivate_resource), + DEVMETHOD(bus_hinted_child, nexus_hinted_child), { 0, 0 } }; +#ifndef FDT static driver_t nexus_driver = { "nexus", nexus_methods, 1 /* no softc */ }; +#else +DEFINE_CLASS_1(nexus, nexus_driver, nexus_methods, + sizeof(struct ofw_nexus_softc), ofw_nexus_driver); +#endif static devclass_t nexus_devclass; +#ifndef FDT static int nexus_probe(device_t dev) { @@ -163,34 +180,6 @@ nexus_probe(device_t dev) } static int -nexus_setup_intr(device_t dev, device_t child, struct resource *res, int flags, - driver_filter_t *filt, driver_intr_t *intr, void *arg, void **cookiep) -{ - register_t s; - int irq; - - s = intr_disable(); - irq = rman_get_start(res); - if (irq >= NUM_MIPS_IRQS) { - intr_restore(s); - return (0); - } - - cpu_establish_hardintr(device_get_nameunit(child), filt, intr, arg, - irq, flags, cookiep); - intr_restore(s); - return (0); -} - -static int -nexus_teardown_intr(device_t dev, device_t child, struct resource *r, void *ih) -{ - - printf("Unimplemented %s at %s:%d\n", __func__, __FILE__, __LINE__); - return (0); -} - -static int nexus_attach(device_t dev) { @@ -231,59 +220,6 @@ nexus_print_all_resources(device_t dev) return (retval); } -static void -nexus_hinted_child(device_t bus, const char *dname, int dunit) -{ - device_t child; - long maddr; - int msize; - int order; - int result; - int irq; - int mem_hints_count; - - if ((resource_int_value(dname, dunit, "order", &order)) != 0) - order = 1000; - child = BUS_ADD_CHILD(bus, order, dname, dunit); - if (child == NULL) - return; - - /* - * Set hard-wired resources for hinted child using - * specific RIDs. - */ - mem_hints_count = 0; - if (resource_long_value(dname, dunit, "maddr", &maddr) == 0) - mem_hints_count++; - if (resource_int_value(dname, dunit, "msize", &msize) == 0) - mem_hints_count++; - - /* check if all info for mem resource has been provided */ - if ((mem_hints_count > 0) && (mem_hints_count < 2)) { - printf("Either maddr or msize hint is missing for %s%d\n", - dname, dunit); - } - else if (mem_hints_count) { - dprintf("%s: discovered hinted child %s at maddr %p(%d)\n", - __func__, device_get_nameunit(child), - (void *)(intptr_t)maddr, msize); - - result = bus_set_resource(child, SYS_RES_MEMORY, 0, maddr, - msize); - if (result != 0) { - device_printf(bus, - "warning: bus_set_resource() failed\n"); - } - } - - if (resource_int_value(dname, dunit, "irq", &irq) == 0) { - result = bus_set_resource(child, SYS_RES_IRQ, 0, irq, 1); - if (result != 0) - device_printf(bus, - "warning: bus_set_resource() failed\n"); - } -} - static device_t nexus_add_child(device_t bus, u_int order, const char *name, int unit) { @@ -381,30 +317,6 @@ nexus_alloc_resource(device_t bus, devic return (rv); } -static int -nexus_activate_resource(device_t bus, device_t child, int type, int rid, - struct resource *r) -{ - void *vaddr; - vm_paddr_t paddr; - vm_size_t psize; - - /* - * If this is a memory resource, use pmap_mapdev to map it. - */ - if (type == SYS_RES_MEMORY) { - paddr = rman_get_start(r); - psize = rman_get_size(r); - vaddr = pmap_mapdev(paddr, psize); - - rman_set_virtual(r, vaddr); - rman_set_bustag(r, mips_bus_space_generic); - rman_set_bushandle(r, (bus_space_handle_t)(uintptr_t)vaddr); - } - - return (rman_activate_resource(r)); -} - static struct resource_list * nexus_get_reslist(device_t dev, device_t child) { @@ -475,6 +387,31 @@ nexus_release_resource(device_t bus, dev return (rman_release_resource(r)); } +#endif + +static int +nexus_activate_resource(device_t bus, device_t child, int type, int rid, + struct resource *r) +{ + void *vaddr; + vm_paddr_t paddr; + vm_size_t psize; + + /* + * If this is a memory resource, use pmap_mapdev to map it. + */ + if (type == SYS_RES_MEMORY || type == SYS_RES_IOPORT) { + paddr = rman_get_start(r); + psize = rman_get_size(r); + vaddr = pmap_mapdev(paddr, psize); + + rman_set_virtual(r, vaddr); + rman_set_bustag(r, mips_bus_space_generic); + rman_set_bushandle(r, (bus_space_handle_t)(uintptr_t)vaddr); + } + + return (rman_activate_resource(r)); +} static int nexus_deactivate_resource(device_t bus, device_t child, int type, int rid, @@ -490,4 +427,85 @@ nexus_deactivate_resource(device_t bus, return (rman_deactivate_resource(r)); } +static int +nexus_setup_intr(device_t dev, device_t child, struct resource *res, int flags, + driver_filter_t *filt, driver_intr_t *intr, void *arg, void **cookiep) +{ + register_t s; + int irq; + *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-user@FreeBSD.ORG Wed Nov 6 14:24:25 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 8E62C9DE; Wed, 6 Nov 2013 14:24:25 +0000 (UTC) (envelope-from ray@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 5FD652316; Wed, 6 Nov 2013 14:24:25 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA6EOPeX007017; Wed, 6 Nov 2013 14:24:25 GMT (envelope-from ray@svn.freebsd.org) Received: (from ray@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA6EOO4O007011; Wed, 6 Nov 2013 14:24:24 GMT (envelope-from ray@svn.freebsd.org) Message-Id: <201311061424.rA6EOO4O007011@svn.freebsd.org> From: Aleksandr Rybalko Date: Wed, 6 Nov 2013 14:24:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257744 - in user/ed/newcons/sys: conf modules/drm2/i915kms modules/drm2/radeonkms X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Nov 2013 14:24:25 -0000 Author: ray Date: Wed Nov 6 14:24:24 2013 New Revision: 257744 URL: http://svnweb.freebsd.org/changeset/base/257744 Log: DRM2 have to know how to use fb_if. Sponsored by: The FreeBSD Foundation Modified: user/ed/newcons/sys/conf/kmod.mk user/ed/newcons/sys/modules/drm2/i915kms/Makefile user/ed/newcons/sys/modules/drm2/radeonkms/Makefile Modified: user/ed/newcons/sys/conf/kmod.mk ============================================================================== --- user/ed/newcons/sys/conf/kmod.mk Wed Nov 6 12:57:01 2013 (r257743) +++ user/ed/newcons/sys/conf/kmod.mk Wed Nov 6 14:24:24 2013 (r257744) @@ -340,7 +340,7 @@ CFLAGS+= ${CONF_CFLAGS} MFILES?= dev/acpica/acpi_if.m dev/acpi_support/acpi_wmi_if.m \ dev/agp/agp_if.m dev/ata/ata_if.m dev/eisa/eisa_if.m \ - dev/gpio/gpio_if.m dev/gpio/gpiobus_if.m \ + dev/fb/fb_if.m dev/gpio/gpio_if.m dev/gpio/gpiobus_if.m \ dev/iicbus/iicbb_if.m dev/iicbus/iicbus_if.m \ dev/mmc/mmcbr_if.m dev/mmc/mmcbus_if.m \ dev/mii/miibus_if.m dev/mvs/mvs_if.m dev/ofw/ofw_bus_if.m \ Modified: user/ed/newcons/sys/modules/drm2/i915kms/Makefile ============================================================================== --- user/ed/newcons/sys/modules/drm2/i915kms/Makefile Wed Nov 6 12:57:01 2013 (r257743) +++ user/ed/newcons/sys/modules/drm2/i915kms/Makefile Wed Nov 6 14:24:24 2013 (r257744) @@ -34,7 +34,7 @@ SRCS = \ SRCS += i915_ioc32.c .endif -SRCS += device_if.h bus_if.h pci_if.h iicbus_if.h iicbb_if.h opt_drm.h \ - opt_compat.h +SRCS += device_if.h fb_if.h bus_if.h pci_if.h iicbus_if.h iicbb_if.h \ + opt_drm.h opt_compat.h .include Modified: user/ed/newcons/sys/modules/drm2/radeonkms/Makefile ============================================================================== --- user/ed/newcons/sys/modules/drm2/radeonkms/Makefile Wed Nov 6 12:57:01 2013 (r257743) +++ user/ed/newcons/sys/modules/drm2/radeonkms/Makefile Wed Nov 6 14:24:24 2013 (r257744) @@ -96,6 +96,7 @@ SRCS += \ opt_drm.h \ acpi_if.h \ bus_if.h \ + fb_if.h \ device_if.h \ iicbb_if.h \ iicbus_if.h \ From owner-svn-src-user@FreeBSD.ORG Thu Nov 7 10:32:37 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id CC1B3432; Thu, 7 Nov 2013 10:32:37 +0000 (UTC) (envelope-from des@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id BA8FB202A; Thu, 7 Nov 2013 10:32:37 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA7AWbZk032176; Thu, 7 Nov 2013 10:32:37 GMT (envelope-from des@svn.freebsd.org) Received: (from des@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA7AWbL0032175; Thu, 7 Nov 2013 10:32:37 GMT (envelope-from des@svn.freebsd.org) Message-Id: <201311071032.rA7AWbL0032175@svn.freebsd.org> From: Dag-Erling Smørgrav Date: Thu, 7 Nov 2013 10:32:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257786 - user/des/tinderbox/etc X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 07 Nov 2013 10:32:37 -0000 Author: des Date: Thu Nov 7 10:32:37 2013 New Revision: 257786 URL: http://svnweb.freebsd.org/changeset/base/257786 Log: Add WITHOUT_CLANG_IS_CC. Submitted by: dim Modified: user/des/tinderbox/etc/head-noclang-build.rc Modified: user/des/tinderbox/etc/head-noclang-build.rc ============================================================================== --- user/des/tinderbox/etc/head-noclang-build.rc Thu Nov 7 10:30:20 2013 (r257785) +++ user/des/tinderbox/etc/head-noclang-build.rc Thu Nov 7 10:32:37 2013 (r257786) @@ -5,4 +5,4 @@ # include head-build -env += WITHOUT_CLANG=YES, WITH_GCC=YES, WITH_GNUCXX=YES +env += WITHOUT_CLANG=YES, WITHOUT_CLANG_IS_CC=YES, WITH_GCC=YES, WITH_GNUCXX=YES From owner-svn-src-user@FreeBSD.ORG Thu Nov 7 21:08:54 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 612EFE6A; Thu, 7 Nov 2013 21:08:54 +0000 (UTC) (envelope-from ray@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 3F22F2E40; Thu, 7 Nov 2013 21:08:54 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA7L8sMs057253; Thu, 7 Nov 2013 21:08:54 GMT (envelope-from ray@svn.freebsd.org) Received: (from ray@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA7L8rI9057248; Thu, 7 Nov 2013 21:08:53 GMT (envelope-from ray@svn.freebsd.org) Message-Id: <201311072108.rA7L8rI9057248@svn.freebsd.org> From: Aleksandr Rybalko Date: Thu, 7 Nov 2013 21:08:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257815 - in user/ed/newcons/sys/dev: fb vt vt/hw/fb X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 07 Nov 2013 21:08:54 -0000 Author: ray Date: Thu Nov 7 21:08:52 2013 New Revision: 257815 URL: http://svnweb.freebsd.org/changeset/base/257815 Log: Handle suspend/resume. Switch to console window before suspend, switch back on resume. That fix issue with broken Xorg image after resume. Fix some style whilst here. Sponsored by: The FreeBSD Foundation Modified: user/ed/newcons/sys/dev/fb/fbd.c user/ed/newcons/sys/dev/vt/hw/fb/vt_fb.c user/ed/newcons/sys/dev/vt/hw/fb/vt_fb.h user/ed/newcons/sys/dev/vt/vt.h user/ed/newcons/sys/dev/vt/vt_core.c Modified: user/ed/newcons/sys/dev/fb/fbd.c ============================================================================== --- user/ed/newcons/sys/dev/fb/fbd.c Thu Nov 7 21:08:12 2013 (r257814) +++ user/ed/newcons/sys/dev/fb/fbd.c Thu Nov 7 21:08:52 2013 (r257815) @@ -393,6 +393,21 @@ fbd_detach(device_t dev) return (err); } +static int +fbd_suspend(device_t dev) +{ + + vt_fb_suspend(); + return (bus_generic_suspend(dev)); +} + +static int +fbd_resume(device_t dev) +{ + + vt_fb_resume(); + return (bus_generic_resume(dev)); +} static device_method_t fbd_methods[] = { /* Device interface */ @@ -401,8 +416,8 @@ static device_method_t fbd_methods[] = { DEVMETHOD(device_detach, fbd_detach), DEVMETHOD(device_shutdown, bus_generic_shutdown), - DEVMETHOD(device_suspend, bus_generic_suspend), - DEVMETHOD(device_resume, bus_generic_resume), + DEVMETHOD(device_suspend, fbd_suspend), + DEVMETHOD(device_resume, fbd_resume), { 0, 0 } }; Modified: user/ed/newcons/sys/dev/vt/hw/fb/vt_fb.c ============================================================================== --- user/ed/newcons/sys/dev/vt/hw/fb/vt_fb.c Thu Nov 7 21:08:12 2013 (r257814) +++ user/ed/newcons/sys/dev/vt/hw/fb/vt_fb.c Thu Nov 7 21:08:52 2013 (r257815) @@ -211,3 +211,17 @@ vt_fb_attach(struct fb_info *info) return (0); } + +void +vt_fb_resume(void) +{ + + vt_resume(); +} + +void +vt_fb_suspend(void) +{ + + vt_suspend(); +} Modified: user/ed/newcons/sys/dev/vt/hw/fb/vt_fb.h ============================================================================== --- user/ed/newcons/sys/dev/vt/hw/fb/vt_fb.h Thu Nov 7 21:08:12 2013 (r257814) +++ user/ed/newcons/sys/dev/vt/hw/fb/vt_fb.h Thu Nov 7 21:08:52 2013 (r257815) @@ -33,6 +33,8 @@ #define _DEV_VT_HW_FB_VT_FB_H_ /* Generic framebuffer interface call vt_fb_attach to init VT(9) */ int vt_fb_attach(struct fb_info *info); +void vt_fb_resume(void); +void vt_fb_suspend(void); int fb_probe(struct fb_info *info); Modified: user/ed/newcons/sys/dev/vt/vt.h ============================================================================== --- user/ed/newcons/sys/dev/vt/vt.h Thu Nov 7 21:08:12 2013 (r257814) +++ user/ed/newcons/sys/dev/vt/vt.h Thu Nov 7 21:08:52 2013 (r257815) @@ -61,6 +61,8 @@ TUNABLE_INT("kern.vt." #_name, &vt_##_na struct vt_driver; void vt_allocate(struct vt_driver *, void *); +void vt_resume(void); +void vt_suspend(void); typedef unsigned int vt_axis_t; @@ -81,6 +83,7 @@ typedef unsigned int vt_axis_t; struct vt_device { struct vt_window *vd_windows[VT_MAXWINDOWS]; /* (c) Windows. */ struct vt_window *vd_curwindow; /* (d) Current window. */ + struct vt_window *vd_savedwindow;/* (?) Saved for suspend. */ const struct vt_driver *vd_driver; /* (c) Graphics driver. */ void *vd_softc; /* (u) Driver data. */ vt_axis_t vd_width; /* (?) Screen width. */ Modified: user/ed/newcons/sys/dev/vt/vt_core.c ============================================================================== --- user/ed/newcons/sys/dev/vt/vt_core.c Thu Nov 7 21:08:12 2013 (r257814) +++ user/ed/newcons/sys/dev/vt/vt_core.c Thu Nov 7 21:08:52 2013 (r257815) @@ -977,6 +977,7 @@ vt_proc_alive(struct vt_window *vw) static int signal_vt_rel(struct vt_window *vw) { + if (vw->vw_smode.mode != VT_PROCESS) return FALSE; if (vw->vw_proc == NULL || vt_proc_alive(vw) == FALSE) { @@ -995,6 +996,7 @@ signal_vt_rel(struct vt_window *vw) static int signal_vt_acq(struct vt_window *vw) { + if (vw->vw_smode.mode != VT_PROCESS) return FALSE; if (vw == vw->vw_device->vd_windows[VT_CONSWINDOW]) @@ -1015,6 +1017,7 @@ signal_vt_acq(struct vt_window *vw) static int finish_vt_rel(struct vt_window *vw, int release, int *s) { + if (vw->vw_flags & VWF_SWWAIT_REL) { vw->vw_flags &= ~VWF_SWWAIT_REL; if (release) { @@ -1029,6 +1032,7 @@ finish_vt_rel(struct vt_window *vw, int static int finish_vt_acq(struct vt_window *vw) { + if (vw->vw_flags & VWF_SWWAIT_ACQ) { vw->vw_flags &= ~VWF_SWWAIT_ACQ; return 0; @@ -1463,3 +1467,23 @@ vt_allocate(struct vt_driver *drv, void vt_winsize(vd, vd->vd_windows[VT_CONSWINDOW]->vw_font, &wsz); terminal_set_winsize(vd->vd_windows[VT_CONSWINDOW]->vw_terminal, &wsz); } + +void +vt_suspend() +{ + + /* Save current window. */ + main_vd->vd_savedwindow = main_vd->vd_curwindow; + /* Ask holding process to free window and switch to console window */ + vt_proc_window_switch(main_vd->vd_windows[VT_CONSWINDOW]); +} + +void +vt_resume() +{ + + /* Switch back to saved window */ + if (main_vd->vd_savedwindow != NULL) + vt_proc_window_switch(main_vd->vd_savedwindow); + main_vd->vd_savedwindow = NULL; +} From owner-svn-src-user@FreeBSD.ORG Thu Nov 7 21:12:20 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id A2BBAFE8; Thu, 7 Nov 2013 21:12:20 +0000 (UTC) (envelope-from ray@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 9099B2E96; Thu, 7 Nov 2013 21:12:20 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA7LCKKf059957; Thu, 7 Nov 2013 21:12:20 GMT (envelope-from ray@svn.freebsd.org) Received: (from ray@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA7LCKJo059956; Thu, 7 Nov 2013 21:12:20 GMT (envelope-from ray@svn.freebsd.org) Message-Id: <201311072112.rA7LCKJo059956@svn.freebsd.org> From: Aleksandr Rybalko Date: Thu, 7 Nov 2013 21:12:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257816 - user/ed/newcons/sys/conf X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 07 Nov 2013 21:12:20 -0000 Author: ray Date: Thu Nov 7 21:12:20 2013 New Revision: 257816 URL: http://svnweb.freebsd.org/changeset/base/257816 Log: Define VT_FB_DEFAULT_WIDTH and VT_FB_DEFAULT_HEIGHT options, to allow to make static console buffer bigger than default. Sponsored by: The FreeBSD Foundation Modified: user/ed/newcons/sys/conf/options Modified: user/ed/newcons/sys/conf/options ============================================================================== --- user/ed/newcons/sys/conf/options Thu Nov 7 21:08:52 2013 (r257815) +++ user/ed/newcons/sys/conf/options Thu Nov 7 21:12:20 2013 (r257816) @@ -731,8 +731,10 @@ SAFE_DEBUG opt_safe.h SAFE_NO_RNG opt_safe.h SAFE_RNDTEST opt_safe.h -# syscons options +# syscons/vt options MAXCONS opt_syscons.h +VT_FB_DEFAULT_WIDTH opt_syscons.h +VT_FB_DEFAULT_HEIGHT opt_syscons.h SC_ALT_MOUSE_IMAGE opt_syscons.h SC_CUT_SPACES2TABS opt_syscons.h SC_CUT_SEPCHARS opt_syscons.h From owner-svn-src-user@FreeBSD.ORG Thu Nov 7 22:34:23 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 6839E127; Thu, 7 Nov 2013 22:34:23 +0000 (UTC) (envelope-from jlh@FreeBSD.org) Received: from caravan.chchile.org (caravan.chchile.org [178.32.125.136]) (using TLSv1 with cipher ADH-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id DC4562336; Thu, 7 Nov 2013 22:34:22 +0000 (UTC) Received: by caravan.chchile.org (Postfix, from userid 1000) id 594E5C2A0C; Thu, 7 Nov 2013 22:34:15 +0000 (UTC) Date: Thu, 7 Nov 2013 23:34:15 +0100 From: Jeremie Le Hen To: Colin Percival , jilles@FreeBSD.org Subject: Re: svn commit: r257602 - user/cperciva/panicmail Message-ID: <20131107223414.GH37879@caravan.chchile.org> Mail-Followup-To: Colin Percival , jilles@FreeBSD.org, src-committers@freebsd.org, svn-src-user@freebsd.org References: <201311040300.rA430jCQ066512@svn.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201311040300.rA430jCQ066512@svn.freebsd.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: src-committers@freebsd.org, svn-src-user@freebsd.org X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 07 Nov 2013 22:34:23 -0000 On Mon, Nov 04, 2013 at 03:00:45AM +0000, Colin Percival wrote: > Author: cperciva > Date: Mon Nov 4 03:00:44 2013 > New Revision: 257602 > URL: http://svnweb.freebsd.org/changeset/base/257602 > > Log: > Change > local tmpfile=`mktemp` || exit 1 > into > local tmpfile > tmpfile=`mktemp` || exit 1 > since the former is parsed as "local || exit 1" and loses the exit code > from mktemp. > > Submitted by: jilles Out of curiosity, is this brokenness of local mandated by the standard? -- Jeremie Le Hen Scientists say the world is made up of Protons, Neutrons and Electrons. They forgot to mention Morons. From owner-svn-src-user@FreeBSD.ORG Fri Nov 8 10:57:18 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 6BFF4F17; Fri, 8 Nov 2013 10:57:18 +0000 (UTC) (envelope-from jilles@stack.nl) Received: from mx1.stack.nl (unknown [IPv6:2001:610:1108:5012::107]) (using TLSv1 with cipher ADH-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 2F9842168; Fri, 8 Nov 2013 10:57:18 +0000 (UTC) Received: from turtle.stack.nl (turtle.stack.nl [IPv6:2001:610:1108:5010::132]) by mx1.stack.nl (Postfix) with ESMTP id 712B21203DC; Fri, 8 Nov 2013 11:57:03 +0100 (CET) Received: by turtle.stack.nl (Postfix, from userid 1677) id 45F55CB4E; Fri, 8 Nov 2013 11:57:03 +0100 (CET) Date: Fri, 8 Nov 2013 11:57:03 +0100 From: Jilles Tjoelker To: Colin Percival , src-committers@freebsd.org, svn-src-user@freebsd.org Subject: Re: svn commit: r257602 - user/cperciva/panicmail Message-ID: <20131108105702.GA25448@stack.nl> References: <201311040300.rA430jCQ066512@svn.freebsd.org> <20131107223414.GH37879@caravan.chchile.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20131107223414.GH37879@caravan.chchile.org> User-Agent: Mutt/1.5.21 (2010-09-15) X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 08 Nov 2013 10:57:18 -0000 On Thu, Nov 07, 2013 at 11:34:15PM +0100, Jeremie Le Hen wrote: > On Mon, Nov 04, 2013 at 03:00:45AM +0000, Colin Percival wrote: > > Author: cperciva > > Date: Mon Nov 4 03:00:44 2013 > > New Revision: 257602 > > URL: http://svnweb.freebsd.org/changeset/base/257602 > > Log: > > Change > > local tmpfile=`mktemp` || exit 1 > > into > > local tmpfile > > tmpfile=`mktemp` || exit 1 > > since the former is parsed as "local || exit 1" and loses the exit code > > from mktemp. > > Submitted by: jilles > Out of curiosity, is this brokenness of local mandated by the standard? local is not in any standard, but this behaviour of command substitutions has been mandated for a long time. If there is a command word, the exit status is the exit status of that command word, not the exit status of a command substitution. On the other hand, in the original Bourne shell, it was possible to do things like set -- `getopt ab: $*`; errcode=$? Given that it already changed once, I think changing it back would be inappropriate and unlikely. -- Jilles Tjoelker From owner-svn-src-user@FreeBSD.ORG Fri Nov 8 21:03:49 2013 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 02B5327F; Fri, 8 Nov 2013 21:03:49 +0000 (UTC) (envelope-from andre@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id E21292105; Fri, 8 Nov 2013 21:03:48 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id rA8L3mh2050253; Fri, 8 Nov 2013 21:03:48 GMT (envelope-from andre@svn.freebsd.org) Received: (from andre@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id rA8L3lp6050244; Fri, 8 Nov 2013 21:03:47 GMT (envelope-from andre@svn.freebsd.org) Message-Id: <201311082103.rA8L3lp6050244@svn.freebsd.org> From: Andre Oppermann Date: Fri, 8 Nov 2013 21:03:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r257866 - user/andre/tcp-ao/sys/netinet X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 08 Nov 2013 21:03:49 -0000 Author: andre Date: Fri Nov 8 21:03:47 2013 New Revision: 257866 URL: http://svnweb.freebsd.org/changeset/base/257866 Log: Bring TCP-AO closer to functional completion. Remaining rough edges will be fixed in upcoming commits. Not yet implemented are SNE, tcp options option, and key rollover. Sponsored by: Juniper Networks Modified: user/andre/tcp-ao/sys/netinet/tcp_ao.c user/andre/tcp-ao/sys/netinet/tcp_ao.h user/andre/tcp-ao/sys/netinet/tcp_input.c user/andre/tcp-ao/sys/netinet/tcp_output.c user/andre/tcp-ao/sys/netinet/tcp_subr.c user/andre/tcp-ao/sys/netinet/tcp_syncache.c user/andre/tcp-ao/sys/netinet/tcp_syncache.h user/andre/tcp-ao/sys/netinet/tcp_usrreq.c Modified: user/andre/tcp-ao/sys/netinet/tcp_ao.c ============================================================================== --- user/andre/tcp-ao/sys/netinet/tcp_ao.c Fri Nov 8 20:11:15 2013 (r257865) +++ user/andre/tcp-ao/sys/netinet/tcp_ao.c Fri Nov 8 21:03:47 2013 (r257866) @@ -39,16 +39,15 @@ * 3. key management in the kernel and the exposed userland API. * 4. test programs to verify the correct operation. * - * TODO: - * all of the above. - * - * Discussion: - * the key management can be done in two ways: via the ipsec key interface - * or through the setsockopt() api. Analyse which one is better to handle - * in the kernel and for userspace applications. The setsockopt() API is - * the winner and will be used. + * The key management is done through the setsockopt() api because the + * keys are connection specific. * - * legacy tcp-md5 can be brought and integrated into the tcp-ao framework. + * TODO: + * sequence number extension + * tcp options verification option + * key rollover + * bring legacy tcp-md5 into the tcp-ao framework. + * throughout testing */ #include "opt_inet.h" @@ -68,6 +67,7 @@ #include #include +#include #include #include @@ -101,22 +101,28 @@ MALLOC_DEFINE(M_TCPAO, "tcp_ao", "TCP-AO peer and key structures"); -int tcp_ao_ctl(struct tcpcb *, struct tcp_ao_sopt *, int); - -struct tcp_ao_peer *tcp_ao_peer_find(struct tcp_ao_cb *, struct sockaddr *); -struct tcp_ao_peer *tcp_ao_peer_add(struct tcp_ao_cb *, struct sockaddr *); -int tcp_ao_peer_del(struct tcp_ao_cb *, struct tcp_ao_peer *); -void tcp_ao_peer_flush(struct tcp_ao_cb *); - -struct tcp_ao_key *tcp_ao_key_find(struct tcp_ao_peer *, uint8_t); -struct tcp_ao_key *tcp_ao_key_add(struct tcp_ao_peer *, struct tcp_ao_sopt *, uint8_t); -int tcp_ao_key_del(struct tcp_ao_peer *, uint8_t); -void tcp_ao_key_flush(struct tcp_ao_peer *); - -int tcp_ao_peer_clone(struct tcpcb *, struct tcpcb *, struct sockaddr *); -struct tcp_ao_cb *tcp_ao_cb_alloc(void); -void tcp_ao_cb_free(struct tcpcb *); +static struct tcp_ao_peer + *tcp_ao_peer_find(struct tcp_ao_cb *, struct sockaddr *); +static struct tcp_ao_peer + *tcp_ao_peer_add(struct tcp_ao_cb *, struct sockaddr *); +static int tcp_ao_peer_del(struct tcp_ao_cb *, struct tcp_ao_peer *); +static void tcp_ao_peer_flush(struct tcp_ao_cb *); + +static struct tcp_ao_key + *tcp_ao_key_find(struct tcp_ao_peer *, uint8_t); +static struct tcp_ao_key + *tcp_ao_key_add(struct tcp_ao_peer *, struct tcp_ao_sopt *, uint8_t); +static int tcp_ao_key_del(struct tcp_ao_peer *, uint8_t); +static void tcp_ao_key_flush(struct tcp_ao_peer *); + +static int tcp_ao_peer_clone(struct tcpcb *, struct tcpcb *, + struct sockaddr *); +static struct tcp_ao_cb + *tcp_ao_cb_alloc(void); +/* + * Perform key management when called from setsockopt. + */ int tcp_ao_ctl(struct tcpcb *tp, struct tcp_ao_sopt *tao, int tao_len) { @@ -143,6 +149,13 @@ tcp_ao_ctl(struct tcpcb *tp, struct tcp_ if (error) goto out; + if (tp->t_ao == NULL) { + if ((tp->t_ao = tcp_ao_cb_alloc()) == NULL) { + error = ENOMEM; + goto out; + } + tp->t_flags |= TF_AO; + } c = tp->t_ao; switch (tao->tao_cmd) { @@ -157,11 +170,12 @@ tcp_ao_ctl(struct tcpcb *tp, struct tcp_ goto out; } - /* Insert or overwrite */ + /* Find existing peer or allocate new one. */ if ((p = tcp_ao_peer_add(c, sa)) == NULL) { error = EINVAL; break; } + /* Can't overwrite active key on an active session. */ if (tp->t_state > TCPS_LISTEN && p->tap_activekey == tao->tao_keyidx) { error = EINVAL; @@ -173,11 +187,11 @@ tcp_ao_ctl(struct tcpcb *tp, struct tcp_ break; case TAO_CMD_DELIDX: - /* Can't remove active index */ if ((p = tcp_ao_peer_find(c, sa)) == NULL) { error = EINVAL; break; } + /* Can't remove active key index. */ if (tp->t_state > TCPS_LISTEN && p->tap_activekey == tao->tao_keyidx) { error = EINVAL; @@ -189,6 +203,7 @@ tcp_ao_ctl(struct tcpcb *tp, struct tcp_ break; case TAO_CMD_DELPEER: + /* Can't remove active peer. */ if (tp->t_state > TCPS_LISTEN) break; @@ -200,6 +215,7 @@ tcp_ao_ctl(struct tcpcb *tp, struct tcp_ break; case TAO_CMD_FLUSH: + /* Can't remove active peer. */ if (tp->t_state > TCPS_LISTEN) break; @@ -215,7 +231,7 @@ out: return (error); } -struct tcp_ao_peer * +static struct tcp_ao_peer * tcp_ao_peer_find(struct tcp_ao_cb *tac, struct sockaddr *sa) { struct tcp_ao_peer *p; @@ -229,7 +245,7 @@ tcp_ao_peer_find(struct tcp_ao_cb *tac, return (NULL); } -struct tcp_ao_peer * +static struct tcp_ao_peer * tcp_ao_peer_add(struct tcp_ao_cb *tac, struct sockaddr *sa) { struct tcp_ao_peer *p; @@ -246,7 +262,7 @@ tcp_ao_peer_add(struct tcp_ao_cb *tac, s return (p); } -int +static int tcp_ao_peer_del(struct tcp_ao_cb *tac, struct tcp_ao_peer *tap) { @@ -256,7 +272,7 @@ tcp_ao_peer_del(struct tcp_ao_cb *tac, s return (0); } -void +static void tcp_ao_peer_flush(struct tcp_ao_cb *tac) { struct tcp_ao_peer *p, *p2; @@ -268,7 +284,7 @@ tcp_ao_peer_flush(struct tcp_ao_cb *tac) LIST_INIT(&tac->tac_peers); } -struct tcp_ao_key * +static struct tcp_ao_key * tcp_ao_key_find(struct tcp_ao_peer *tap, uint8_t idx) { struct tcp_ao_key *k; @@ -280,7 +296,7 @@ tcp_ao_key_find(struct tcp_ao_peer *tap, return (NULL); } -struct tcp_ao_key * +static struct tcp_ao_key * tcp_ao_key_add(struct tcp_ao_peer *tap, struct tcp_ao_sopt *tao, uint8_t keylen) { struct tcp_ao_key *k; @@ -302,7 +318,7 @@ tcp_ao_key_add(struct tcp_ao_peer *tap, return (k); } -int +static int tcp_ao_key_del(struct tcp_ao_peer *tap, uint8_t keyidx) { struct tcp_ao_key *k, *k2; @@ -317,7 +333,7 @@ tcp_ao_key_del(struct tcp_ao_peer *tap, return (ENOENT); } -void +static void tcp_ao_key_flush(struct tcp_ao_peer *tap) { struct tcp_ao_key *k, *k2; @@ -327,7 +343,7 @@ tcp_ao_key_flush(struct tcp_ao_peer *tap SLIST_INIT(&tap->tap_keys); } -int +static int tcp_ao_peer_clone(struct tcpcb *tp1, struct tcpcb *tp2, struct sockaddr *sa) { struct tcp_ao_peer *p1, *p2; @@ -408,6 +424,8 @@ struct tcp_ao_kdf_ctx { #define ip4_ctx tuple.ip4 #define ip6_ctx tuple.ip6 +static int tcp_ao_kdf(struct tcp_ao_key *tak, struct in_conninfo *inc, + struct tcphdr *th, uint8_t *out, int outlen, int dir); static int tcp_ao_kdf_hmac(struct tcp_ao_key *tak, uint8_t *out, int outlen, struct tcp_ao_kdf_ctx *tctx); static int tcp_ao_kdf_cmac(struct tcp_ao_key *tak, uint8_t *out, int outlen, @@ -420,11 +438,10 @@ static int tcp_ao_kdf_md5(struct tcp_ao_ * Return values: * 0 = success * EINVAL = invalid input, typically insufficient length - * other = key derivation failed */ -int -tcp_ao_kdf(struct in_conninfo *inc, struct tcphdr *th, uint8_t *out, - int outlen, struct tcp_ao_key *tak) +static int +tcp_ao_kdf(struct tcp_ao_key *tak, struct in_conninfo *inc, struct tcphdr *th, + uint8_t *out, int outlen, int dir) { int error = 0; struct tcp_ao_kdf_ctx ctx; @@ -432,15 +449,33 @@ tcp_ao_kdf(struct in_conninfo *inc, stru /* Fill in context for traffic keys. */ switch (inc->inc_flags & INC_ISIPV6) { case 0: - ctx.ip4_ctx.src = inc->inc_ie.ie_faddr; - ctx.ip4_ctx.dst = inc->inc_ie.ie_laddr; + if (dir == TCP_AO_OUT) { + ctx.ip4_ctx.src = inc->inc_ie.ie_laddr; + ctx.ip4_ctx.dst = inc->inc_ie.ie_faddr; + ctx.ip4_ctx.sport = inc->inc_ie.ie_lport; + ctx.ip4_ctx.dport = inc->inc_ie.ie_fport; + } else { + ctx.ip4_ctx.src = inc->inc_ie.ie_faddr; + ctx.ip4_ctx.dst = inc->inc_ie.ie_laddr; + ctx.ip4_ctx.sport = inc->inc_ie.ie_fport; + ctx.ip4_ctx.dport = inc->inc_ie.ie_lport; + } ctx.ip4_ctx.irs = htonl(th->th_ack); ctx.ip4_ctx.iss = htonl(th->th_seq); ctx.len = sizeof(ctx.ip4_ctx); break; case INC_ISIPV6: - ctx.ip6_ctx.src = inc->inc_ie.ie6_faddr; - ctx.ip6_ctx.dst = inc->inc_ie.ie6_laddr; + if (dir == TCP_AO_OUT) { + ctx.ip6_ctx.src = inc->inc_ie.ie6_laddr; + ctx.ip6_ctx.dst = inc->inc_ie.ie6_faddr; + ctx.ip6_ctx.sport = inc->inc_ie.ie_lport; + ctx.ip6_ctx.dport = inc->inc_ie.ie_fport; + } else { + ctx.ip6_ctx.src = inc->inc_ie.ie6_faddr; + ctx.ip6_ctx.dst = inc->inc_ie.ie6_laddr; + ctx.ip6_ctx.sport = inc->inc_ie.ie_fport; + ctx.ip6_ctx.dport = inc->inc_ie.ie_lport; + } ctx.ip6_ctx.irs = htonl(th->th_ack); ctx.ip6_ctx.iss = htonl(th->th_seq); ctx.len = sizeof(ctx.ip6_ctx); @@ -541,7 +576,7 @@ tcp_ao_kdf_md5(struct tcp_ao_key *tak, u /* - * The hash over the header has to be pieced together and a couple of + * The hash over the header has to be stiched together and a couple of * fields need manipulation, like zero'ing and byte order conversion. * Instead of doing it in-place and calling the hash update function * for each we just copy everything into one place in the right order. @@ -568,19 +603,14 @@ struct tcp_ao_pseudo { #define tap4 tap.tap_ip #define tap6 tap.tap_ip6 -#if 0 -/* Convenient functions not yet in existence. */ -ip_hdr2pseudo(struct ip *ip, struct ippseudo *ipp); -ip6_hdr2pseudo(struct ip6_hdr *ip6, struct ip6pseudo *ipp6); -ip_inc2pseudo(struct in_conninfo *inc, struct ippseudo *ipp); -ip6_inc2pseudo(struct in_conninfo *inc, struct ip6pseudo *ipp6); -#endif - -static int tcp_ao_sha1(struct tcp_ao_cb *tac, struct tcp_ao_pseudo *ph, +static int tcp_ao_mac(struct in_conninfo *inc, struct tcphdr *th, + struct tcpopt *to, struct mbuf *m, int tlen, uint32_t sne, int algo, + uint8_t *key, uint8_t *hash, int dir); +static int tcp_ao_sha1(uint8_t *key, struct tcp_ao_pseudo *ph, struct mbuf *m, int moff, int mlen, uint8_t *hash); -static int tcp_ao_cmac(struct tcp_ao_cb *tac, struct tcp_ao_pseudo *ph, +static int tcp_ao_cmac(uint8_t *key, struct tcp_ao_pseudo *ph, struct mbuf *m, int moff, int mlen, uint8_t *hash); -static int tcp_ao_md5(struct tcp_ao_cb *tac, struct tcp_ao_pseudo *ph, +static int tcp_ao_md5(uint8_t *key, struct tcp_ao_pseudo *ph, struct mbuf *m, int moff, int mlen, uint8_t *hash); /* @@ -590,46 +620,58 @@ static int tcp_ao_md5(struct tcp_ao_cb * * EAUTH = authentication failed * other = authentication failed */ -int -tcp_ao_mac(struct tcpcb *tp, struct tcp_ao_cb *tac, struct in_conninfo *inc, - struct tcphdr *th, struct tcpopt *to, struct mbuf *m) +static int +tcp_ao_mac(struct in_conninfo *inc, struct tcphdr *th, struct tcpopt *to, + struct mbuf *m, int tlen, uint32_t sne, int algo, uint8_t *key, + uint8_t *hash, int dir) { int moff, mlen, thlen; struct tcp_ao_pseudo ph; struct tcp_ao_thopt *tho; - uint8_t hash[100]; int error; - /* - * Set up the virtual sequence number extension that is part of - * the authentication hash. - */ - if (tp != NULL) - ph.tap_sne = tp->t_ao->tac_sne; - else - ph.tap_sne = 0; + ph.tap_sne = sne; + + /* Fill in tcpheader including options. */ + thlen = th->th_off << 2; /* Fill in pseudo headers. */ switch(inc->inc_flags & INC_ISIPV6) { case 0: - /* ip_inc2pseudo(inc, &ph.tap4.tap_ph4); */ - ph.tap4.tap_ph4.ippseudo_src = inc->inc_faddr; - ph.tap4.tap_ph4.ippseudo_dst = inc->inc_laddr; + tho = &ph.tap4.tap_th; + if (dir == TCP_AO_OUT) { + ph.tap4.tap_ph4.ippseudo_src = inc->inc_laddr; + ph.tap4.tap_ph4.ippseudo_dst = inc->inc_faddr; + tho->th.th_sport = htons(th->th_sport); + tho->th.th_dport = htons(th->th_dport); + } else { + ph.tap4.tap_ph4.ippseudo_src = inc->inc_faddr; + ph.tap4.tap_ph4.ippseudo_dst = inc->inc_laddr; + tho->th.th_sport = htons(th->th_dport); + tho->th.th_dport = htons(th->th_sport); + } ph.tap4.tap_ph4.ippseudo_pad = 0; ph.tap4.tap_ph4.ippseudo_p = IPPROTO_TCP; - ph.tap4.tap_ph4.ippseudo_len = m->m_pkthdr.len; + ph.tap4.tap_ph4.ippseudo_len = htons(tlen); ph.tap_len += sizeof(ph.tap4.tap_ph4); - tho = &ph.tap4.tap_th; break; case INC_ISIPV6: - /* ip6_hdr2pseudo(inc, &ph.tap6.tap_ph6); */ - ph.tap6.tap_ph6.ip6pseudo_src = inc->inc6_faddr; - ph.tap6.tap_ph6.ip6pseudo_dst = inc->inc6_laddr; - ph.tap6.tap_ph6.ip6pseudo_len = m->m_pkthdr.len; + tho = &ph.tap6.tap_th; + if (dir == TCP_AO_OUT) { + ph.tap6.tap_ph6.ip6pseudo_src = inc->inc6_laddr; + ph.tap6.tap_ph6.ip6pseudo_dst = inc->inc6_faddr; + tho->th.th_sport = htons(th->th_sport); + tho->th.th_dport = htons(th->th_dport); + } else { + ph.tap6.tap_ph6.ip6pseudo_src = inc->inc6_faddr; + ph.tap6.tap_ph6.ip6pseudo_dst = inc->inc6_laddr; + tho->th.th_sport = htons(th->th_dport); + tho->th.th_dport = htons(th->th_sport); + } + ph.tap6.tap_ph6.ip6pseudo_len = htons(tlen); ph.tap6.tap_ph6.ip6pseudo_pad = 0; ph.tap6.tap_ph6.ip6pseudo_p = IPPROTO_TCP; ph.tap_len += sizeof(ph.tap6.tap_ph6); - tho = &ph.tap6.tap_th; break; default: error = EINVAL; @@ -637,29 +679,27 @@ tcp_ao_mac(struct tcpcb *tp, struct tcp_ } ph.tap_len += sizeof(ph.tap_sne); - /* Fill in tcpheader including options. */ - thlen = th->th_off << 2; - bcopy(th, tho, thlen); - ph.tap_len += thlen; - - /* Zero out checksum and mac field and swap to network byte order. */ - tho->th.th_sum = 0; +// bcopy(th, tho, thlen); + tho->th.th_sum = 0; /* Zero out checksum */ bzero(tho->tho + (to->to_signature - (u_char *)(th + 1)), to->to_siglen); - /* tcp_fields_to_net(&tho); */ + tho->th.th_seq = htonl(th->th_seq); + tho->th.th_ack = htonl(th->th_ack); + tho->th.th_win = htons(th->th_win); + tho->th.th_urp = htons(th->th_urp); /* Set up the mbuf length fields. */ moff = thlen; mlen = m_length(m, NULL) - thlen; - switch(tac->tac_algo) { + switch(algo) { case TAO_ALGO_HMAC_SHA_1_96: - error = tcp_ao_sha1(tac, &ph, m, moff, mlen, hash); + error = tcp_ao_sha1(key, &ph, m, moff, mlen, hash); break; case TAO_ALGO_AES_128_CMAC_96: - error = tcp_ao_cmac(tac, &ph, m, moff, mlen, hash); + error = tcp_ao_cmac(key, &ph, m, moff, mlen, hash); break; case TAO_ALGO_MD5SIG: - error = tcp_ao_md5(tac, &ph, m, moff, mlen, hash); + error = tcp_ao_md5(key, &ph, m, moff, mlen, hash); break; default: error = EINVAL; @@ -668,15 +708,223 @@ tcp_ao_mac(struct tcpcb *tp, struct tcp_ if (error) goto out; - /* Compare result to segment signature. */ +out: + return (error); +} + +/* + * We have three cases to verify: + * a) LISTEN; + * - SYN; create RX and TX traffic keys on the fly; + * - ACK; create and store RX and TX traffic keys; + * b) SYN SENT; create traffic TX traffic key; + * - SYN; create TX traffic key; + * - SYN/ACK; create RX traffic key; + * c) ESTABLISHED; verify traffic; + * + * We have two cases to compute a signature: + * a) syncache; on the fly with traffic key derivation; + * b) established; directly use traffic key; + */ +int +tcp_ao_sc_findmkey(struct tcpcb *tp, struct in_conninfo *inc, struct tcpopt *to, + struct tcp_ao_key *tkey) +{ + struct tcp_ao_cb *tac; + struct tcp_ao_peer *tap; + struct tcp_ao_key *tak; + struct sockaddr_in *sin; + struct sockaddr_in6 *sin6; + struct sockaddr sa; + uint8_t idx = 0; + + tac = tp->t_ao; + + switch (inc->inc_flags & INC_ISIPV6) { + case 0: + sin = (struct sockaddr_in *)&sa; + sin->sin_len = sizeof(struct sockaddr_in); + sin->sin_family = AF_INET; + sin->sin_port = 0; + sin->sin_addr = inc->inc_faddr; + break; + case INC_ISIPV6: + sin6 = (struct sockaddr_in6 *)&sa; + sin6->sin6_len = sizeof(struct sockaddr_in6); + sin6->sin6_family = AF_INET6; + sin6->sin6_port = 0; + sin6->sin6_addr = inc->inc6_faddr; + break; + default: + return (EINVAL); + break; + } + + if ((tap = tcp_ao_peer_find(tac, &sa)) == NULL) + return (EINVAL); + + if ((tak = tcp_ao_key_find(tap, idx)) == NULL) + return (EINVAL); + + bcopy(tak, tkey, sizeof(struct tcp_ao_key) + tak->keylen); + + return (0); +} + +int +tcp_ao_sc_verify(struct tcp_ao_key *tak, struct in_conninfo *inc, + struct tcphdr *th, struct tcpopt *to, struct mbuf *m, int tlen) +{ + int error; + uint8_t hash[100]; + + /* use master key, derive RX traffic key, and compare. */ + error = tcp_ao_kdf(tak, inc, th, hash, 100, 0); + if (error) + goto out; + + error = tcp_ao_mac(inc, th, to, m, tlen, tak->keyalgo, 0, + (uint8_t *)&hash, hash, 0); + if (error) + goto out; + if (bcmp(hash, to->to_signature, to->to_siglen)) error = EAUTH; +out: + return (error); +} +int +tcp_ao_sc_hash(struct tcp_ao_key *tak, struct in_conninfo *inc, + struct tcphdr *th, struct tcpopt *to, struct mbuf *m, int tlen) +{ + int error; + uint8_t hash[100]; + + /* use master key to derive TX traffic key and put into segment. */ + error = tcp_ao_kdf(tak, inc, th, hash, 100, 1); + if (error) + goto out; + + error = tcp_ao_mac(inc, th, to, m, tlen, tak->keyalgo, 0, + (uint8_t *)&hash, hash, 1); + if (error) + goto out; + + bcopy(hash, to->to_signature, to->to_siglen); +out: + return (error); +} + +int +tcp_ao_sc_copy(struct tcpcb *ltp, struct tcpcb *tp, struct in_conninfo *inc) +{ + int error; + + /* allocate a tcp_ao_cb and copy this peer's structure and keys */ + error = tcp_ao_peer_clone(ltp, tp, NULL); + + return (error); +} + +int +tcp_ao_est_verify(struct tcpcb *tp, struct tcphdr *th, struct tcpopt *to, + struct mbuf *m, int tlen) +{ + struct tcp_ao_cb *tac; + int siglen; + int error; + uint8_t hash[100]; + + tac = tp->t_ao; + + switch (tac->tac_algo) { + case TAO_ALGO_HMAC_SHA_1_96: + siglen = TAO_ALGO_HMAC_SHA_1_96_LEN; + break; + case TAO_ALGO_AES_128_CMAC_96: + siglen = TAO_ALGO_AES_128_CMAC_96_LEN; + break; + case TAO_ALGO_MD5SIG: + siglen = TAO_ALGO_MD5SIG; + break; + default: + error = EAUTH; + goto out; + } + if (to->to_siglen != siglen) { + error = EAUTH; + goto out; + } + + /* use RX traffic key and compare. */ + error = tcp_ao_mac(&tp->t_inpcb->inp_inc, th, to, m, tlen, + tac->tac_algo, tac->tac_rcvsne, (uint8_t *)&tac->tac_rkey, + hash, 0); + if (error) + goto out; + + if (bcmp(hash, to->to_signature, to->to_siglen)) + error = EAUTH; out: return (error); } /* + * Prepare and compute hash for outbound segments. + */ +int +tcp_ao_est_hash(struct tcpcb *tp, struct tcphdr *th, struct tcpopt *to, + struct mbuf *m, int tlen) +{ + struct tcp_ao_cb *tac; + int error; + uint8_t hash[100]; + + tac = tp->t_ao; + + error = tcp_ao_mac(&tp->t_inpcb->inp_inc, th, to, m, tlen, + tac->tac_algo, tac->tac_sndsne, (uint8_t *)&tac->tac_skey, + hash, 1); + + if (!error) + bcopy(hash, to->to_signature, to->to_siglen); + + return (error); +} + +int +tcp_ao_est_opt(struct tcpcb *tp, struct tcpopt *to) +{ + struct tcp_ao_cb *c = tp->t_ao; + struct tcp_ao_peer *p; + int siglen; + + switch (c->tac_algo) { + case TAO_ALGO_HMAC_SHA_1_96: + siglen = TAO_ALGO_HMAC_SHA_1_96_LEN; + break; + case TAO_ALGO_AES_128_CMAC_96: + siglen = TAO_ALGO_AES_128_CMAC_96_LEN; + break; + case TAO_ALGO_MD5SIG: + siglen = TAO_ALGO_MD5SIG; + break; + default: + siglen = 12; /* XXX */ + break; + } + to->to_siglen = siglen; + + p = LIST_FIRST(&c->tac_peers); + + to->to_ao_keyid = p->tap_activekey; + to->to_ao_nextkeyid = p->tap_nextkey; + + return (0); +} + +/* * Note: Can't use cryptodev because of callback based non-inline * processing. Also complexity to set up a crypto session is too high * and requires a couple of malloc's. @@ -695,13 +943,13 @@ HMAC_SHA1_Update_x(void *ctx, void *data } static int -tcp_ao_sha1(struct tcp_ao_cb *tac, struct tcp_ao_pseudo *ph, struct mbuf *m, +tcp_ao_sha1(uint8_t *key, struct tcp_ao_pseudo *ph, struct mbuf *m, int moff, int mlen, uint8_t *hash) { HMAC_SHA1_CTX ctx; int error = 0; - HMAC_SHA1_Init(&ctx, tac->tac_skey.hmac, SHA1_BLOCK_LENGTH); + HMAC_SHA1_Init(&ctx, key, SHA1_BLOCK_LENGTH); /* Pseudo header. */ HMAC_SHA1_Update(&ctx, (uint8_t *)ph, ph->tap_len); @@ -729,14 +977,14 @@ AES_CMAC_Update_x(void *ctx, void *data, } static int -tcp_ao_cmac(struct tcp_ao_cb *tac, struct tcp_ao_pseudo *ph, struct mbuf *m, +tcp_ao_cmac(uint8_t *key, struct tcp_ao_pseudo *ph, struct mbuf *m, int moff, int mlen, uint8_t *hash) { AES_CMAC_CTX ctx; int error = 0; AES_CMAC_Init(&ctx); - AES_CMAC_SetKey(&ctx, tac->tac_skey.cmac); + AES_CMAC_SetKey(&ctx, key); AES_CMAC_Update(&ctx, (uint8_t *)ph, ph->tap_len); @@ -764,7 +1012,7 @@ MD5Update_x(void *ctx, void *data, u_int } static int -tcp_ao_md5(struct tcp_ao_cb *tac, struct tcp_ao_pseudo *ph, struct mbuf *m, +tcp_ao_md5(uint8_t *key, struct tcp_ao_pseudo *ph, struct mbuf *m, int moff, int mlen, uint8_t hash[static MD5_DIGEST_LENGTH]) { MD5_CTX ctx; @@ -780,7 +1028,7 @@ tcp_ao_md5(struct tcp_ao_cb *tac, struct if (error) goto out; - MD5Update(&ctx, tac->tac_skey.md5, MD5_BLOCK_LENGTH); + MD5Update(&ctx, key, MD5_BLOCK_LENGTH); MD5Final(hash, &ctx); out: Modified: user/andre/tcp-ao/sys/netinet/tcp_ao.h ============================================================================== --- user/andre/tcp-ao/sys/netinet/tcp_ao.h Fri Nov 8 20:11:15 2013 (r257865) +++ user/andre/tcp-ao/sys/netinet/tcp_ao.h Fri Nov 8 21:03:47 2013 (r257866) @@ -69,6 +69,11 @@ MALLOC_DECLARE(M_TCPAO); +#include +#include +#include +#include + /* * TCP-AO key interface struct passed to setsockopt(). * Per peer structures referenced from tcp_ao_sopt. @@ -83,7 +88,7 @@ struct tcp_ao_sopt { tao_peer; /* this key applies to ... */ uint8_t tao_key[]; /* base64 key string */ }; -#define TAO_KEY_MAXLEN 128 /* base64 encoded */ +#define TAO_KEY_MAXLEN 128 /* * Commands for the tao_cmd field. @@ -105,44 +110,80 @@ struct tcp_ao_sopt { #define TAO_ALGO_HMAC_SHA_1_96 2 /* RFC5926, Section 2.2 */ #define TAO_ALGO_AES_128_CMAC_96 3 /* RFC5926, Section 2.2 */ +#define TAO_ALGO_MD5SIG_LEN 16 +#define TAO_ALGO_HMAC_SHA_1_96_LEN 12 +#define TAO_ALGO_AES_128_CMAC_96_LEN 12 + +#ifdef _KERNEL +#define TCP_AO_MAXHASH 20 /* max raw hash length */ + /* * In kernel storage of the key information. + * The active session key is stored in tac_skey and tac_rkey. */ struct tcp_ao_cb { + LIST_HEAD(tac_peer, tcp_ao_peer) tac_peers; int tac_algo; + uint32_t tac_sndsne, tac_rcvsne; + /* Pre-computed traffic keys for established sessions. */ union { uint8_t md5[MD5_DIGEST_LENGTH]; uint8_t hmac[SHA1_DIGEST_LENGTH]; uint8_t cmac[AES_CMAC_DIGEST_LENGTH]; } tac_skey, tac_rkey; - uint32_t tac_sne; - LIST_HEAD(tac_peer, tcp_ao_peer) tac_peers; }; +/* + * Per peer information (remote IP). + * A control block can have N peers in LISTEN mode. + * A control block can have 1 peer in SYN_SENT or SYN_RECEIVED mode. + */ struct tcp_ao_peer { LIST_ENTRY(tcp_ao_peer) tap_entry; uint16_t tap_flags; + uint8_t tap_activekey; + uint8_t tap_nextkey; union { struct sockaddr sa; struct sockaddr_in sin4; struct sockaddr_in6 sin6; } tap_peer; - uint8_t tap_activekey; SLIST_HEAD(tap_key, tcp_ao_key) tap_keys; }; +/* + * Per key information. A peer can have N keys, of which one is active. + */ struct tcp_ao_key { SLIST_ENTRY(tcp_ao_key) entry; uint8_t keyidx; uint8_t keyflags; uint8_t keyalgo; uint8_t keylen; - uint8_t key[]; /* after base64_decode */ + uint8_t key[]; }; -int tcp_ao_kdf(struct in_conninfo *, struct tcphdr *, uint8_t *, int, - struct tcp_ao_key *); -int tcp_ao_mac(struct tcpcb *, struct tcp_ao_cb *, struct in_conninfo *, - struct tcphdr *, struct tcpopt *, struct mbuf *); +#define TCP_AO_IN 0 +#define TCP_AO_OUT 1 + +int tcp_ao_ctl(struct tcpcb *tp, struct tcp_ao_sopt *tao, int tao_len); + +int tcp_ao_sc_findmkey(struct tcpcb *tp, struct in_conninfo *inc, + struct tcpopt *to, struct tcp_ao_key *tkey); +int tcp_ao_sc_verify(struct tcp_ao_key *tak, struct in_conninfo *inc, + struct tcphdr *th, struct tcpopt *to, struct mbuf *m, int tlen); +int tcp_ao_sc_hash(struct tcp_ao_key *tak, struct in_conninfo *inc, + struct tcphdr *th, struct tcpopt *to, struct mbuf *m, int tlen); +int tcp_ao_sc_copy(struct tcpcb *ltp, struct tcpcb *tp, + struct in_conninfo *inc); + +int tcp_ao_est_verify(struct tcpcb *tp, struct tcphdr *th, struct tcpopt *to, + struct mbuf *m, int tlen); +int tcp_ao_est_hash(struct tcpcb *tp, struct tcphdr *th, struct tcpopt *to, + struct mbuf *m, int tlen); +int tcp_ao_est_opt(struct tcpcb *tp, struct tcpopt *to); + +void tcp_ao_cb_free(struct tcpcb *tp); +#endif /* _KERNEL */ #endif Modified: user/andre/tcp-ao/sys/netinet/tcp_input.c ============================================================================== --- user/andre/tcp-ao/sys/netinet/tcp_input.c Fri Nov 8 20:11:15 2013 (r257865) +++ user/andre/tcp-ao/sys/netinet/tcp_input.c Fri Nov 8 21:03:47 2013 (r257866) @@ -106,6 +106,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #ifdef TCPDEBUG #include #endif /* TCPDEBUG */ @@ -1556,6 +1557,10 @@ tcp_do_segment(struct mbuf *m, struct tc (th->th_off << 2) - sizeof(struct tcphdr), (thflags & TH_SYN) ? TO_SYN : 0); + if (tp->t_flags & TF_AO) + if (tcp_ao_est_verify(tp, th, &to, m, tlen) != 0) + goto drop; + /* * If echoed timestamp is later than the current time, * fall back to non RFC1323 RTT calculation. Normalize Modified: user/andre/tcp-ao/sys/netinet/tcp_output.c ============================================================================== --- user/andre/tcp-ao/sys/netinet/tcp_output.c Fri Nov 8 20:11:15 2013 (r257865) +++ user/andre/tcp-ao/sys/netinet/tcp_output.c Fri Nov 8 21:03:47 2013 (r257866) @@ -75,6 +75,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #ifdef TCPDEBUG #include #endif @@ -740,8 +741,10 @@ send: to.to_flags |= TOF_SIGNATURE; #endif /* TCP_SIGNATURE */ /* TCP-AO (RFC5925). */ - if (tp->t_flags & TF_AO) + if (tp->t_flags & TF_AO) { to.to_flags |= TOF_AO; + tcp_ao_est_opt(tp, &to); + } /* Processing the options. */ hdrlen += optlen = tcp_addoptions(&to, opt); @@ -1078,6 +1081,8 @@ send: (u_char *)(th + 1) + sigoff, IPSEC_DIR_OUTBOUND); } #endif + if (tp->t_flags & TF_AO) + (void)tcp_ao_est_hash(tp, th, &to, m, len); /* * Put TCP length in extended header, and then @@ -1523,32 +1528,31 @@ tcp_addoptions(struct tcpopt *to, u_char *optp++ = TCPOPT_SIGNATURE; *optp++ = TCPOLEN_SIGNATURE; to->to_signature = optp; + to->to_siglen = siglen; while (siglen--) *optp++ = 0; break; } -#if 0 case TOF_AO: { - int siglen = tcp_ao_siglen(tp); + int siglen = to->to_siglen; while (!optlen || optlen % 4 != 2) { optlen += TCPOLEN_NOP; *optp++ = TCPOPT_NOP; } - if (TCP_MAXOLEN - optlen < TCPOLEN_AO_MIN + siglen) + if (TCP_MAXOLEN - optlen < TCPOLEN_AO_MIN + to->to_siglen) continue; optlen += TCPOLEN_AO_MIN; *optp++ = TCPOPT_AO; - *optp++ = TCPOLEN_AO_MIN + siglen; - *optp++ = tcp_ao_keyid(tp); /* keyid */ - *optp++ = tcp_ao_nextkeyid(tp); /* nextkeyid */ + *optp++ = TCPOLEN_AO_MIN + to->to_siglen; + *optp++ = to->to_ao_keyid; + *optp++ = to->to_ao_nextkeyid; to->to_signature = optp; while (siglen--) *optp++ = 0; break; } -#endif case TOF_SACK: { int sackblks = 0; Modified: user/andre/tcp-ao/sys/netinet/tcp_subr.c ============================================================================== --- user/andre/tcp-ao/sys/netinet/tcp_subr.c Fri Nov 8 20:11:15 2013 (r257865) +++ user/andre/tcp-ao/sys/netinet/tcp_subr.c Fri Nov 8 21:03:47 2013 (r257866) @@ -89,6 +89,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #ifdef INET6 #include #endif @@ -1000,6 +1001,8 @@ tcp_discardcb(struct tcpcb *tp) tcp_free_sackholes(tp); + tcp_ao_cb_free(tp); + /* Allow the CC algorithm to clean up after itself. */ if (CC_ALGO(tp)->cb_destroy != NULL) CC_ALGO(tp)->cb_destroy(tp->ccv); Modified: user/andre/tcp-ao/sys/netinet/tcp_syncache.c ============================================================================== --- user/andre/tcp-ao/sys/netinet/tcp_syncache.c Fri Nov 8 20:11:15 2013 (r257865) +++ user/andre/tcp-ao/sys/netinet/tcp_syncache.c Fri Nov 8 21:03:47 2013 (r257866) @@ -84,6 +84,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #ifdef INET6 #include #endif @@ -669,6 +670,7 @@ static struct socket * syncache_socket(struct syncache *sc, struct socket *lso, struct mbuf *m) { struct inpcb *inp = NULL; + struct inpcb *oinp = NULL; struct socket *so; struct tcpcb *tp; int error; @@ -703,6 +705,7 @@ syncache_socket(struct syncache *sc, str #endif inp = sotoinpcb(so); + oinp = sotoinpcb(lso); inp->inp_inc.inc_fibnum = so->so_fibnum; INP_WLOCK(inp); INP_HASH_WLOCK(&V_tcbinfo); @@ -755,7 +758,6 @@ syncache_socket(struct syncache *sc, str #endif #ifdef INET6 if (sc->sc_inc.inc_flags & INC_ISIPV6) { - struct inpcb *oinp = sotoinpcb(lso); struct in6_addr laddr6; struct sockaddr_in6 sin6; /* @@ -868,6 +870,10 @@ syncache_socket(struct syncache *sc, str if (sc->sc_flags & SCF_SIGNATURE) tp->t_flags |= TF_SIGNATURE; #endif + if (sc->sc_flags & SCF_AO) { + tp->t_flags |= TF_AO; + tcp_ao_sc_copy(sototcpcb(lso), tp, &sc->sc_inc); + } if (sc->sc_flags & SCF_SACK) tp->t_flags |= TF_SACK_PERMIT; } @@ -1115,6 +1121,7 @@ syncache_add(struct in_conninfo *inc, st struct label *maclabel; #endif struct syncache scs; + struct tcp_ao_key tkey; struct ucred *cred; INP_INFO_WLOCK_ASSERT(&V_tcbinfo); @@ -1139,7 +1146,10 @@ syncache_add(struct in_conninfo *inc, st ip_tos = inp->inp_ip_tos; win = sbspace(&so->so_rcv); sb_hiwat = so->so_rcv.sb_hiwat; - ltflags = (tp->t_flags & (TF_NOOPT | TF_SIGNATURE)); + ltflags = (tp->t_flags & (TF_NOOPT | TF_SIGNATURE | TF_AO)); + + /* Find the TCP-AO master key for this peer, if any. */ + (void)tcp_ao_sc_findmkey(tp, inc, to, &tkey); /* By the time we drop the lock these should no longer be used. */ so = NULL; @@ -1156,6 +1166,11 @@ syncache_add(struct in_conninfo *inc, st INP_WUNLOCK(inp); *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***