From owner-svn-src-stable-8@FreeBSD.ORG  Wed Jul 24 08:57:00 2013
Return-Path: <owner-svn-src-stable-8@FreeBSD.ORG>
Delivered-To: svn-src-stable-8@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115])
 by hub.freebsd.org (Postfix) with ESMTP id 2F647FC1;
 Wed, 24 Jul 2013 08:57:00 +0000 (UTC) (envelope-from avg@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 203D32335;
 Wed, 24 Jul 2013 08:57:00 +0000 (UTC)
Received: from svn.freebsd.org ([127.0.1.70])
 by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r6O8ux5k086070;
 Wed, 24 Jul 2013 08:56:59 GMT (envelope-from avg@svn.freebsd.org)
Received: (from avg@localhost)
 by svn.freebsd.org (8.14.7/8.14.5/Submit) id r6O8uxpq086069;
 Wed, 24 Jul 2013 08:56:59 GMT (envelope-from avg@svn.freebsd.org)
Message-Id: <201307240856.r6O8uxpq086069@svn.freebsd.org>
From: Andriy Gapon <avg@FreeBSD.org>
Date: Wed, 24 Jul 2013 08:56:59 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org
Subject: svn commit: r253600 - stable/8/lib/libc/stdlib
X-SVN-Group: stable-8
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-BeenThere: svn-src-stable-8@freebsd.org
X-Mailman-Version: 2.1.14
Precedence: list
List-Id: SVN commit messages for only the 8-stable src tree
 <svn-src-stable-8.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/options/svn-src-stable-8>, 
 <mailto:svn-src-stable-8-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-stable-8>
List-Post: <mailto:svn-src-stable-8@freebsd.org>
List-Help: <mailto:svn-src-stable-8-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/svn-src-stable-8>, 
 <mailto:svn-src-stable-8-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 24 Jul 2013 08:57:00 -0000

Author: avg
Date: Wed Jul 24 08:56:59 2013
New Revision: 253600
URL: http://svnweb.freebsd.org/changeset/base/253600

Log:
  MFC r253380,253413: name passed into __setenv is not necessarily NUL-terminated

Modified:
  stable/8/lib/libc/stdlib/getenv.c
Directory Properties:
  stable/8/lib/libc/   (props changed)

Modified: stable/8/lib/libc/stdlib/getenv.c
==============================================================================
--- stable/8/lib/libc/stdlib/getenv.c	Wed Jul 24 08:39:09 2013	(r253599)
+++ stable/8/lib/libc/stdlib/getenv.c	Wed Jul 24 08:56:59 2013	(r253600)
@@ -504,9 +504,8 @@ __setenv(const char *name, size_t nameLe
 		envVars[envNdx].valueSize = valueLen;
 
 		/* Save name of name/value pair. */
-		env = stpcpy(envVars[envNdx].name, name);
-		if ((envVars[envNdx].name)[nameLen] != '=')
-			env = stpcpy(env, "=");
+		env = stpncpy(envVars[envNdx].name, name, nameLen);
+		*env++ = '=';
 	}
 	else
 		env = envVars[envNdx].value;

From owner-svn-src-stable-8@FreeBSD.ORG  Wed Jul 24 10:29:54 2013
Return-Path: <owner-svn-src-stable-8@FreeBSD.ORG>
Delivered-To: svn-src-stable-8@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org
 [IPv6:2001:1900:2254:206a::19:1])
 by hub.freebsd.org (Postfix) with ESMTP id 55C891D2
 for <svn-src-stable-8@freebsd.org>; Wed, 24 Jul 2013 10:29:54 +0000 (UTC)
 (envelope-from mailer-daemon@vniz.net)
Received: from mail-lb0-f171.google.com (mail-lb0-f171.google.com
 [209.85.217.171])
 (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits))
 (No client certificate requested)
 by mx1.freebsd.org (Postfix) with ESMTPS id D061C284E
 for <svn-src-stable-8@freebsd.org>; Wed, 24 Jul 2013 10:29:53 +0000 (UTC)
Received: by mail-lb0-f171.google.com with SMTP id 13so339444lba.16
 for <svn-src-stable-8@freebsd.org>; Wed, 24 Jul 2013 03:29:46 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=google.com; s=20120113;
 h=message-id:date:from:user-agent:mime-version:to:cc:subject
 :references:in-reply-to:openpgp:content-type
 :content-transfer-encoding:x-gm-message-state;
 bh=H1t1q+M92MInEIToJqe/6NVfZ5kR4OPzAo4LeBbZ7fU=;
 b=TuHMVTcTPyWS67qvjIaliq48FH3wLGCybs1D2TvUO/NpeAARK2ldCTO3cgImLsSbRB
 abTb324FmYpkHOi+SMSok59qaf7aVPmQZmtO+5nUt5xRLmqam9rncmbCMb1IZ0yTCXMP
 HBK6TjkllDjhS9xtfp2sEwt+rDjIpk/gDZXoPLw0rRXdpguZYyRNJINN2PmnrXHL06+L
 5jmd6vsfJdWwhCFZnx3/tsEErmEmeGL1SyLJsyPtbHao2+1NQxo8TTqKNbXI9aYP2mI2
 Jsc8DZ5RWY10+D0DLT3sZuX17RehnxDelqCHYb96P9g8KwupMf1FRvCrCAQY8vuW3qPB
 08MQ==
X-Received: by 10.112.11.50 with SMTP id n18mr15931184lbb.57.1374661786305;
 Wed, 24 Jul 2013 03:29:46 -0700 (PDT)
Received: from [192.168.1.2] ([89.169.173.68])
 by mx.google.com with ESMTPSA id k10sm14323524lbl.10.2013.07.24.03.29.45
 for <multiple recipients>
 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128);
 Wed, 24 Jul 2013 03:29:45 -0700 (PDT)
Message-ID: <51EFAC99.8040501@freebsd.org>
Date: Wed, 24 Jul 2013 14:29:45 +0400
From: Andrey Chernov <ache@freebsd.org>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
 rv:17.0) Gecko/20130620 Thunderbird/17.0.7
MIME-Version: 1.0
To: Andriy Gapon <avg@FreeBSD.org>
Subject: Re: svn commit: r253600 - stable/8/lib/libc/stdlib
References: <201307240856.r6O8uxpq086069@svn.freebsd.org>
In-Reply-To: <201307240856.r6O8uxpq086069@svn.freebsd.org>
OpenPGP: id=964474DD
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Gm-Message-State: ALoCoQmVAOuZk7bWx7+kramTfo2wf0WqCoTkMcQ6VDA0Hxeh11KG6uAMtwR7sPtZzd8sxmexk5/6
Cc: svn-src-stable@freebsd.org, svn-src-all@freebsd.org,
 src-committers@freebsd.org, svn-src-stable-8@freebsd.org
X-BeenThere: svn-src-stable-8@freebsd.org
X-Mailman-Version: 2.1.14
Precedence: list
List-Id: SVN commit messages for only the 8-stable src tree
 <svn-src-stable-8.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/options/svn-src-stable-8>, 
 <mailto:svn-src-stable-8-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-stable-8>
List-Post: <mailto:svn-src-stable-8@freebsd.org>
List-Help: <mailto:svn-src-stable-8-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/svn-src-stable-8>, 
 <mailto:svn-src-stable-8-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 24 Jul 2013 10:29:54 -0000

On 24.07.2013 12:56, Andriy Gapon wrote:
> Author: avg
> Date: Wed Jul 24 08:56:59 2013
> New Revision: 253600
> URL: http://svnweb.freebsd.org/changeset/base/253600
> 
> Log:
>   MFC r253380,253413: name passed into __setenv is not necessarily NUL-terminated
> 

Why MFC to stable/9 is pending? I consider this fix as essential.

-- 
http://ache.vniz.net/
bitcoin:1G6ugdNY6e5jx1GVnAU2ntj2NEfmjKG85r

From owner-svn-src-stable-8@FreeBSD.ORG  Wed Jul 24 10:34:32 2013
Return-Path: <owner-svn-src-stable-8@FreeBSD.ORG>
Delivered-To: svn-src-stable-8@FreeBSD.org
Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115])
 by hub.freebsd.org (Postfix) with ESMTP id F15253ED;
 Wed, 24 Jul 2013 10:34:31 +0000 (UTC) (envelope-from avg@FreeBSD.org)
Received: from citadel.icyb.net.ua (citadel.icyb.net.ua [212.40.38.140])
 by mx1.freebsd.org (Postfix) with ESMTP id 71D64288E;
 Wed, 24 Jul 2013 10:34:30 +0000 (UTC)
Received: from porto.starpoint.kiev.ua (porto-e.starpoint.kiev.ua
 [212.40.38.100])
 by citadel.icyb.net.ua (8.8.8p3/ICyb-2.3exp) with ESMTP id NAA18863;
 Wed, 24 Jul 2013 13:34:28 +0300 (EEST)
 (envelope-from avg@FreeBSD.org)
Received: from localhost ([127.0.0.1])
 by porto.starpoint.kiev.ua with esmtp (Exim 4.34 (FreeBSD))
 id 1V1wOq-00086n-Jg; Wed, 24 Jul 2013 13:34:28 +0300
Message-ID: <51EFAD7C.8070308@FreeBSD.org>
Date: Wed, 24 Jul 2013 13:33:32 +0300
From: Andriy Gapon <avg@FreeBSD.org>
User-Agent: Mozilla/5.0 (X11; FreeBSD amd64;
 rv:17.0) Gecko/20130708 Thunderbird/17.0.7
MIME-Version: 1.0
To: Andrey Chernov <ache@FreeBSD.org>
Subject: Re: svn commit: r253600 - stable/8/lib/libc/stdlib
References: <201307240856.r6O8uxpq086069@svn.freebsd.org>
 <51EFAC99.8040501@freebsd.org>
In-Reply-To: <51EFAC99.8040501@freebsd.org>
X-Enigmail-Version: 1.5.1
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Cc: svn-src-stable@FreeBSD.org, svn-src-all@FreeBSD.org,
 src-committers@FreeBSD.org, svn-src-stable-8@FreeBSD.org
X-BeenThere: svn-src-stable-8@freebsd.org
X-Mailman-Version: 2.1.14
Precedence: list
List-Id: SVN commit messages for only the 8-stable src tree
 <svn-src-stable-8.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/options/svn-src-stable-8>, 
 <mailto:svn-src-stable-8-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-stable-8>
List-Post: <mailto:svn-src-stable-8@freebsd.org>
List-Help: <mailto:svn-src-stable-8-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/svn-src-stable-8>, 
 <mailto:svn-src-stable-8-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 24 Jul 2013 10:34:32 -0000

on 24/07/2013 13:29 Andrey Chernov said the following:
> On 24.07.2013 12:56, Andriy Gapon wrote:
>> Author: avg
>> Date: Wed Jul 24 08:56:59 2013
>> New Revision: 253600
>> URL: http://svnweb.freebsd.org/changeset/base/253600
>>
>> Log:
>>   MFC r253380,253413: name passed into __setenv is not necessarily NUL-terminated
>>
> 
> Why MFC to stable/9 is pending? I consider this fix as essential.
> 

It's pending RE approval.

-- 
Andriy Gapon

From owner-svn-src-stable-8@FreeBSD.ORG  Wed Jul 24 22:26:59 2013
Return-Path: <owner-svn-src-stable-8@FreeBSD.ORG>
Delivered-To: svn-src-stable-8@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 1849DF7B;
 Wed, 24 Jul 2013 22:26:59 +0000 (UTC)
 (envelope-from jkim@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 EA0392F66;
 Wed, 24 Jul 2013 22:26: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 r6OMQwNI045455;
 Wed, 24 Jul 2013 22:26:58 GMT (envelope-from jkim@svn.freebsd.org)
Received: (from jkim@localhost)
 by svn.freebsd.org (8.14.7/8.14.5/Submit) id r6OMQwLY045454;
 Wed, 24 Jul 2013 22:26:58 GMT (envelope-from jkim@svn.freebsd.org)
Message-Id: <201307242226.r6OMQwLY045454@svn.freebsd.org>
From: Jung-uk Kim <jkim@FreeBSD.org>
Date: Wed, 24 Jul 2013 22:26:58 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org
Subject: svn commit: r253623 - stable/8/usr.sbin/pciconf
X-SVN-Group: stable-8
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-BeenThere: svn-src-stable-8@freebsd.org
X-Mailman-Version: 2.1.14
Precedence: list
List-Id: SVN commit messages for only the 8-stable src tree
 <svn-src-stable-8.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/options/svn-src-stable-8>, 
 <mailto:svn-src-stable-8-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-stable-8>
List-Post: <mailto:svn-src-stable-8@freebsd.org>
List-Help: <mailto:svn-src-stable-8-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/svn-src-stable-8>, 
 <mailto:svn-src-stable-8-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 24 Jul 2013 22:26:59 -0000

Author: jkim
Date: Wed Jul 24 22:26:58 2013
New Revision: 253623
URL: http://svnweb.freebsd.org/changeset/base/253623

Log:
  MFC:	r253455
  
  Decode PCIe ASPM capability and status.

Modified:
  stable/8/usr.sbin/pciconf/cap.c
Directory Properties:
  stable/8/usr.sbin/pciconf/   (props changed)

Modified: stable/8/usr.sbin/pciconf/cap.c
==============================================================================
--- stable/8/usr.sbin/pciconf/cap.c	Wed Jul 24 22:26:11 2013	(r253622)
+++ stable/8/usr.sbin/pciconf/cap.c	Wed Jul 24 22:26:58 2013	(r253623)
@@ -391,11 +391,27 @@ link_speed_string(uint8_t speed)
 	}
 }
 
+static const char *
+aspm_string(uint8_t aspm)
+{
+
+	switch (aspm) {
+	case 1:
+		return ("L0s");
+	case 2:
+		return ("L1");
+	case 3:
+		return ("L0s/L1");
+	default:
+		return ("disabled");
+	}
+}
+
 static void
 cap_express(int fd, struct pci_conf *p, uint8_t ptr)
 {
-	uint32_t val;
-	uint16_t flags;
+	uint32_t cap;
+	uint16_t ctl, flags, sta;
 
 	flags = read_config(fd, &p->pc_sel, ptr + PCIER_FLAGS, 2);
 	printf("PCI-Express %d ", flags & PCIEM_FLAGS_VERSION);
@@ -435,26 +451,28 @@ cap_express(int fd, struct pci_conf *p, 
 		printf(" slot");
 	if (flags & PCIEM_FLAGS_IRQ)
 		printf(" IRQ %d", (flags & PCIEM_FLAGS_IRQ) >> 9);
-	val = read_config(fd, &p->pc_sel, ptr + PCIER_DEVICE_CAP, 4);
-	flags = read_config(fd, &p->pc_sel, ptr + PCIER_DEVICE_CTL, 2);
+	cap = read_config(fd, &p->pc_sel, ptr + PCIER_DEVICE_CAP, 4);
+	ctl = read_config(fd, &p->pc_sel, ptr + PCIER_DEVICE_CTL, 2);
 	printf(" max data %d(%d)",
-	    MAX_PAYLOAD((flags & PCIEM_CTL_MAX_PAYLOAD) >> 5),
-	    MAX_PAYLOAD(val & PCIEM_CAP_MAX_PAYLOAD));
-	if (val & PCIEM_CAP_FLR)
+	    MAX_PAYLOAD((ctl & PCIEM_CTL_MAX_PAYLOAD) >> 5),
+	    MAX_PAYLOAD(cap & PCIEM_CAP_MAX_PAYLOAD));
+	if ((cap & PCIEM_CAP_FLR) != 0)
 		printf(" FLR");
-	val = read_config(fd, &p->pc_sel, ptr + PCIER_LINK_CAP, 4);
-	flags = read_config(fd, &p->pc_sel, ptr+ PCIER_LINK_STA, 2);
-	printf(" link x%d(x%d)", (flags & PCIEM_LINK_STA_WIDTH) >> 4,
-	    (val & PCIEM_LINK_CAP_MAX_WIDTH) >> 4);
-	/*
-	 * Only print link speed info if the link's max width is
-	 * greater than 0.
-	 */ 
-	if ((val & PCIEM_LINK_CAP_MAX_WIDTH) != 0) {
-		printf("\n                 speed");
-		printf(" %s(%s)", (flags & PCIEM_LINK_STA_WIDTH) == 0 ?
-		    "0.0" : link_speed_string(flags & PCIEM_LINK_STA_SPEED),
-	    	    link_speed_string(val & PCIEM_LINK_CAP_MAX_SPEED));
+	cap = read_config(fd, &p->pc_sel, ptr + PCIER_LINK_CAP, 4);
+	sta = read_config(fd, &p->pc_sel, ptr + PCIER_LINK_STA, 2);
+	printf(" link x%d(x%d)", (sta & PCIEM_LINK_STA_WIDTH) >> 4,
+	    (cap & PCIEM_LINK_CAP_MAX_WIDTH) >> 4);
+	if ((cap & (PCIEM_LINK_CAP_MAX_WIDTH | PCIEM_LINK_CAP_ASPM)) != 0)
+		printf("\n                ");
+	if ((cap & PCIEM_LINK_CAP_MAX_WIDTH) != 0) {
+		printf(" speed %s(%s)", (sta & PCIEM_LINK_STA_WIDTH) == 0 ?
+		    "0.0" : link_speed_string(sta & PCIEM_LINK_STA_SPEED),
+	    	    link_speed_string(cap & PCIEM_LINK_CAP_MAX_SPEED));
+	}
+	if ((cap & PCIEM_LINK_CAP_ASPM) != 0) {
+		ctl = read_config(fd, &p->pc_sel, ptr + PCIER_LINK_CTL, 2);
+		printf(" ASPM %s(%s)", aspm_string(ctl & PCIEM_LINK_CTL_ASPMC),
+		    aspm_string((cap & PCIEM_LINK_CAP_ASPM) >> 10));
 	}
 }
 

From owner-svn-src-stable-8@FreeBSD.ORG  Fri Jul 26 06:23:58 2013
Return-Path: <owner-svn-src-stable-8@FreeBSD.ORG>
Delivered-To: svn-src-stable-8@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 357F434C;
 Fri, 26 Jul 2013 06:23:58 +0000 (UTC)
 (envelope-from yongari@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 217942710;
 Fri, 26 Jul 2013 06:23: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 r6Q6NvgN009600;
 Fri, 26 Jul 2013 06:23:57 GMT (envelope-from yongari@svn.freebsd.org)
Received: (from yongari@localhost)
 by svn.freebsd.org (8.14.7/8.14.5/Submit) id r6Q6NvTU009599;
 Fri, 26 Jul 2013 06:23:57 GMT (envelope-from yongari@svn.freebsd.org)
Message-Id: <201307260623.r6Q6NvTU009599@svn.freebsd.org>
From: Pyun YongHyeon <yongari@FreeBSD.org>
Date: Fri, 26 Jul 2013 06:23:57 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org
Subject: svn commit: r253664 - stable/8/sys/dev/ae
X-SVN-Group: stable-8
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-BeenThere: svn-src-stable-8@freebsd.org
X-Mailman-Version: 2.1.14
Precedence: list
List-Id: SVN commit messages for only the 8-stable src tree
 <svn-src-stable-8.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/options/svn-src-stable-8>, 
 <mailto:svn-src-stable-8-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-stable-8>
List-Post: <mailto:svn-src-stable-8@freebsd.org>
List-Help: <mailto:svn-src-stable-8-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/svn-src-stable-8>, 
 <mailto:svn-src-stable-8-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 26 Jul 2013 06:23:58 -0000

Author: yongari
Date: Fri Jul 26 06:23:57 2013
New Revision: 253664
URL: http://svnweb.freebsd.org/changeset/base/253664

Log:
  MFC r253404:
     o TxD ring requires 8 bytes alignment to work so change alignment
       constraint to 8. Previously it may have triggered watchdog
       timeouts.
     o Check whether interrupt is ours or not.
     o Enable interrupts before attemping to transmit queued packets.
       This will slightly improve TX performance.
     o No need to clear IFF_DRV_OACTIVE in a loop. AE_FLAG_TXAVAIL is
       used to know whether there are enough available TxD ring space.
     o Added missing bus_dmamap_sync(9) in ae_rx_intr() and rearranged
       code to avoid unncessary register access.
     o Make sure to clear TxD, TxS, RxD rings in driver initialization.
       Otherwise some data in these rings could be interpreted as
       'updated' which in turn will advance internally maintained
       pointers and can trigger watchdog timeouts.
  
    PR:	kern/180382

Modified:
  stable/8/sys/dev/ae/if_ae.c
Directory Properties:
  stable/8/sys/   (props changed)
  stable/8/sys/dev/   (props changed)
  stable/8/sys/dev/ae/   (props changed)

Modified: stable/8/sys/dev/ae/if_ae.c
==============================================================================
--- stable/8/sys/dev/ae/if_ae.c	Fri Jul 26 06:23:06 2013	(r253663)
+++ stable/8/sys/dev/ae/if_ae.c	Fri Jul 26 06:23:57 2013	(r253664)
@@ -586,6 +586,9 @@ ae_init_locked(ae_softc_t *sc)
 	val = eaddr[0] << 8 | eaddr[1];
 	AE_WRITE_4(sc, AE_EADDR1_REG, val);
 
+	bzero(sc->rxd_base_dma, AE_RXD_COUNT_DEFAULT * 1536 + 120);
+	bzero(sc->txd_base, AE_TXD_BUFSIZE_DEFAULT);
+	bzero(sc->txs_base, AE_TXS_COUNT_DEFAULT * 4);
 	/*
 	 * Set ring buffers base addresses.
 	 */
@@ -1116,7 +1119,7 @@ ae_alloc_rings(ae_softc_t *sc)
 	 * Create DMA tag for TxD.
 	 */
 	error = bus_dma_tag_create(sc->dma_parent_tag,
-	    4, 0, BUS_SPACE_MAXADDR, BUS_SPACE_MAXADDR,
+	    8, 0, BUS_SPACE_MAXADDR, BUS_SPACE_MAXADDR,
 	    NULL, NULL, AE_TXD_BUFSIZE_DEFAULT, 1,
 	    AE_TXD_BUFSIZE_DEFAULT, 0, NULL, NULL,
 	    &sc->dma_txd_tag);
@@ -1129,7 +1132,7 @@ ae_alloc_rings(ae_softc_t *sc)
 	 * Create DMA tag for TxS.
 	 */
 	error = bus_dma_tag_create(sc->dma_parent_tag,
-	    4, 0, BUS_SPACE_MAXADDR, BUS_SPACE_MAXADDR,
+	    8, 0, BUS_SPACE_MAXADDR, BUS_SPACE_MAXADDR,
 	    NULL, NULL, AE_TXS_COUNT_DEFAULT * 4, 1,
 	    AE_TXS_COUNT_DEFAULT * 4, 0, NULL, NULL,
 	    &sc->dma_txs_tag);
@@ -1762,6 +1765,10 @@ ae_int_task(void *arg, int pending)
 	ifp = sc->ifp;
 
 	val = AE_READ_4(sc, AE_ISR_REG);	/* Read interrupt status. */
+	if (val == 0) {
+		AE_UNLOCK(sc);
+		return;
+	}
 
 	/*
 	 * Clear interrupts and disable them.
@@ -1784,12 +1791,16 @@ ae_int_task(void *arg, int pending)
 			ae_tx_intr(sc);
 		if ((val & AE_ISR_RX_EVENT) != 0)
 			ae_rx_intr(sc);
-	}
+		/*
+		 * Re-enable interrupts.
+		 */
+		AE_WRITE_4(sc, AE_ISR_REG, 0);
 
-	/*
-	 * Re-enable interrupts.
-	 */
-	AE_WRITE_4(sc, AE_ISR_REG, 0);
+		if ((sc->flags & AE_FLAG_TXAVAIL) != 0) {
+			if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd))
+				ae_start_locked(ifp);
+		}
+	}
 
 	AE_UNLOCK(sc);
 }
@@ -1850,10 +1861,10 @@ ae_tx_intr(ae_softc_t *sc)
 			ifp->if_oerrors++;
 
 		sc->tx_inproc--;
-
-		ifp->if_drv_flags &= ~IFF_DRV_OACTIVE;
 	}
 
+	if ((sc->flags & AE_FLAG_TXAVAIL) != 0)
+		ifp->if_drv_flags &= ~IFF_DRV_OACTIVE;
 	if (sc->tx_inproc < 0) {
 		if_printf(ifp, "Received stray Tx interrupt(s).\n");
 		sc->tx_inproc = 0;
@@ -1861,11 +1872,6 @@ ae_tx_intr(ae_softc_t *sc)
 
 	if (sc->tx_inproc == 0)
 		sc->wd_timer = 0;	/* Unarm watchdog. */
-	
-	if ((sc->flags & AE_FLAG_TXAVAIL) != 0) {
-		if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd))
-			ae_start_locked(ifp);
-	}
 
 	/*
 	 * Syncronize DMA buffers.
@@ -1924,7 +1930,7 @@ ae_rx_intr(ae_softc_t *sc)
 	ae_rxd_t *rxd;
 	struct ifnet *ifp;
 	uint16_t flags;
-	int error;
+	int count, error;
 
 	KASSERT(sc != NULL, ("[ae, %d]: sc is NULL!", __LINE__));
 
@@ -1938,7 +1944,7 @@ ae_rx_intr(ae_softc_t *sc)
 	bus_dmamap_sync(sc->dma_rxd_tag, sc->dma_rxd_map,
 	    BUS_DMASYNC_POSTREAD | BUS_DMASYNC_POSTWRITE);
 
-	for (;;) {
+	for (count = 0;; count++) {
 		rxd = (ae_rxd_t *)(sc->rxd_base + sc->rxd_cur);
 		flags = le16toh(rxd->flags);
 		if ((flags & AE_RXD_UPDATE) == 0)
@@ -1965,10 +1971,14 @@ ae_rx_intr(ae_softc_t *sc)
 		}
 	}
 
-	/*
-	 * Update Rx index.
-	 */
-	AE_WRITE_2(sc, AE_MB_RXD_IDX_REG, sc->rxd_cur);
+	if (count > 0) {
+		bus_dmamap_sync(sc->dma_rxd_tag, sc->dma_rxd_map,
+		    BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE);
+		/*
+		 * Update Rx index.
+		 */
+		AE_WRITE_2(sc, AE_MB_RXD_IDX_REG, sc->rxd_cur);
+	}
 }
 
 static void

From owner-svn-src-stable-8@FreeBSD.ORG  Fri Jul 26 06:28:42 2013
Return-Path: <owner-svn-src-stable-8@FreeBSD.ORG>
Delivered-To: svn-src-stable-8@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 947957B4;
 Fri, 26 Jul 2013 06:28:42 +0000 (UTC)
 (envelope-from hselasky@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 676702742;
 Fri, 26 Jul 2013 06:28:42 +0000 (UTC)
Received: from svn.freebsd.org ([127.0.1.70])
 by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r6Q6SgnD010421;
 Fri, 26 Jul 2013 06:28:42 GMT
 (envelope-from hselasky@svn.freebsd.org)
Received: (from hselasky@localhost)
 by svn.freebsd.org (8.14.7/8.14.5/Submit) id r6Q6SgkY010420;
 Fri, 26 Jul 2013 06:28:42 GMT
 (envelope-from hselasky@svn.freebsd.org)
Message-Id: <201307260628.r6Q6SgkY010420@svn.freebsd.org>
From: Hans Petter Selasky <hselasky@FreeBSD.org>
Date: Fri, 26 Jul 2013 06:28:42 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org
Subject: svn commit: r253666 - stable/8/sys/dev/usb/controller
X-SVN-Group: stable-8
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-BeenThere: svn-src-stable-8@freebsd.org
X-Mailman-Version: 2.1.14
Precedence: list
List-Id: SVN commit messages for only the 8-stable src tree
 <svn-src-stable-8.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/options/svn-src-stable-8>, 
 <mailto:svn-src-stable-8-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-stable-8>
List-Post: <mailto:svn-src-stable-8@freebsd.org>
List-Help: <mailto:svn-src-stable-8-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/svn-src-stable-8>, 
 <mailto:svn-src-stable-8-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 26 Jul 2013 06:28:42 -0000

Author: hselasky
Date: Fri Jul 26 06:28:41 2013
New Revision: 253666
URL: http://svnweb.freebsd.org/changeset/base/253666

Log:
  MFC r253532:
  
  Fix an XHCI regression:
  
  The Block Event Interrupts, BEI, feature does not
  work like expected with the Renesas XHCI chipsets.
  Revert feature.
  
  While at it correct the TD SIZE computation in
  case of Zero Length Packet, ZLP, in the end of a
  multi frame USB transfer.
  
  PR:		usb/180726

Modified:
  stable/8/sys/dev/usb/controller/xhci.c
Directory Properties:
  stable/8/sys/   (props changed)
  stable/8/sys/dev/   (props changed)
  stable/8/sys/dev/usb/   (props changed)

Modified: stable/8/sys/dev/usb/controller/xhci.c
==============================================================================
--- stable/8/sys/dev/usb/controller/xhci.c	Fri Jul 26 06:24:33 2013	(r253665)
+++ stable/8/sys/dev/usb/controller/xhci.c	Fri Jul 26 06:28:41 2013	(r253666)
@@ -1654,7 +1654,6 @@ restart:
 			/* fill out buffer pointers */
 
 			if (average == 0) {
-				npkt = 0;
 				memset(&buf_res, 0, sizeof(buf_res));
 			} else {
 				usbd_get_page(temp->pc, temp->offset +
@@ -1669,15 +1668,17 @@ restart:
 					buf_res.length = XHCI_TD_PAGE_SIZE;
 
 				npkt_off += buf_res.length;
-
-				/* setup npkt */
-				npkt = (len_old - npkt_off + temp->max_packet_size - 1) /
-				    temp->max_packet_size;
-
-				if (npkt > 31)
-					npkt = 31;
 			}
 
+			/* setup npkt */
+			npkt = (len_old - npkt_off + temp->max_packet_size - 1) /
+			    temp->max_packet_size;
+
+			if (npkt == 0)
+				npkt = 1;
+			else if (npkt > 31)
+				npkt = 31;
+
 			/* fill out TRB's */
 			td->td_trb[x].qwTrb0 =
 			    htole64((uint64_t)buf_res.physaddr);
@@ -1691,9 +1692,7 @@ restart:
 
 			switch (temp->trb_type) {
 			case XHCI_TRB_TYPE_ISOCH:
-				/* BEI: Interrupts are inhibited until EOT */
 				dword = XHCI_TRB_3_CHAIN_BIT | XHCI_TRB_3_CYCLE_BIT |
-				    XHCI_TRB_3_BEI_BIT |
 				    XHCI_TRB_3_TBC_SET(temp->tbc) |
 				    XHCI_TRB_3_TLBPC_SET(temp->tlbpc);
 				if (td != td_first) {
@@ -1728,10 +1727,8 @@ restart:
 					dword |= XHCI_TRB_3_DIR_IN;
 				break;
 			default:	/* XHCI_TRB_TYPE_NORMAL */
-				/* BEI: Interrupts are inhibited until EOT */
 				dword = XHCI_TRB_3_CHAIN_BIT | XHCI_TRB_3_CYCLE_BIT |
 				    XHCI_TRB_3_TYPE_SET(XHCI_TRB_TYPE_NORMAL) |
-				    XHCI_TRB_3_BEI_BIT |
 				    XHCI_TRB_3_TBC_SET(temp->tbc) |
 				    XHCI_TRB_3_TLBPC_SET(temp->tlbpc);
 				if (temp->direction == UE_DIR_IN)
@@ -1810,6 +1807,7 @@ restart:
 		usb_pc_cpu_flush(td_first->page_cache);
 	}
 
+	/* clear TD SIZE to zero, hence this is the last TRB */
 	/* remove chain bit because this is the last TRB in the chain */
 	td->td_trb[td->ntrb - 1].dwTrb2 &= ~htole32(XHCI_TRB_2_TDSZ_SET(15));
 	td->td_trb[td->ntrb - 1].dwTrb3 &= ~htole32(XHCI_TRB_3_CHAIN_BIT);

From owner-svn-src-stable-8@FreeBSD.ORG  Fri Jul 26 22:53:18 2013
Return-Path: <owner-svn-src-stable-8@FreeBSD.ORG>
Delivered-To: svn-src-stable-8@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 82A4793B;
 Fri, 26 Jul 2013 22:53:18 +0000 (UTC)
 (envelope-from delphij@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 6EBE424CD;
 Fri, 26 Jul 2013 22:53:18 +0000 (UTC)
Received: from svn.freebsd.org ([127.0.1.70])
 by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r6QMrICV071297;
 Fri, 26 Jul 2013 22:53:18 GMT (envelope-from delphij@svn.freebsd.org)
Received: (from delphij@localhost)
 by svn.freebsd.org (8.14.7/8.14.5/Submit) id r6QMrIZw071296;
 Fri, 26 Jul 2013 22:53:18 GMT (envelope-from delphij@svn.freebsd.org)
Message-Id: <201307262253.r6QMrIZw071296@svn.freebsd.org>
From: Xin LI <delphij@FreeBSD.org>
Date: Fri, 26 Jul 2013 22:53:18 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org
Subject: svn commit: r253696 - stable/8/contrib/bind9/lib/dns/rdata/generic
X-SVN-Group: stable-8
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-BeenThere: svn-src-stable-8@freebsd.org
X-Mailman-Version: 2.1.14
Precedence: list
List-Id: SVN commit messages for only the 8-stable src tree
 <svn-src-stable-8.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/options/svn-src-stable-8>, 
 <mailto:svn-src-stable-8-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-stable-8>
List-Post: <mailto:svn-src-stable-8@freebsd.org>
List-Help: <mailto:svn-src-stable-8-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/svn-src-stable-8>, 
 <mailto:svn-src-stable-8-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Fri, 26 Jul 2013 22:53:18 -0000

Author: delphij
Date: Fri Jul 26 22:53:17 2013
New Revision: 253696
URL: http://svnweb.freebsd.org/changeset/base/253696

Log:
  Fix Denial of Service vulnerability in named(8). [13:07]
  
  Security:	CVE-2013-4854
  Security:	FreeBSD-SA-13:07.bind
  Approved by:	so

Modified:
  stable/8/contrib/bind9/lib/dns/rdata/generic/keydata_65533.c

Modified: stable/8/contrib/bind9/lib/dns/rdata/generic/keydata_65533.c
==============================================================================
--- stable/8/contrib/bind9/lib/dns/rdata/generic/keydata_65533.c	Fri Jul 26 22:43:09 2013	(r253695)
+++ stable/8/contrib/bind9/lib/dns/rdata/generic/keydata_65533.c	Fri Jul 26 22:53:17 2013	(r253696)
@@ -176,7 +176,7 @@ fromwire_keydata(ARGS_FROMWIRE) {
 	UNUSED(options);
 
 	isc_buffer_activeregion(source, &sr);
-	if (sr.length < 4)
+	if (sr.length < 16)
 		return (ISC_R_UNEXPECTEDEND);
 
 	isc_buffer_forward(source, sr.length);