From owner-freebsd-hardware@FreeBSD.ORG Tue Feb 1 19:56:49 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 66E231065679; Tue, 1 Feb 2011 19:56:49 +0000 (UTC) (envelope-from seanbru@yahoo-inc.com) Received: from mrout2-b.corp.re1.yahoo.com (mrout2-b.corp.re1.yahoo.com [69.147.107.21]) by mx1.freebsd.org (Postfix) with ESMTP id 2B9D68FC25; Tue, 1 Feb 2011 19:56:48 +0000 (UTC) Received: from [127.0.0.1] (rideseveral.corp.yahoo.com [10.73.160.231]) by mrout2-b.corp.re1.yahoo.com (8.14.4/8.14.4/y.out) with ESMTP id p11JuU9U033130; Tue, 1 Feb 2011 11:56:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=yahoo-inc.com; s=cobra; t=1296590191; bh=WHTIhaRlpqT+nb1zqSWBS5Ncmjpc1u9WWJt7kbZTzPI=; h=Subject:From:To:Cc:In-Reply-To:References:Content-Type:Date: Message-ID:Mime-Version; b=Pv+2IW3l353HQgSgworStVGfSSe3jo/PzzmLvlbVBVRTwujGVkYbw+1H0bGbAWq/H JaXXR7JfsEWOlBBjNN4zKsUoUNSFkE8IuH7ZQ1/e44SiqZkKiz8WOHHYOjm3Ti/jdt dJiXhmpkDJOhGSZfSBk9nAWd0K2CFbtezFLkln1g= From: Sean Bruno To: Mike Tancsa In-Reply-To: <4D42EA74.4090807@sentex.net> References: <1290533941.3173.50.camel@home-yahoo> <4CEC0548.1080801@sentex.net> <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> Content-Type: multipart/mixed; boundary="=-jFCXdpagJIiUUJVyJJjK" Date: Tue, 01 Feb 2011 11:56:30 -0800 Message-ID: <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> Mime-Version: 1.0 X-Mailer: Evolution 2.32.1 (2.32.1-1.fc14) Cc: "freebsd-net@freebsd.org" , Ivan Voras , Jack Vogel , Jan Koum , "freebsd-hardware@freebsd.org" Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Feb 2011 19:56:49 -0000 --=-jFCXdpagJIiUUJVyJJjK Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit On Fri, 2011-01-28 at 08:10 -0800, Mike Tancsa wrote: > On 1/23/2011 10:21 AM, Mike Tancsa wrote: > > On 1/21/2011 4:21 AM, Jan Koum wrote: > > One other thing I noticed is that when the nic is in its hung state, the > > WOL option is gone ? > > > > e.g > > > > em1: flags=8843 metric 0 mtu 1500 > > options=19b > > ether 00:15:17:ed:68:a4 > > > > vs > > > > > > em1: flags=8843 metric 0 mtu 1500 > > > > options=219b > > ether 00:15:17:ed:68:a4 > > > Another hang last night :( > > Whats really strange is that the WOL_MAGIC and TSO4 got turned back on > somehow ? I had explicitly turned it off, but when the NIC was in its > bad state > > em1: flags=8843 metric 0 mtu 1500 > options=2198 > > ... its back on along with TSO? Not sure if its coincidence or a side > effect or what. For now, I have had to re-purpose this nic to something > else. > > debug info shows > > Jan 28 00:25:10 backup3 kernel: Interface is RUNNING and INACTIVE > Jan 28 00:25:10 backup3 kernel: em1: hw tdh = 625, hw tdt = 625 > Jan 28 00:25:10 backup3 kernel: em1: hw rdh = 903, hw rdt = 903 > Jan 28 00:25:10 backup3 kernel: em1: Tx Queue Status = 0 > Jan 28 00:25:10 backup3 kernel: em1: TX descriptors avail = 1024 > Jan 28 00:25:10 backup3 kernel: em1: Tx Descriptors avail failure = 0 > Jan 28 00:25:10 backup3 kernel: em1: RX discarded packets = 0 > Jan 28 00:25:10 backup3 kernel: em1: RX Next to Check = 903 > Jan 28 00:25:10 backup3 kernel: em1: RX Next to Refresh = 904 > Jan 28 00:25:27 backup3 kernel: em1: link state changed to DOWN > Jan 28 00:25:30 backup3 kernel: em1: link state changed to UP > > > ---Mike I'm trying to get some more testing done regarding my suggestions around the OACTIVE assertions in the driver. More or less, it looks like intense periods of activity can push the driver into the OACTIVE hold off state and the logic isn't quite right in igb(4) or em(4) to handle it. I suspect that something like this modification to igb(4) may be required for em(4). Comments? Sean --=-jFCXdpagJIiUUJVyJJjK Content-Disposition: attachment; filename="if_igb.diff_oactive" Content-Type: text/x-patch; name="if_igb.diff_oactive"; charset="UTF-8" Content-Transfer-Encoding: 7bit --- p4/freebsd_7/src/sys/dev/e1000/if_igb.c 2010-12-23 11:06:17.127417000 -0800 +++ p4/ybsd_7/src/sys/dev/e1000/if_igb.c 2010-12-23 11:28:50.476993000 -0800 @@ -784,10 +784,14 @@ return; /* Call cleanup if number of TX descriptors low */ +#if 0 if (txr->tx_avail <= IGB_TX_CLEANUP_THRESHOLD) igb_txeof(txr); +#endif while (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) { + if (txr->tx_avail <= IGB_TX_CLEANUP_THRESHOLD) + igb_txeof(txr); if (txr->tx_avail <= IGB_TX_OP_THRESHOLD) { ifp->if_drv_flags |= IFF_DRV_OACTIVE; break; @@ -1162,10 +1166,10 @@ IGB_TX_LOCK(txr); if (igb_txeof(txr)) more = TRUE; - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) - igb_start_locked(txr, ifp); + /*if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) Pointless as igb_start_locked() checks this right off the bat*/ + igb_start_locked(txr, ifp); IGB_TX_UNLOCK(txr); - if (more) { + if (more || (ifp->if_drv_flags & IFF_DRV_OACTIVE)) { taskqueue_enqueue(que->tq, &que->que_task); return; } @@ -1361,7 +1370,7 @@ no_calc: /* Schedule a clean task if needed*/ - if (more_tx || more_rx) + if (more_tx || more_rx || (ifp->if_drv_flags & IFF_DRV_OACTIVE)) taskqueue_enqueue(que->tq, &que->que_task); else /* Reenable this interrupt */ @@ -1535,6 +1545,14 @@ if (m_head->m_flags & M_VLANTAG) cmd_type_len |= E1000_ADVTXD_DCMD_VLE; +/* + * We just did this in before invocation, seems completely + * redundant, igb_handle_queue -> igb_txeof + * Pretty sure this is impossible as we check for the + * IGB_TX_CLEANUP_THRESHOLD in igb_start_locked() which happens + * before this func in invoked + */ +#if 0 /* * Force a cleanup if number of TX descriptors * available hits the threshold @@ -1547,6 +1565,7 @@ return (ENOBUFS); } } +#endif /* * Map the packet for DMA. --=-jFCXdpagJIiUUJVyJJjK-- From owner-freebsd-hardware@FreeBSD.ORG Tue Feb 1 20:15:22 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 30F4B106566B; Tue, 1 Feb 2011 20:15:22 +0000 (UTC) (envelope-from mike@sentex.net) Received: from smarthost1.sentex.ca (smarthost1-6.sentex.ca [IPv6:2607:f3e0:0:1::12]) by mx1.freebsd.org (Postfix) with ESMTP id D4FB48FC12; Tue, 1 Feb 2011 20:15:21 +0000 (UTC) Received: from [IPv6:2607:f3e0:0:4:f025:8813:7603:7e4a] (saphire3.sentex.ca [IPv6:2607:f3e0:0:4:f025:8813:7603:7e4a]) by smarthost1.sentex.ca (8.14.4/8.14.4) with ESMTP id p11KFIY8078660 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Tue, 1 Feb 2011 15:15:19 -0500 (EST) (envelope-from mike@sentex.net) Message-ID: <4D4869D1.1010709@sentex.net> Date: Tue, 01 Feb 2011 15:15:13 -0500 From: Mike Tancsa Organization: Sentex Communications User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101207 Thunderbird/3.1.7 MIME-Version: 1.0 To: Jack Vogel References: <1290533941.3173.50.camel@home-yahoo> <4CEC0548.1080801@sentex.net> <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> In-Reply-To: X-Enigmail-Version: 1.1.1 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.67 on IPv6:2607:f3e0:0:1::12 Cc: "freebsd-net@freebsd.org" , Ivan Voras , Sean Bruno , Jan Koum , "freebsd-hardware@freebsd.org" Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Feb 2011 20:15:22 -0000 On 2/1/2011 3:05 PM, Jack Vogel wrote: > At this point I'm open to any ideas, this sounds like a good one Sean, > thanks. > Mike, you want to test this ? Sure, I am feeling lucky ;-) If someone generates the appropriate em diffs for me, I will apply on the box that sees this issue the most. ---Mike > > Jack > > > On Tue, Feb 1, 2011 at 11:56 AM, Sean Bruno wrote: > >> On Fri, 2011-01-28 at 08:10 -0800, Mike Tancsa wrote: >>> On 1/23/2011 10:21 AM, Mike Tancsa wrote: >>>> On 1/21/2011 4:21 AM, Jan Koum wrote: >>>> One other thing I noticed is that when the nic is in its hung state, >> the >>>> WOL option is gone ? >>>> >>>> e.g >>>> >>>> em1: flags=8843 metric 0 mtu >> 1500 >>>> >> options=19b >>>> ether 00:15:17:ed:68:a4 >>>> >>>> vs >>>> >>>> >>>> em1: flags=8843 metric 0 mtu >> 1500 >>>> >>>> >> options=219b >>>> ether 00:15:17:ed:68:a4 >>> >>> >>> Another hang last night :( >>> >>> Whats really strange is that the WOL_MAGIC and TSO4 got turned back on >>> somehow ? I had explicitly turned it off, but when the NIC was in its >>> bad state >>> >>> em1: flags=8843 metric 0 mtu 1500 >>> options=2198 >>> >>> ... its back on along with TSO? Not sure if its coincidence or a side >>> effect or what. For now, I have had to re-purpose this nic to something >>> else. >>> >>> debug info shows >>> >>> Jan 28 00:25:10 backup3 kernel: Interface is RUNNING and INACTIVE >>> Jan 28 00:25:10 backup3 kernel: em1: hw tdh = 625, hw tdt = 625 >>> Jan 28 00:25:10 backup3 kernel: em1: hw rdh = 903, hw rdt = 903 >>> Jan 28 00:25:10 backup3 kernel: em1: Tx Queue Status = 0 >>> Jan 28 00:25:10 backup3 kernel: em1: TX descriptors avail = 1024 >>> Jan 28 00:25:10 backup3 kernel: em1: Tx Descriptors avail failure = 0 >>> Jan 28 00:25:10 backup3 kernel: em1: RX discarded packets = 0 >>> Jan 28 00:25:10 backup3 kernel: em1: RX Next to Check = 903 >>> Jan 28 00:25:10 backup3 kernel: em1: RX Next to Refresh = 904 >>> Jan 28 00:25:27 backup3 kernel: em1: link state changed to DOWN >>> Jan 28 00:25:30 backup3 kernel: em1: link state changed to UP >>> >>> >>> ---Mike >> >> >> I'm trying to get some more testing done regarding my suggestions around >> the OACTIVE assertions in the driver. More or less, it looks like >> intense periods of activity can push the driver into the OACTIVE hold >> off state and the logic isn't quite right in igb(4) or em(4) to handle >> it. >> >> I suspect that something like this modification to igb(4) may be >> required for em(4). >> >> Comments? >> >> Sean >> > -- ------------------- Mike Tancsa, tel +1 519 651 3400 Sentex Communications, mike@sentex.net Providing Internet services since 1994 www.sentex.net Cambridge, Ontario Canada http://www.tancsa.com/ From owner-freebsd-hardware@FreeBSD.ORG Tue Feb 1 20:20:52 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 822ED106564A; Tue, 1 Feb 2011 20:20:52 +0000 (UTC) (envelope-from seanbru@yahoo-inc.com) Received: from mrout2-b.corp.re1.yahoo.com (mrout2-b.corp.re1.yahoo.com [69.147.107.21]) by mx1.freebsd.org (Postfix) with ESMTP id 459588FC12; Tue, 1 Feb 2011 20:20:51 +0000 (UTC) Received: from [127.0.0.1] (rideseveral.corp.yahoo.com [10.73.160.231]) by mrout2-b.corp.re1.yahoo.com (8.14.4/8.14.4/y.out) with ESMTP id p11KJPa8040694; Tue, 1 Feb 2011 12:19:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=yahoo-inc.com; s=cobra; t=1296591566; bh=gz56gpIBkyRvWf/OxNDQ2mfB91/S+vlsI4QkXNZ8ikY=; h=Subject:From:To:Cc:In-Reply-To:References:Content-Type:Date: Message-ID:Mime-Version:Content-Transfer-Encoding; b=isQUmCffUaIfh6l9jpa5mAW+zoyAyAUitxI66MQ8eKk37ldbi+m4TAOwhTO/DQfSL 9b0Ef/+CLfgp7e6++oUPvJQw8zk8B01bR5YBxkiKhnaqzaZFKTDlXv/h74bdXtlo16 f8oEo5juK93NzVxVAR5zREMZVKcCWCmy2/QaX+NI= From: Sean Bruno To: Jack Vogel In-Reply-To: References: <1290533941.3173.50.camel@home-yahoo> <4CEC0548.1080801@sentex.net> <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> Content-Type: text/plain; charset="UTF-8" Date: Tue, 01 Feb 2011 12:19:25 -0800 Message-ID: <1296591565.2326.7.camel@hitfishpass-lx.corp.yahoo.com> Mime-Version: 1.0 X-Mailer: Evolution 2.32.1 (2.32.1-1.fc14) Content-Transfer-Encoding: 7bit Cc: "freebsd-net@freebsd.org" , "freebsd-hardware@freebsd.org" , Ivan Voras , Jan Koum , Mike Tancsa Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Feb 2011 20:20:52 -0000 On Tue, 2011-02-01 at 12:05 -0800, Jack Vogel wrote: > At this point I'm open to any ideas, this sounds like a good one Sean, > thanks. > Mike, you want to test this ? > > Jack > > > On Tue, Feb 1, 2011 at 11:56 AM, Sean Bruno > wrote: > > On Fri, 2011-01-28 at 08:10 -0800, Mike Tancsa wrote: > > On 1/23/2011 10:21 AM, Mike Tancsa wrote: > > > On 1/21/2011 4:21 AM, Jan Koum wrote: > > > One other thing I noticed is that when the nic is in its > hung state, the > > > WOL option is gone ? > > > > > > e.g > > > > > > em1: flags=8843 > metric 0 mtu 1500 > > > > options=19b > > > ether 00:15:17:ed:68:a4 > > > > > > vs > > > > > > > > > em1: flags=8843 > metric 0 mtu 1500 > > > > > > > options=219b > > > ether 00:15:17:ed:68:a4 > > > > > > Another hang last night :( > > > > Whats really strange is that the WOL_MAGIC and TSO4 got > turned back on > > somehow ? I had explicitly turned it off, but when the NIC > was in its > > bad state > > > > em1: flags=8843 > metric 0 mtu 1500 > > > options=2198 > > > > ... its back on along with TSO? Not sure if its coincidence > or a side > > effect or what. For now, I have had to re-purpose this nic > to something > > else. > > > > debug info shows > > > > Jan 28 00:25:10 backup3 kernel: Interface is RUNNING and > INACTIVE > > Jan 28 00:25:10 backup3 kernel: em1: hw tdh = 625, hw tdt = > 625 > > Jan 28 00:25:10 backup3 kernel: em1: hw rdh = 903, hw rdt = > 903 > > Jan 28 00:25:10 backup3 kernel: em1: Tx Queue Status = 0 > > Jan 28 00:25:10 backup3 kernel: em1: TX descriptors avail = > 1024 > > Jan 28 00:25:10 backup3 kernel: em1: Tx Descriptors avail > failure = 0 > > Jan 28 00:25:10 backup3 kernel: em1: RX discarded packets = > 0 > > Jan 28 00:25:10 backup3 kernel: em1: RX Next to Check = 903 > > Jan 28 00:25:10 backup3 kernel: em1: RX Next to Refresh = > 904 > > Jan 28 00:25:27 backup3 kernel: em1: link state changed to > DOWN > > Jan 28 00:25:30 backup3 kernel: em1: link state changed to > UP > > > > > > ---Mike > > > > I'm trying to get some more testing done regarding my > suggestions around > the OACTIVE assertions in the driver. More or less, it looks > like > intense periods of activity can push the driver into the > OACTIVE hold > off state and the logic isn't quite right in igb(4) or em(4) > to handle > it. > > I suspect that something like this modification to igb(4) may > be > required for em(4). > > Comments? > > Sean > Does the logic I've implemented look sane? Sean From owner-freebsd-hardware@FreeBSD.ORG Tue Feb 1 20:30:23 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AAD241065694; Tue, 1 Feb 2011 20:30:23 +0000 (UTC) (envelope-from jfvogel@gmail.com) Received: from mail-gw0-f54.google.com (mail-gw0-f54.google.com [74.125.83.54]) by mx1.freebsd.org (Postfix) with ESMTP id 4870D8FC27; Tue, 1 Feb 2011 20:30:22 +0000 (UTC) Received: by gwj21 with SMTP id 21so2848296gwj.13 for ; Tue, 01 Feb 2011 12:30:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=4HFspTDwSJ3xMCFYSOujGvVxy9RrJ7hCM1PkEgP0WJc=; b=FFAg+hBfJXcC8Fm+SsTdpQ7GapZCoFotOtakoGI6ozEMh3AMVpQGUH1LF3RdJ3uPa+ myY1qRDxTtNL5KsETO7IS2yrFDVZRA5JfZPDEnDFk613lvcZU+DrwI9vcxVPTyJc5wy3 S9dBQ07CEnqiNo3QCgXkKKYYMGVjxILnw18FU= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=NGGx1LtJHmZvU4nDL7nwu96sw8x+kzDJCmSVjGJbpXHUtUR2Xh087VOVPXoA+0wo2v 3AmV2m2ax8XW7hN33XS/QWtESlJdyrAIoMYty6n2VIUa9R8EnYXPsxaNHZbUmk7Wi4HH vW5PQbVcowdvGgM/vnTc7cz4ntjOBHDEEaPzQ= MIME-Version: 1.0 Received: by 10.100.48.14 with SMTP id v14mr2973436anv.4.1296590739248; Tue, 01 Feb 2011 12:05:39 -0800 (PST) Received: by 10.147.171.17 with HTTP; Tue, 1 Feb 2011 12:05:39 -0800 (PST) In-Reply-To: <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> References: <1290533941.3173.50.camel@home-yahoo> <4CEC0548.1080801@sentex.net> <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> Date: Tue, 1 Feb 2011 12:05:39 -0800 Message-ID: From: Jack Vogel To: Sean Bruno Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: "freebsd-net@freebsd.org" , "freebsd-hardware@freebsd.org" , Ivan Voras , Jan Koum , Mike Tancsa Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Feb 2011 20:30:23 -0000 At this point I'm open to any ideas, this sounds like a good one Sean, thanks. Mike, you want to test this ? Jack On Tue, Feb 1, 2011 at 11:56 AM, Sean Bruno wrote: > On Fri, 2011-01-28 at 08:10 -0800, Mike Tancsa wrote: > > On 1/23/2011 10:21 AM, Mike Tancsa wrote: > > > On 1/21/2011 4:21 AM, Jan Koum wrote: > > > One other thing I noticed is that when the nic is in its hung state, > the > > > WOL option is gone ? > > > > > > e.g > > > > > > em1: flags=8843 metric 0 mtu > 1500 > > > > options=19b > > > ether 00:15:17:ed:68:a4 > > > > > > vs > > > > > > > > > em1: flags=8843 metric 0 mtu > 1500 > > > > > > > options=219b > > > ether 00:15:17:ed:68:a4 > > > > > > Another hang last night :( > > > > Whats really strange is that the WOL_MAGIC and TSO4 got turned back on > > somehow ? I had explicitly turned it off, but when the NIC was in its > > bad state > > > > em1: flags=8843 metric 0 mtu 1500 > > options=2198 > > > > ... its back on along with TSO? Not sure if its coincidence or a side > > effect or what. For now, I have had to re-purpose this nic to something > > else. > > > > debug info shows > > > > Jan 28 00:25:10 backup3 kernel: Interface is RUNNING and INACTIVE > > Jan 28 00:25:10 backup3 kernel: em1: hw tdh = 625, hw tdt = 625 > > Jan 28 00:25:10 backup3 kernel: em1: hw rdh = 903, hw rdt = 903 > > Jan 28 00:25:10 backup3 kernel: em1: Tx Queue Status = 0 > > Jan 28 00:25:10 backup3 kernel: em1: TX descriptors avail = 1024 > > Jan 28 00:25:10 backup3 kernel: em1: Tx Descriptors avail failure = 0 > > Jan 28 00:25:10 backup3 kernel: em1: RX discarded packets = 0 > > Jan 28 00:25:10 backup3 kernel: em1: RX Next to Check = 903 > > Jan 28 00:25:10 backup3 kernel: em1: RX Next to Refresh = 904 > > Jan 28 00:25:27 backup3 kernel: em1: link state changed to DOWN > > Jan 28 00:25:30 backup3 kernel: em1: link state changed to UP > > > > > > ---Mike > > > I'm trying to get some more testing done regarding my suggestions around > the OACTIVE assertions in the driver. More or less, it looks like > intense periods of activity can push the driver into the OACTIVE hold > off state and the logic isn't quite right in igb(4) or em(4) to handle > it. > > I suspect that something like this modification to igb(4) may be > required for em(4). > > Comments? > > Sean > From owner-freebsd-hardware@FreeBSD.ORG Tue Feb 1 20:37:38 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 367FF106564A; Tue, 1 Feb 2011 20:37:38 +0000 (UTC) (envelope-from jfvogel@gmail.com) Received: from mail-gx0-f182.google.com (mail-gx0-f182.google.com [209.85.161.182]) by mx1.freebsd.org (Postfix) with ESMTP id B0FB38FC27; Tue, 1 Feb 2011 20:37:37 +0000 (UTC) Received: by gxk8 with SMTP id 8so2850127gxk.13 for ; Tue, 01 Feb 2011 12:37:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=4tKv703wl7PQ0Zvg9ztljEJxNM/1/LCB04sy3mOrGlM=; b=ArQOsEVF2ZrvEeKF2SUfqqMm5oJIRDfDVsyau87AaLtyBoIgYjp+J7s6g255eSCTX8 ZV9u8iAHl1eHcJTr0NvWsz0U6mfxoAdiugk24Z00nkPz6+lXa5vl3zDVuKLgTfPQs+o9 vcQ/2waHxRXlTFmBLttEKVMaC4BsigpnTBNv8= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=SUcGibnLdaY9a/xW2yMCdEqlAVT+LCTyc1ygusYHJNAal8OHtWrpMdBUNsBQglhm1U RGUoUrE2pr9wiOV+MprWy2ZeIcnyuc+r+2TlV/ltGaiadkIAf2Jf0Dl8nLfyquGwsOxM jtRE6RJA4IPCedNIihD5aSwztmo0qKCZbsZ6M= MIME-Version: 1.0 Received: by 10.91.54.29 with SMTP id g29mr9004138agk.46.1296592656885; Tue, 01 Feb 2011 12:37:36 -0800 (PST) Received: by 10.147.171.17 with HTTP; Tue, 1 Feb 2011 12:37:36 -0800 (PST) In-Reply-To: <1296591565.2326.7.camel@hitfishpass-lx.corp.yahoo.com> References: <1290533941.3173.50.camel@home-yahoo> <4CEC0548.1080801@sentex.net> <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> <1296591565.2326.7.camel@hitfishpass-lx.corp.yahoo.com> Date: Tue, 1 Feb 2011 12:37:36 -0800 Message-ID: From: Jack Vogel To: Sean Bruno Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: "freebsd-net@freebsd.org" , "freebsd-hardware@freebsd.org" , Ivan Voras , Jan Koum , Mike Tancsa Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Feb 2011 20:37:38 -0000 Looks good, except I don't like code #if 0'd out, I'll make an if_em.c to try and send it shortly. Jack On Tue, Feb 1, 2011 at 12:19 PM, Sean Bruno wrote: > On Tue, 2011-02-01 at 12:05 -0800, Jack Vogel wrote: > > At this point I'm open to any ideas, this sounds like a good one Sean, > > thanks. > > Mike, you want to test this ? > > > > Jack > > > > > > On Tue, Feb 1, 2011 at 11:56 AM, Sean Bruno > > wrote: > > > > On Fri, 2011-01-28 at 08:10 -0800, Mike Tancsa wrote: > > > On 1/23/2011 10:21 AM, Mike Tancsa wrote: > > > > On 1/21/2011 4:21 AM, Jan Koum wrote: > > > > One other thing I noticed is that when the nic is in its > > hung state, the > > > > WOL option is gone ? > > > > > > > > e.g > > > > > > > > em1: flags=8843 > > metric 0 mtu 1500 > > > > > > > options=19b > > > > ether 00:15:17:ed:68:a4 > > > > > > > > vs > > > > > > > > > > > > em1: flags=8843 > > metric 0 mtu 1500 > > > > > > > > > > > options=219b > > > > ether 00:15:17:ed:68:a4 > > > > > > > > > Another hang last night :( > > > > > > Whats really strange is that the WOL_MAGIC and TSO4 got > > turned back on > > > somehow ? I had explicitly turned it off, but when the NIC > > was in its > > > bad state > > > > > > em1: flags=8843 > > metric 0 mtu 1500 > > > > > options=2198 > > > > > > ... its back on along with TSO? Not sure if its coincidence > > or a side > > > effect or what. For now, I have had to re-purpose this nic > > to something > > > else. > > > > > > debug info shows > > > > > > Jan 28 00:25:10 backup3 kernel: Interface is RUNNING and > > INACTIVE > > > Jan 28 00:25:10 backup3 kernel: em1: hw tdh = 625, hw tdt = > > 625 > > > Jan 28 00:25:10 backup3 kernel: em1: hw rdh = 903, hw rdt = > > 903 > > > Jan 28 00:25:10 backup3 kernel: em1: Tx Queue Status = 0 > > > Jan 28 00:25:10 backup3 kernel: em1: TX descriptors avail = > > 1024 > > > Jan 28 00:25:10 backup3 kernel: em1: Tx Descriptors avail > > failure = 0 > > > Jan 28 00:25:10 backup3 kernel: em1: RX discarded packets = > > 0 > > > Jan 28 00:25:10 backup3 kernel: em1: RX Next to Check = 903 > > > Jan 28 00:25:10 backup3 kernel: em1: RX Next to Refresh = > > 904 > > > Jan 28 00:25:27 backup3 kernel: em1: link state changed to > > DOWN > > > Jan 28 00:25:30 backup3 kernel: em1: link state changed to > > UP > > > > > > > > > ---Mike > > > > > > > > I'm trying to get some more testing done regarding my > > suggestions around > > the OACTIVE assertions in the driver. More or less, it looks > > like > > intense periods of activity can push the driver into the > > OACTIVE hold > > off state and the logic isn't quite right in igb(4) or em(4) > > to handle > > it. > > > > I suspect that something like this modification to igb(4) may > > be > > required for em(4). > > > > Comments? > > > > Sean > > > > > Does the logic I've implemented look sane? > > Sean > > From owner-freebsd-hardware@FreeBSD.ORG Tue Feb 1 20:55:16 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3556510656A5; Tue, 1 Feb 2011 20:55:16 +0000 (UTC) (envelope-from jfvogel@gmail.com) Received: from mail-yx0-f182.google.com (mail-yx0-f182.google.com [209.85.213.182]) by mx1.freebsd.org (Postfix) with ESMTP id B03178FC17; Tue, 1 Feb 2011 20:55:15 +0000 (UTC) Received: by yxh35 with SMTP id 35so2830985yxh.13 for ; Tue, 01 Feb 2011 12:55:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=oAGops7MoDv5bID3Yrt+NJoIzOya8mkoRBsMwPRph48=; b=YDvI+peJTwSu73wClxmjuUNalas2e4QAbFI96i7Pu7xuyVhl7fnif6nkfOC3upgGsi YJJ64VYAYy7HI211lVl37p6mAL/ZmO8dWDpAPWLFvH5r267GwVsM0YXNUiKNp/EoZ54A qFWfEFfnDnT4maAQh83+KRX9f5fMxd37KaCfg= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=Dl8ODc21LjLSHp++3TyQE3wyTR7IKMAJq0LyBXMnRg0b+QG+vt6yudZ6hb819d8uX2 g0d9hJIQkMP3qapcnDhL9wjvL4AFRAETnZzCrX8yooFsevnBBE872gj6/w8dCUjLhYEF 5GWUQAH4Gz8fD67Fg2IYZ94cWYOoujQx9fkfk= MIME-Version: 1.0 Received: by 10.150.228.20 with SMTP id a20mr6519178ybh.22.1296593705719; Tue, 01 Feb 2011 12:55:05 -0800 (PST) Received: by 10.147.171.17 with HTTP; Tue, 1 Feb 2011 12:55:05 -0800 (PST) In-Reply-To: References: <1290533941.3173.50.camel@home-yahoo> <4CEC0548.1080801@sentex.net> <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> <1296591565.2326.7.camel@hitfishpass-lx.corp.yahoo.com> Date: Tue, 1 Feb 2011 12:55:05 -0800 Message-ID: From: Jack Vogel To: Sean Bruno Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: "freebsd-net@freebsd.org" , "freebsd-hardware@freebsd.org" , Ivan Voras , Jan Koum , Mike Tancsa Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Feb 2011 20:55:16 -0000 Mike, just to remind me, are you running these 82574 adapters with MSIX ? Jack On Tue, Feb 1, 2011 at 12:37 PM, Jack Vogel wrote: > Looks good, except I don't like code #if 0'd out, I'll make an if_em.c to > try and > send it shortly. > > Jack > > > > On Tue, Feb 1, 2011 at 12:19 PM, Sean Bruno wrote: > >> On Tue, 2011-02-01 at 12:05 -0800, Jack Vogel wrote: >> > At this point I'm open to any ideas, this sounds like a good one Sean, >> > thanks. >> > Mike, you want to test this ? >> > >> > Jack >> > >> > >> > On Tue, Feb 1, 2011 at 11:56 AM, Sean Bruno >> > wrote: >> > >> > On Fri, 2011-01-28 at 08:10 -0800, Mike Tancsa wrote: >> > > On 1/23/2011 10:21 AM, Mike Tancsa wrote: >> > > > On 1/21/2011 4:21 AM, Jan Koum wrote: >> > > > One other thing I noticed is that when the nic is in its >> > hung state, the >> > > > WOL option is gone ? >> > > > >> > > > e.g >> > > > >> > > > em1: flags=8843 >> > metric 0 mtu 1500 >> > > > >> > >> options=19b >> > > > ether 00:15:17:ed:68:a4 >> > > > >> > > > vs >> > > > >> > > > >> > > > em1: flags=8843 >> > metric 0 mtu 1500 >> > > > >> > > > >> > >> options=219b >> > > > ether 00:15:17:ed:68:a4 >> > > >> > > >> > > Another hang last night :( >> > > >> > > Whats really strange is that the WOL_MAGIC and TSO4 got >> > turned back on >> > > somehow ? I had explicitly turned it off, but when the NIC >> > was in its >> > > bad state >> > > >> > > em1: flags=8843 >> > metric 0 mtu 1500 >> > > >> > options=2198 >> > > >> > > ... its back on along with TSO? Not sure if its coincidence >> > or a side >> > > effect or what. For now, I have had to re-purpose this nic >> > to something >> > > else. >> > > >> > > debug info shows >> > > >> > > Jan 28 00:25:10 backup3 kernel: Interface is RUNNING and >> > INACTIVE >> > > Jan 28 00:25:10 backup3 kernel: em1: hw tdh = 625, hw tdt = >> > 625 >> > > Jan 28 00:25:10 backup3 kernel: em1: hw rdh = 903, hw rdt = >> > 903 >> > > Jan 28 00:25:10 backup3 kernel: em1: Tx Queue Status = 0 >> > > Jan 28 00:25:10 backup3 kernel: em1: TX descriptors avail = >> > 1024 >> > > Jan 28 00:25:10 backup3 kernel: em1: Tx Descriptors avail >> > failure = 0 >> > > Jan 28 00:25:10 backup3 kernel: em1: RX discarded packets = >> > 0 >> > > Jan 28 00:25:10 backup3 kernel: em1: RX Next to Check = 903 >> > > Jan 28 00:25:10 backup3 kernel: em1: RX Next to Refresh = >> > 904 >> > > Jan 28 00:25:27 backup3 kernel: em1: link state changed to >> > DOWN >> > > Jan 28 00:25:30 backup3 kernel: em1: link state changed to >> > UP >> > > >> > > >> > > ---Mike >> > >> > >> > >> > I'm trying to get some more testing done regarding my >> > suggestions around >> > the OACTIVE assertions in the driver. More or less, it looks >> > like >> > intense periods of activity can push the driver into the >> > OACTIVE hold >> > off state and the logic isn't quite right in igb(4) or em(4) >> > to handle >> > it. >> > >> > I suspect that something like this modification to igb(4) may >> > be >> > required for em(4). >> > >> > Comments? >> > >> > Sean >> > >> >> >> Does the logic I've implemented look sane? >> >> Sean >> >> > From owner-freebsd-hardware@FreeBSD.ORG Tue Feb 1 21:05:38 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id ADE3B106566C; Tue, 1 Feb 2011 21:05:38 +0000 (UTC) (envelope-from mike@sentex.net) Received: from smarthost1.sentex.ca (smarthost1-6.sentex.ca [IPv6:2607:f3e0:0:1::12]) by mx1.freebsd.org (Postfix) with ESMTP id 422E08FC14; Tue, 1 Feb 2011 21:05:38 +0000 (UTC) Received: from [IPv6:2607:f3e0:0:4:f025:8813:7603:7e4a] (saphire3.sentex.ca [IPv6:2607:f3e0:0:4:f025:8813:7603:7e4a]) by smarthost1.sentex.ca (8.14.4/8.14.4) with ESMTP id p11L5aW3091854 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Tue, 1 Feb 2011 16:05:36 -0500 (EST) (envelope-from mike@sentex.net) Message-ID: <4D48759A.1030704@sentex.net> Date: Tue, 01 Feb 2011 16:05:30 -0500 From: Mike Tancsa Organization: Sentex Communications User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101207 Thunderbird/3.1.7 MIME-Version: 1.0 To: Jack Vogel References: <1290533941.3173.50.camel@home-yahoo> <4CEC0548.1080801@sentex.net> <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> <1296591565.2326.7.camel@hitfishpass-lx.corp.yahoo.com> In-Reply-To: X-Enigmail-Version: 1.1.1 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.67 on IPv6:2607:f3e0:0:1::12 Cc: "freebsd-net@freebsd.org" , Ivan Voras , Sean Bruno , Jan Koum , "freebsd-hardware@freebsd.org" Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Feb 2011 21:05:38 -0000 On 2/1/2011 3:55 PM, Jack Vogel wrote: > Mike, just to remind me, are you running these 82574 adapters with MSIX ? Yes. Board is an Intel MB (S3420GPX). 8G RAM, AMD64. Kernel from a few days ago 0(backup3)# vmstat -i | grep em1 irq257: em1:rx 0 113712958 159 irq258: em1:tx 0 96623551 135 irq259: em1:link 488 0 0(backup3)# grep ^em1 /var/run/dmesg.boot em1: port 0x2000-0x201f mem 0xb4100000-0xb411ffff,0xb4120000-0xb4123fff irq 16 at device 0.0 on pci10 em1: Using MSIX interrupts with 3 vectors em1: [ITHREAD] em1: [ITHREAD] em1: [ITHREAD] em1: Ethernet address: 00:15:17:ed:68:a4 em1: link state changed to UP 0(backup3)# em1@pci0:10:0:0: class=0x020000 card=0x34ec8086 chip=0x10d38086 rev=0x00 hdr=0x00 vendor = 'Intel Corporation' device = 'Intel 82574L Gigabit Ethernet Controller (82574L)' class = network subclass = ethernet cap 01[c8] = powerspec 2 supports D0 D3 current D0 cap 05[d0] = MSI supports 1 message, 64 bit cap 10[e0] = PCI-Express 1 endpoint max data 128(256) link x1(x1) cap 11[a0] = MSI-X supports 5 messages in map 0x1c enabled ecap 0001[100] = AER 1 0 fatal 0 non-fatal 0 corrected ecap 0003[140] = Serial 1 001517ffffed68a4 ---Mike From owner-freebsd-hardware@FreeBSD.ORG Tue Feb 1 21:17:40 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id F317210656A6; Tue, 1 Feb 2011 21:17:39 +0000 (UTC) (envelope-from jfvogel@gmail.com) Received: from mail-yx0-f182.google.com (mail-yx0-f182.google.com [209.85.213.182]) by mx1.freebsd.org (Postfix) with ESMTP id 792518FC23; Tue, 1 Feb 2011 21:17:39 +0000 (UTC) Received: by yxh35 with SMTP id 35so2840396yxh.13 for ; Tue, 01 Feb 2011 13:17:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=kWVIaaS7Q4k0pys8ozovTVnC2K/xFc/vnEGe8D0FT64=; b=NAa3MuBDHsQN1asn6C7IgT7rsDAMDtXMWikyI9g8vWKVgJpzsdXnmRm1m85VEThRnG GSHgo9MeTCDnEjgCgNhSqK+bh07EjwcIzWRCQoJmx4U/T5FUo+ppwu5iSn3PhBpyPJDj 4Efz9clWokimb8hGqMHx8zCnaABHGgBl4yJaQ= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=gGBDcMNnsM92Ejci5ZSc7FuWpd6sijNQulzYYPQf57pDMy8GqvP1UIJG8AmPgp15YU kz7LbiANVy8N2sC4LTk0ZQrYnTo56PnJAH+cBEH8HGtL+kyGxyanfvaAjfx0Gwi9eYhf NgJi3n5sQUrgyhPZ8sTBeYJ1+jdl/WaOMeSAA= MIME-Version: 1.0 Received: by 10.236.95.140 with SMTP id p12mr16881104yhf.24.1296595058610; Tue, 01 Feb 2011 13:17:38 -0800 (PST) Received: by 10.147.171.17 with HTTP; Tue, 1 Feb 2011 13:17:38 -0800 (PST) In-Reply-To: <4D48759A.1030704@sentex.net> References: <1290533941.3173.50.camel@home-yahoo> <4CEC0548.1080801@sentex.net> <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> <1296591565.2326.7.camel@hitfishpass-lx.corp.yahoo.com> <4D48759A.1030704@sentex.net> Date: Tue, 1 Feb 2011 13:17:38 -0800 Message-ID: From: Jack Vogel To: Mike Tancsa Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: "freebsd-net@freebsd.org" , Ivan Voras , Sean Bruno , Jan Koum , "freebsd-hardware@freebsd.org" Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Feb 2011 21:17:40 -0000 But you aren't defining EM_MULTIQUEUE are you? (its not on by default) Jack On Tue, Feb 1, 2011 at 1:05 PM, Mike Tancsa wrote: > On 2/1/2011 3:55 PM, Jack Vogel wrote: > > Mike, just to remind me, are you running these 82574 adapters with MSIX ? > > Yes. Board is an Intel MB (S3420GPX). 8G RAM, AMD64. Kernel from a few > days ago > > > 0(backup3)# vmstat -i | grep em1 > irq257: em1:rx 0 113712958 159 > irq258: em1:tx 0 96623551 135 > irq259: em1:link 488 0 > 0(backup3)# grep ^em1 /var/run/dmesg.boot > em1: port 0x2000-0x201f mem > 0xb4100000-0xb411ffff,0xb4120000-0xb4123fff irq 16 at device 0.0 on pci10 > em1: Using MSIX interrupts with 3 vectors > em1: [ITHREAD] > em1: [ITHREAD] > em1: [ITHREAD] > em1: Ethernet address: 00:15:17:ed:68:a4 > em1: link state changed to UP > 0(backup3)# > em1@pci0:10:0:0: class=0x020000 card=0x34ec8086 chip=0x10d38086 > rev=0x00 hdr=0x00 > vendor = 'Intel Corporation' > device = 'Intel 82574L Gigabit Ethernet Controller (82574L)' > class = network > subclass = ethernet > cap 01[c8] = powerspec 2 supports D0 D3 current D0 > cap 05[d0] = MSI supports 1 message, 64 bit > cap 10[e0] = PCI-Express 1 endpoint max data 128(256) link x1(x1) > cap 11[a0] = MSI-X supports 5 messages in map 0x1c enabled > ecap 0001[100] = AER 1 0 fatal 0 non-fatal 0 corrected > ecap 0003[140] = Serial 1 001517ffffed68a4 > > ---Mike > From owner-freebsd-hardware@FreeBSD.ORG Tue Feb 1 21:36:35 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A99AC10656B4; Tue, 1 Feb 2011 21:36:35 +0000 (UTC) (envelope-from mike@sentex.net) Received: from smarthost1.sentex.ca (smarthost1-6.sentex.ca [IPv6:2607:f3e0:0:1::12]) by mx1.freebsd.org (Postfix) with ESMTP id 3B8608FC1B; Tue, 1 Feb 2011 21:36:35 +0000 (UTC) Received: from [IPv6:2607:f3e0:0:4:f025:8813:7603:7e4a] (saphire3.sentex.ca [IPv6:2607:f3e0:0:4:f025:8813:7603:7e4a]) by smarthost1.sentex.ca (8.14.4/8.14.4) with ESMTP id p11LaWpK098399 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Tue, 1 Feb 2011 16:36:33 -0500 (EST) (envelope-from mike@sentex.net) Message-ID: <4D487CDB.5080603@sentex.net> Date: Tue, 01 Feb 2011 16:36:27 -0500 From: Mike Tancsa Organization: Sentex Communications User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101207 Thunderbird/3.1.7 MIME-Version: 1.0 To: Jack Vogel References: <1290533941.3173.50.camel@home-yahoo> <4CEC0548.1080801@sentex.net> <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> <1296591565.2326.7.camel@hitfishpass-lx.corp.yahoo.com> <4D48759A.1030704@sentex.net> In-Reply-To: X-Enigmail-Version: 1.1.1 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.67 on IPv6:2607:f3e0:0:1::12 Cc: "freebsd-net@freebsd.org" , Ivan Voras , Sean Bruno , Jan Koum , "freebsd-hardware@freebsd.org" Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Feb 2011 21:36:35 -0000 On 2/1/2011 4:17 PM, Jack Vogel wrote: > But you aren't defining EM_MULTIQUEUE are you? (its not on by default) Nope. Everything is the default wrt to the em driver. Nothing odd in loader.conf 0(backup3)% grep -v ^# /boot/loader.conf ahci_load="YES" siis_load="YES" if_em_load="YES" coretemp_load="YES" comconsole_speed="115200" # Set the current serial console speed console="comconsole,vidconsole" # A comma separated list of console(s) aesni_load="YES" cryptodev_load="YES" ---Mike From owner-freebsd-hardware@FreeBSD.ORG Tue Feb 1 21:51:44 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BEFB21065695; Tue, 1 Feb 2011 21:51:44 +0000 (UTC) (envelope-from mike@sentex.net) Received: from smarthost1.sentex.ca (smarthost1-6.sentex.ca [IPv6:2607:f3e0:0:1::12]) by mx1.freebsd.org (Postfix) with ESMTP id 6CDF68FC22; Tue, 1 Feb 2011 21:51:44 +0000 (UTC) Received: from [IPv6:2607:f3e0:0:4:f025:8813:7603:7e4a] (saphire3.sentex.ca [IPv6:2607:f3e0:0:4:f025:8813:7603:7e4a]) by smarthost1.sentex.ca (8.14.4/8.14.4) with ESMTP id p11LpgoD002574 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Tue, 1 Feb 2011 16:51:42 -0500 (EST) (envelope-from mike@sentex.net) Message-ID: <4D488069.7050301@sentex.net> Date: Tue, 01 Feb 2011 16:51:37 -0500 From: Mike Tancsa Organization: Sentex Communications User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101207 Thunderbird/3.1.7 MIME-Version: 1.0 To: Jack Vogel References: <1290533941.3173.50.camel@home-yahoo> <4CEC0548.1080801@sentex.net> <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> <1296591565.2326.7.camel@hitfishpass-lx.corp.yahoo.com> In-Reply-To: X-Enigmail-Version: 1.1.1 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.67 on IPv6:2607:f3e0:0:1::12 Cc: "freebsd-net@freebsd.org" , Ivan Voras , Sean Bruno , Jan Koum , "freebsd-hardware@freebsd.org" Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Feb 2011 21:51:44 -0000 On 2/1/2011 4:43 PM, Jack Vogel wrote: > To those who are going to test, here is the if_em.c, based on head, with my > changes, I have to leave for the afternoon, and have not had a chance to > build > this, but it should work. I will check back in the later evening. > > Any blatant problems Sean, feel free to fix them :) My boxes are RELENG_7 and RELENG_8. Apart from manually hand editing those pesky sysctl changes out, is there a better way to generate RELENG_8 and 7 diffs ? ---Mike From owner-freebsd-hardware@FreeBSD.ORG Tue Feb 1 22:04:26 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8602E106566B; Tue, 1 Feb 2011 22:04:26 +0000 (UTC) (envelope-from seanbru@yahoo-inc.com) Received: from mrout1-b.corp.re1.yahoo.com (mrout1-b.corp.re1.yahoo.com [69.147.107.20]) by mx1.freebsd.org (Postfix) with ESMTP id 32CEF8FC0A; Tue, 1 Feb 2011 22:04:25 +0000 (UTC) Received: from [127.0.0.1] (rideseveral.corp.yahoo.com [10.73.160.231]) by mrout1-b.corp.re1.yahoo.com (8.14.4/8.14.4/y.out) with ESMTP id p11M3lCl058130; Tue, 1 Feb 2011 14:03:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=yahoo-inc.com; s=cobra; t=1296597828; bh=HVxtNRXvELUI7evCZkOlsk8CQ0yuVmL8huppodBysyg=; h=Subject:From:To:Cc:In-Reply-To:References:Content-Type:Date: Message-ID:Mime-Version:Content-Transfer-Encoding; b=rnViGl4M+4u35KP+ze0jSxjlCcgQI58VrkyPpMTIVc+BeSQUCDeh5CcZBFMSOEflJ 61JQDS0+MJnhLux3IHLfE5XrLJtYl4Lrw7LvI+ElyRuRm5kiGGYe1D3MoFSchqXGfn yAMa287rjySK5Q1LSnkhyJVQ02k1Tnr30yMXVkdg= From: Sean Bruno To: Jack Vogel In-Reply-To: References: <1290533941.3173.50.camel@home-yahoo> <4CEC0548.1080801@sentex.net> <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> <1296591565.2326.7.camel@hitfishpass-lx.corp.yahoo.com> Content-Type: text/plain; charset="UTF-8" Date: Tue, 01 Feb 2011 14:03:47 -0800 Message-ID: <1296597827.2326.12.camel@hitfishpass-lx.corp.yahoo.com> Mime-Version: 1.0 X-Mailer: Evolution 2.32.1 (2.32.1-1.fc14) Content-Transfer-Encoding: 7bit Cc: "freebsd-net@freebsd.org" , "freebsd-hardware@freebsd.org" , Ivan Voras , Jan Koum , Mike Tancsa Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Feb 2011 22:04:26 -0000 On Tue, 2011-02-01 at 13:43 -0800, Jack Vogel wrote: > To those who are going to test, here is the if_em.c, based on head, > with my > changes, I have to leave for the afternoon, and have not had a chance > to build > this, but it should work. I will check back in the later evening. > > Any blatant problems Sean, feel free to fix them :) > > Jack > I suspect that line 1490 should be: if (more_rx || (ifp->if_drv_flags & IFF_DRV_OACTIVE)) { Sean From owner-freebsd-hardware@FreeBSD.ORG Tue Feb 1 22:05:29 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EA3581065672; Tue, 1 Feb 2011 22:05:29 +0000 (UTC) (envelope-from seanbru@yahoo-inc.com) Received: from mrout1-b.corp.re1.yahoo.com (mrout1-b.corp.re1.yahoo.com [69.147.107.20]) by mx1.freebsd.org (Postfix) with ESMTP id 9ACAB8FC14; Tue, 1 Feb 2011 22:05:29 +0000 (UTC) Received: from [127.0.0.1] (rideseveral.corp.yahoo.com [10.73.160.231]) by mrout1-b.corp.re1.yahoo.com (8.14.4/8.14.4/y.out) with ESMTP id p11M4JN1058307; Tue, 1 Feb 2011 14:04:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=yahoo-inc.com; s=cobra; t=1296597859; bh=UdVkIxLEp/gkE6I9jRmEju6KppgC4e4E7ac7KhzI1hI=; h=Subject:From:To:Cc:In-Reply-To:References:Content-Type:Date: Message-ID:Mime-Version:Content-Transfer-Encoding; b=J3ooGKGjpIZU4aQZBWyQVZHOXccJtAQ+JCF4Xb0FwZk27Rky12Icw1MldGUY6t6Oc zgrEtOWN0rmWz3d2ti+JHMKTGlnc1xuDq2QOVWf+53ivLw+nXqZicY3OvW2I9ESJDZ rFkXp8XyvBRsqbm3OZfk2YyCXmM1cBDVHS7AC4Xg= From: Sean Bruno To: Mike Tancsa In-Reply-To: <4D488069.7050301@sentex.net> References: <1290533941.3173.50.camel@home-yahoo> <4CEC0548.1080801@sentex.net> <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> <1296591565.2326.7.camel@hitfishpass-lx.corp.yahoo.com> <4D488069.7050301@sentex.net> Content-Type: text/plain; charset="UTF-8" Date: Tue, 01 Feb 2011 14:04:18 -0800 Message-ID: <1296597858.2326.13.camel@hitfishpass-lx.corp.yahoo.com> Mime-Version: 1.0 X-Mailer: Evolution 2.32.1 (2.32.1-1.fc14) Content-Transfer-Encoding: 7bit Cc: "freebsd-net@freebsd.org" , Ivan Voras , Jack Vogel , Jan Koum , "freebsd-hardware@freebsd.org" Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Feb 2011 22:05:30 -0000 On Tue, 2011-02-01 at 13:51 -0800, Mike Tancsa wrote: > On 2/1/2011 4:43 PM, Jack Vogel wrote: > > To those who are going to test, here is the if_em.c, based on head, with my > > changes, I have to leave for the afternoon, and have not had a chance to > > build > > this, but it should work. I will check back in the later evening. > > > > Any blatant problems Sean, feel free to fix them :) > > My boxes are RELENG_7 and RELENG_8. Apart from manually hand editing > those pesky sysctl changes out, is there a better way to generate > RELENG_8 and 7 diffs ? > > ---Mike Not at the moment. sean From owner-freebsd-hardware@FreeBSD.ORG Wed Feb 2 01:28:44 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5B44D106566C; Wed, 2 Feb 2011 01:28:44 +0000 (UTC) (envelope-from chris@vorota.cabstand.com) Received: from vorota.cabstand.com (vorota.cabstand.com [174.36.194.55]) by mx1.freebsd.org (Postfix) with ESMTP id DE5648FC08; Wed, 2 Feb 2011 01:28:43 +0000 (UTC) Received: from vorota.cabstand.com (localhost [127.0.0.1]) by vorota.cabstand.com (8.14.4/8.14.4) with ESMTP id p120v1PL078127 (version=TLSv1/SSLv3 cipher=DHE-DSS-AES256-SHA bits=256 verify=NO); Tue, 1 Feb 2011 16:57:01 -0800 (PST) (envelope-from chris@vorota.cabstand.com) Received: (from chris@localhost) by vorota.cabstand.com (8.14.4/8.14.4/Submit) id p120uuAe078126; Tue, 1 Feb 2011 16:56:56 -0800 (PST) (envelope-from chris) Date: Tue, 1 Feb 2011 16:56:56 -0800 From: Chris Peiffer To: Mike Tancsa Message-ID: <20110202005656.GB76219@cabstand.com> Mail-Followup-To: Mike Tancsa , Jack Vogel , "freebsd-net@freebsd.org" , Ivan Voras , Sean Bruno , Jan Koum , "freebsd-hardware@freebsd.org" References: <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> <1296591565.2326.7.camel@hitfishpass-lx.corp.yahoo.com> <4D488069.7050301@sentex.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4D488069.7050301@sentex.net> User-Agent: Mutt/1.4.2.3i Cc: "freebsd-net@freebsd.org" , Jan Koum , Jack Vogel , "freebsd-hardware@freebsd.org" , Sean Bruno , Ivan Voras Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 02 Feb 2011 01:28:44 -0000 On Tue, Feb 01, 2011 at 04:51:37PM -0500, Mike Tancsa wrote: > On 2/1/2011 4:43 PM, Jack Vogel wrote: > > To those who are going to test, here is the if_em.c, based on head, with my > > changes, I have to leave for the afternoon, and have not had a chance to > > build > > this, but it should work. I will check back in the later evening. > > Did this get sent to the list? I didn't get this quoted message and I can't find it in the archives. If someone could post the current revision of if_em.c that would be great; we are also very eager to test. Thanks. From owner-freebsd-hardware@FreeBSD.ORG Wed Feb 2 01:44:49 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0A5AD1065694; Wed, 2 Feb 2011 01:44:49 +0000 (UTC) (envelope-from mike@sentex.net) Received: from smarthost1.sentex.ca (smarthost1-6.sentex.ca [IPv6:2607:f3e0:0:1::12]) by mx1.freebsd.org (Postfix) with ESMTP id B00678FC19; Wed, 2 Feb 2011 01:44:48 +0000 (UTC) Received: from [IPv6:2607:f3e0:0:4:f025:8813:7603:7e4a] (saphire3.sentex.ca [IPv6:2607:f3e0:0:4:f025:8813:7603:7e4a]) by smarthost1.sentex.ca (8.14.4/8.14.4) with ESMTP id p121iiXn033159 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Tue, 1 Feb 2011 20:44:44 -0500 (EST) (envelope-from mike@sentex.net) Message-ID: <4D48B706.2090305@sentex.net> Date: Tue, 01 Feb 2011 20:44:38 -0500 From: Mike Tancsa Organization: Sentex Communications User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101207 Thunderbird/3.1.7 MIME-Version: 1.0 To: Jack Vogel , "freebsd-net@freebsd.org" , Ivan Voras , Sean Bruno , Jan Koum , "freebsd-hardware@freebsd.org" References: <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> <1296591565.2326.7.camel@hitfishpass-lx.corp.yahoo.com> <4D488069.7050301@sentex.net> <20110202005656.GB76219@cabstand.com> In-Reply-To: <20110202005656.GB76219@cabstand.com> X-Enigmail-Version: 1.1.1 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.67 on IPv6:2607:f3e0:0:1::12 Cc: Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 02 Feb 2011 01:44:49 -0000 On 2/1/2011 7:56 PM, Chris Peiffer wrote: > > Did this get sent to the list? I didn't get this quoted message and I > can't find it in the archives. > > If someone could post the current revision of if_em.c that would be > great; we are also very eager to test. > Strange, it seems to be eaten/held by mailman ? I posted the file to http://www.tancsa.com/if_em.c % md5 if_em.c MD5 (if_em.c) = 0f2d48c7734496c2262f468cd1ab9117 % ident if_em.c if_em.c: $FreeBSD: src/sys/dev/e1000/if_em.c,v 1.68 2011/01/19 18:20:11 jfv Exp $ ---Mike -- ------------------- Mike Tancsa, tel +1 519 651 3400 Sentex Communications, mike@sentex.net Providing Internet services since 1994 www.sentex.net Cambridge, Ontario Canada http://www.tancsa.com/ From owner-freebsd-hardware@FreeBSD.ORG Wed Feb 2 02:14:19 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DCBEB1065675; Wed, 2 Feb 2011 02:14:19 +0000 (UTC) (envelope-from mike@sentex.net) Received: from smarthost1.sentex.ca (smarthost1-6.sentex.ca [IPv6:2607:f3e0:0:1::12]) by mx1.freebsd.org (Postfix) with ESMTP id 8E0258FC12; Wed, 2 Feb 2011 02:14:19 +0000 (UTC) Received: from [IPv6:2607:f3e0:0:4:f025:8813:7603:7e4a] (saphire3.sentex.ca [IPv6:2607:f3e0:0:4:f025:8813:7603:7e4a]) by smarthost1.sentex.ca (8.14.4/8.14.4) with ESMTP id p122EHt2036801 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Tue, 1 Feb 2011 21:14:17 -0500 (EST) (envelope-from mike@sentex.net) Message-ID: <4D48BDF3.4000102@sentex.net> Date: Tue, 01 Feb 2011 21:14:11 -0500 From: Mike Tancsa Organization: Sentex Communications User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101207 Thunderbird/3.1.7 MIME-Version: 1.0 To: Jack Vogel , "freebsd-net@freebsd.org" , Ivan Voras , Sean Bruno , Jan Koum , "freebsd-hardware@freebsd.org" References: <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> <1296591565.2326.7.camel@hitfishpass-lx.corp.yahoo.com> <4D488069.7050301@sentex.net> <20110202005656.GB76219@cabstand.com> <4D48B706.2090305@sentex.net> In-Reply-To: <4D48B706.2090305@sentex.net> X-Enigmail-Version: 1.1.1 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.67 on IPv6:2607:f3e0:0:1::12 Cc: Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 02 Feb 2011 02:14:20 -0000 On 2/1/2011 8:44 PM, Mike Tancsa wrote: > > % md5 if_em.c > MD5 (if_em.c) = 0f2d48c7734496c2262f468cd1ab9117 Sorry, thats MD5 (if_em.c) = 9cede4ab0d833e0f97172ed715e2b4e3 ---Mike -- ------------------- Mike Tancsa, tel +1 519 651 3400 Sentex Communications, mike@sentex.net Providing Internet services since 1994 www.sentex.net Cambridge, Ontario Canada http://www.tancsa.com/ From owner-freebsd-hardware@FreeBSD.ORG Wed Feb 2 03:03:24 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C728B106566B; Wed, 2 Feb 2011 03:03:24 +0000 (UTC) (envelope-from mike@sentex.net) Received: from smarthost1.sentex.ca (smarthost1-6.sentex.ca [IPv6:2607:f3e0:0:1::12]) by mx1.freebsd.org (Postfix) with ESMTP id 62BEE8FC15; Wed, 2 Feb 2011 03:03:24 +0000 (UTC) Received: from [IPv6:2607:f3e0:0:4:f025:8813:7603:7e4a] (saphire3.sentex.ca [IPv6:2607:f3e0:0:4:f025:8813:7603:7e4a]) by smarthost1.sentex.ca (8.14.4/8.14.4) with ESMTP id p1233LO9042205 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Tue, 1 Feb 2011 22:03:21 -0500 (EST) (envelope-from mike@sentex.net) Message-ID: <4D48C973.7080503@sentex.net> Date: Tue, 01 Feb 2011 22:03:15 -0500 From: Mike Tancsa Organization: Sentex Communications User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101207 Thunderbird/3.1.7 MIME-Version: 1.0 To: Sean Bruno References: <1290533941.3173.50.camel@home-yahoo> <4CEC0548.1080801@sentex.net> <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> <1296591565.2326.7.camel@hitfishpass-lx.corp.yahoo.com> <1296597827.2326.12.camel@hitfishpass-lx.corp.yahoo.com> In-Reply-To: <1296597827.2326.12.camel@hitfishpass-lx.corp.yahoo.com> X-Enigmail-Version: 1.1.1 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.67 on IPv6:2607:f3e0:0:1::12 Cc: "freebsd-net@freebsd.org" , Ivan Voras , Jack Vogel , Jan Koum , "freebsd-hardware@freebsd.org" Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 02 Feb 2011 03:03:24 -0000 On 2/1/2011 5:03 PM, Sean Bruno wrote: > On Tue, 2011-02-01 at 13:43 -0800, Jack Vogel wrote: >> To those who are going to test, here is the if_em.c, based on head, >> with my >> changes, I have to leave for the afternoon, and have not had a chance >> to build >> this, but it should work. I will check back in the later evening. >> >> Any blatant problems Sean, feel free to fix them :) >> >> Jack >> > > > I suspect that line 1490 should be: > if (more_rx || (ifp->if_drv_flags & IFF_DRV_OACTIVE)) { > I have hacked up a RELENG_8 version which I think is correct including the above change http://www.tancsa.com/if_em-8.c --- if_em.c.orig 2011-02-01 21:47:14.000000000 -0500 +++ if_em.c 2011-02-01 21:47:19.000000000 -0500 @@ -30,7 +30,7 @@ POSSIBILITY OF SUCH DAMAGE. ******************************************************************************/ -/*$FreeBSD: src/sys/dev/e1000/if_em.c,v 1.21.2.20 2011/01/22 01:37:53 jfv Exp $*/ +/*$FreeBSD$*/ #ifdef HAVE_KERNEL_OPTION_HEADERS #include "opt_device_polling.h" @@ -93,7 +93,7 @@ /********************************************************************* * Driver version: *********************************************************************/ -char em_driver_version[] = "7.1.9"; +char em_driver_version[] = "7.1.9-test"; /********************************************************************* * PCI Device ID Table @@ -927,11 +927,10 @@ if (!adapter->link_active) return; - /* Call cleanup if number of TX descriptors low */ - if (txr->tx_avail <= EM_TX_CLEANUP_THRESHOLD) - em_txeof(txr); - while (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) { + /* First cleanup if TX descriptors low */ + if (txr->tx_avail <= EM_TX_CLEANUP_THRESHOLD) + em_txeof(txr); if (txr->tx_avail < EM_MAX_SCATTER) { ifp->if_drv_flags |= IFF_DRV_OACTIVE; break; @@ -1411,8 +1410,7 @@ if (!drbr_empty(ifp, txr->br)) em_mq_start_locked(ifp, txr, NULL); #else - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) - em_start_locked(ifp, txr); + em_start_locked(ifp, txr); #endif EM_TX_UNLOCK(txr); @@ -1475,11 +1473,10 @@ struct ifnet *ifp = adapter->ifp; struct tx_ring *txr = adapter->tx_rings; struct rx_ring *rxr = adapter->rx_rings; - bool more; - if (ifp->if_drv_flags & IFF_DRV_RUNNING) { - more = em_rxeof(rxr, adapter->rx_process_limit, NULL); + bool more_rx; + more_rx = em_rxeof(rxr, adapter->rx_process_limit, NULL); EM_TX_LOCK(txr); em_txeof(txr); @@ -1487,12 +1484,10 @@ if (!drbr_empty(ifp, txr->br)) em_mq_start_locked(ifp, txr, NULL); #else - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) - em_start_locked(ifp, txr); + em_start_locked(ifp, txr); #endif - em_txeof(txr); EM_TX_UNLOCK(txr); - if (more) { + if (more_rx || (ifp->if_drv_flags & IFF_DRV_OACTIVE)) { taskqueue_enqueue(adapter->tq, &adapter->que_task); return; } @@ -1604,7 +1599,6 @@ if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) em_start_locked(ifp, txr); #endif - em_txeof(txr); E1000_WRITE_REG(&adapter->hw, E1000_IMS, txr->ims); EM_TX_UNLOCK(txr); } @@ -3730,17 +3724,17 @@ txr->queue_status = EM_QUEUE_HUNG; /* - * If we have enough room, clear IFF_DRV_OACTIVE + * If we have a minimum free, clear IFF_DRV_OACTIVE * to tell the stack that it is OK to send packets. */ - if (txr->tx_avail > EM_TX_CLEANUP_THRESHOLD) { + if (txr->tx_avail > EM_MAX_SCATTER) ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; - /* Disable watchdog if all clean */ - if (txr->tx_avail == adapter->num_tx_desc) { - txr->queue_status = EM_QUEUE_IDLE; - return (FALSE); - } - } + + /* Disable watchdog if all clean */ + if (txr->tx_avail == adapter->num_tx_desc) { + txr->queue_status = EM_QUEUE_IDLE; + return (FALSE); + } return (TRUE); } @@ -5064,8 +5058,8 @@ char namebuf[QUEUE_NAME_LEN]; /* Driver Statistics */ - SYSCTL_ADD_UINT(ctx, child, OID_AUTO, "link_irq", - CTLFLAG_RD, &adapter->link_irq, 0, + SYSCTL_ADD_UINT(ctx, child, OID_AUTO, "link_irq", + CTLFLAG_RD, &adapter->link_irq,0, "Link MSIX IRQ Handled"); SYSCTL_ADD_ULONG(ctx, child, OID_AUTO, "mbuf_alloc_fail", CTLFLAG_RD, &adapter->mbuf_alloc_failed, @@ -5108,11 +5102,13 @@ queue_list = SYSCTL_CHILDREN(queue_node); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "txd_head", - CTLFLAG_RD, adapter, E1000_TDH(txr->me), + CTLFLAG_RD, adapter, + E1000_TDH(txr->me), em_sysctl_reg_handler, "IU", "Transmit Descriptor Head"); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "txd_tail", - CTLFLAG_RD, adapter, E1000_TDT(txr->me), + CTLFLAG_RD, adapter, + E1000_TDT(txr->me), em_sysctl_reg_handler, "IU", "Transmit Descriptor Tail"); SYSCTL_ADD_ULONG(ctx, queue_list, OID_AUTO, "tx_irq", @@ -5123,11 +5119,13 @@ "Queue No Descriptor Available"); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "rxd_head", - CTLFLAG_RD, adapter, E1000_RDH(rxr->me), + CTLFLAG_RD, adapter, + E1000_RDH(rxr->me), em_sysctl_reg_handler, "IU", "Receive Descriptor Head"); SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "rxd_tail", - CTLFLAG_RD, adapter, E1000_RDT(rxr->me), + CTLFLAG_RD, adapter, + E1000_RDT(rxr->me), em_sysctl_reg_handler, "IU", "Receive Descriptor Tail"); SYSCTL_ADD_ULONG(ctx, queue_list, OID_AUTO, "rx_irq", @@ -5141,19 +5139,19 @@ CTLFLAG_RD, NULL, "Statistics"); stat_list = SYSCTL_CHILDREN(stat_node); - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "excess_coll", + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "excess_coll", CTLFLAG_RD, &stats->ecol, "Excessive collisions"); - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "single_coll", + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "single_coll", CTLFLAG_RD, &stats->scc, "Single collisions"); - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "multiple_coll", + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "multiple_coll", CTLFLAG_RD, &stats->mcc, "Multiple collisions"); - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "late_coll", + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "late_coll", CTLFLAG_RD, &stats->latecol, "Late collisions"); - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "collision_count", + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "collision_count", CTLFLAG_RD, &stats->colc, "Collision Count"); SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "symbol_errors", @@ -5240,12 +5238,12 @@ SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "rx_frames_1024_1522", CTLFLAG_RD, &adapter->stats.prc1522, "1023-1522 byte frames received"); - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "good_octets_recvd", + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "good_octets_recvd", CTLFLAG_RD, &adapter->stats.gorc, "Good Octets Received"); /* Packet Transmission Stats */ - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "good_octets_txd", + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "good_octets_txd", CTLFLAG_RD, &adapter->stats.gotc, "Good Octets Transmitted"); SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "total_pkts_txd", -- ------------------- Mike Tancsa, tel +1 519 651 3400 Sentex Communications, mike@sentex.net Providing Internet services since 1994 www.sentex.net Cambridge, Ontario Canada http://www.tancsa.com/ From owner-freebsd-hardware@FreeBSD.ORG Tue Feb 1 21:43:59 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0AD421065696; Tue, 1 Feb 2011 21:43:59 +0000 (UTC) (envelope-from jfvogel@gmail.com) Received: from mail-yw0-f54.google.com (mail-yw0-f54.google.com [209.85.213.54]) by mx1.freebsd.org (Postfix) with ESMTP id 2CFAB8FC17; Tue, 1 Feb 2011 21:43:58 +0000 (UTC) Received: by ywp6 with SMTP id 6so2857205ywp.13 for ; Tue, 01 Feb 2011 13:43:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=0+Hq/tHMUWsidQ5/7U7H66rJj6c/S8697deFwQxCdUI=; b=TKfrQr3lptDQV8SAvqaOKn2Z4NPvvYjQAczIDB81V200ItKwksdbik7oK7TEN3DczY aLDIhpxQdlYLFoikDwQW+zw8DtYvjb7eFjJCIbBFkPiLIuRjgFbfYpldqaABXuxRt6kr xFqnyI9rGIDVVZcYl6mGAjSm8CdHFZdUoUpv8= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=k+Xp4qZI+MeSbUKZVh2o9TYhXhV0AJhhnVSEcxHScYUmVzrimf9yQRFGwn6c22TlGG a4DPumwrBIwx/qP9SXh3NvYkxpnAIjIbp/1/u96flnwub734FyPwAL9aamockwLU0BMa soKsZdh3dkNuKAr7+nQmMUoDGlvqi+t2LqpcQ= MIME-Version: 1.0 Received: by 10.151.8.9 with SMTP id l9mr10326940ybi.79.1296596637310; Tue, 01 Feb 2011 13:43:57 -0800 (PST) Received: by 10.147.171.17 with HTTP; Tue, 1 Feb 2011 13:43:57 -0800 (PST) In-Reply-To: References: <1290533941.3173.50.camel@home-yahoo> <4CEC0548.1080801@sentex.net> <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> <1296591565.2326.7.camel@hitfishpass-lx.corp.yahoo.com> Date: Tue, 1 Feb 2011 13:43:57 -0800 Message-ID: From: Jack Vogel To: Sean Bruno Content-Type: multipart/mixed; boundary=000e0cd4038cfbdee9049b3f6d45 X-Mailman-Approved-At: Wed, 02 Feb 2011 04:35:59 +0000 X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: "freebsd-net@freebsd.org" , "freebsd-hardware@freebsd.org" , Ivan Voras , Jan Koum , Mike Tancsa Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Feb 2011 21:43:59 -0000 --000e0cd4038cfbdee9049b3f6d45 Content-Type: text/plain; charset=ISO-8859-1 To those who are going to test, here is the if_em.c, based on head, with my changes, I have to leave for the afternoon, and have not had a chance to build this, but it should work. I will check back in the later evening. Any blatant problems Sean, feel free to fix them :) Jack On Tue, Feb 1, 2011 at 12:37 PM, Jack Vogel wrote: > Looks good, except I don't like code #if 0'd out, I'll make an if_em.c to > try and > send it shortly. > > Jack > > > > On Tue, Feb 1, 2011 at 12:19 PM, Sean Bruno wrote: > >> On Tue, 2011-02-01 at 12:05 -0800, Jack Vogel wrote: >> > At this point I'm open to any ideas, this sounds like a good one Sean, >> > thanks. >> > Mike, you want to test this ? >> > >> > Jack >> > >> > >> > On Tue, Feb 1, 2011 at 11:56 AM, Sean Bruno >> > wrote: >> > >> > On Fri, 2011-01-28 at 08:10 -0800, Mike Tancsa wrote: >> > > On 1/23/2011 10:21 AM, Mike Tancsa wrote: >> > > > On 1/21/2011 4:21 AM, Jan Koum wrote: >> > > > One other thing I noticed is that when the nic is in its >> > hung state, the >> > > > WOL option is gone ? >> > > > >> > > > e.g >> > > > >> > > > em1: flags=8843 >> > metric 0 mtu 1500 >> > > > >> > >> options=19b >> > > > ether 00:15:17:ed:68:a4 >> > > > >> > > > vs >> > > > >> > > > >> > > > em1: flags=8843 >> > metric 0 mtu 1500 >> > > > >> > > > >> > >> options=219b >> > > > ether 00:15:17:ed:68:a4 >> > > >> > > >> > > Another hang last night :( >> > > >> > > Whats really strange is that the WOL_MAGIC and TSO4 got >> > turned back on >> > > somehow ? I had explicitly turned it off, but when the NIC >> > was in its >> > > bad state >> > > >> > > em1: flags=8843 >> > metric 0 mtu 1500 >> > > >> > options=2198 >> > > >> > > ... its back on along with TSO? Not sure if its coincidence >> > or a side >> > > effect or what. For now, I have had to re-purpose this nic >> > to something >> > > else. >> > > >> > > debug info shows >> > > >> > > Jan 28 00:25:10 backup3 kernel: Interface is RUNNING and >> > INACTIVE >> > > Jan 28 00:25:10 backup3 kernel: em1: hw tdh = 625, hw tdt = >> > 625 >> > > Jan 28 00:25:10 backup3 kernel: em1: hw rdh = 903, hw rdt = >> > 903 >> > > Jan 28 00:25:10 backup3 kernel: em1: Tx Queue Status = 0 >> > > Jan 28 00:25:10 backup3 kernel: em1: TX descriptors avail = >> > 1024 >> > > Jan 28 00:25:10 backup3 kernel: em1: Tx Descriptors avail >> > failure = 0 >> > > Jan 28 00:25:10 backup3 kernel: em1: RX discarded packets = >> > 0 >> > > Jan 28 00:25:10 backup3 kernel: em1: RX Next to Check = 903 >> > > Jan 28 00:25:10 backup3 kernel: em1: RX Next to Refresh = >> > 904 >> > > Jan 28 00:25:27 backup3 kernel: em1: link state changed to >> > DOWN >> > > Jan 28 00:25:30 backup3 kernel: em1: link state changed to >> > UP >> > > >> > > >> > > ---Mike >> > >> > >> > >> > I'm trying to get some more testing done regarding my >> > suggestions around >> > the OACTIVE assertions in the driver. More or less, it looks >> > like >> > intense periods of activity can push the driver into the >> > OACTIVE hold >> > off state and the logic isn't quite right in igb(4) or em(4) >> > to handle >> > it. >> > >> > I suspect that something like this modification to igb(4) may >> > be >> > required for em(4). >> > >> > Comments? >> > >> > Sean >> > >> >> >> Does the logic I've implemented look sane? >> >> Sean >> >> > --000e0cd4038cfbdee9049b3f6d45-- From owner-freebsd-hardware@FreeBSD.ORG Wed Feb 2 14:01:28 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C6A1E106564A for ; Wed, 2 Feb 2011 14:01:28 +0000 (UTC) (envelope-from sorem-real-atualcard@sorem.onda.com.br) Received: from sorem.onda.com.br (sorem.onda.com.br [200.195.197.42]) by mx1.freebsd.org (Postfix) with ESMTP id 338098FC19 for ; Wed, 2 Feb 2011 14:01:28 +0000 (UTC) Received: by sorem.onda.com.br (Postfix, from userid 0) id 9B29D22693A4; Wed, 2 Feb 2011 11:32:37 -0200 (BRST) To: freebsd-hardware@freebsd.org From: CARTÕES MAIS BARATO Content-Transfer-Encoding: 7bit X-SOREM-Campaign-ID: 38_801806001296647285 X-Mailer: SOREM Message-Id: <20110202133237.9B29D22693A4@sorem.onda.com.br> Date: Wed, 2 Feb 2011 11:32:37 -0200 (BRST) MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Subject: =?iso-8859-1?q?1000__Cart=F5es_de_Visita_por_17=2C00?= X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: CARTÕES MAIS BARATO List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 02 Feb 2011 14:01:29 -0000 [1]Cartões Mais Barato Pensando no Produto mais barato que existe? Só aqui é mais barato! [2]Cartões de visita Para você vender mais e lucrar mais. [3]Varios pontos de distribuição em São paulo Entregas em todo Brasil [4]Cartões Mais Barato A Cartoes Mais Barato é contra o spam na rede. Caso você não queira receber nossos e-mails, clique neste [5]link. References 1. http://sorem.onda.com.br/sorem/click.php?s=3b2acc10de360834510fd6e70329c0af&e=e3f76ccc3c7ed7c784d5952a2f99bb01&u=http://www.cartoesmaisbarato.com.br 2. http://sorem.onda.com.br/sorem/click.php?s=3b2acc10de360834510fd6e70329c0af&e=e3f76ccc3c7ed7c784d5952a2f99bb01&u=http://www.cartoesmaisbarato.com.br/produtos/cartoes-de-visita-verniz-total-frente/5.htm 3. http://sorem.onda.com.br/sorem/click.php?s=3b2acc10de360834510fd6e70329c0af&e=e3f76ccc3c7ed7c784d5952a2f99bb01&u=http://cartoesmaisbarato.com.br/index/pontos 4. http://sorem.onda.com.br/sorem/click.php?s=3b2acc10de360834510fd6e70329c0af&e=e3f76ccc3c7ed7c784d5952a2f99bb01&u=http://www.cartoesmaisbarato.com.br 5. http://sorem.onda.com.br/sorem/optout.php?s=3b2acc10de360834510fd6e70329c0af&e=e3f76ccc3c7ed7c784d5952a2f99bb01&u=http://www.ondaexpress.com.br From owner-freebsd-hardware@FreeBSD.ORG Wed Feb 2 17:37:32 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9DDD0106566C; Wed, 2 Feb 2011 17:37:32 +0000 (UTC) (envelope-from jfvogel@gmail.com) Received: from mail-gx0-f182.google.com (mail-gx0-f182.google.com [209.85.161.182]) by mx1.freebsd.org (Postfix) with ESMTP id 1F70E8FC19; Wed, 2 Feb 2011 17:37:31 +0000 (UTC) Received: by gxk8 with SMTP id 8so103994gxk.13 for ; Wed, 02 Feb 2011 09:37:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=9uweL4xAiLTcxFrOXJoRZizf9PLx28n9lreb8OgzKNs=; b=yHtmzHfsLno+HL82TE8i5MA2eGN5L6wttkPg8eHIaRSOR+srx2Sc54vaRo3XYEbvhe DgfUFWW6OKcvBdea6JScqFSr7lawI0/pm8nfCiNMLMBpzL5rP4YrZMytjq9VDNv/NpDE Ds5M4C5M5SxqFoYU+6/+8zr+99J1L+5ihlqp0= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=pm0njKnMABsp93DZHE8TP0Pr3MHFnwEuv6dNL79pi7bYzbOa+GiQVBqYzDqG756jIG zo3cq4RTALp5tgh5fD00FbUoWpHbx6mAMsNTzkrBhMT0TBVZOBaJFaECdFUtRHpuRa+n tPjkfjQw6a6Mu/oVcDv4BBadB8fcvLbsTwtfo= MIME-Version: 1.0 Received: by 10.90.80.15 with SMTP id d15mr807163agb.19.1296668250810; Wed, 02 Feb 2011 09:37:30 -0800 (PST) Received: by 10.147.171.17 with HTTP; Wed, 2 Feb 2011 09:37:30 -0800 (PST) In-Reply-To: <4D48C973.7080503@sentex.net> References: <1290533941.3173.50.camel@home-yahoo> <4CEC0548.1080801@sentex.net> <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> <1296591565.2326.7.camel@hitfishpass-lx.corp.yahoo.com> <1296597827.2326.12.camel@hitfishpass-lx.corp.yahoo.com> <4D48C973.7080503@sentex.net> Date: Wed, 2 Feb 2011 09:37:30 -0800 Message-ID: From: Jack Vogel To: Mike Tancsa Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: "freebsd-net@freebsd.org" , Ivan Voras , Sean Bruno , Jan Koum , "freebsd-hardware@freebsd.org" Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 02 Feb 2011 17:37:32 -0000 So has everyone that wanted to get something testing been able to do so? Jack On Tue, Feb 1, 2011 at 7:03 PM, Mike Tancsa wrote: > On 2/1/2011 5:03 PM, Sean Bruno wrote: > > On Tue, 2011-02-01 at 13:43 -0800, Jack Vogel wrote: > >> To those who are going to test, here is the if_em.c, based on head, > >> with my > >> changes, I have to leave for the afternoon, and have not had a chance > >> to build > >> this, but it should work. I will check back in the later evening. > >> > >> Any blatant problems Sean, feel free to fix them :) > >> > >> Jack > >> > > > > > > I suspect that line 1490 should be: > > if (more_rx || (ifp->if_drv_flags & IFF_DRV_OACTIVE)) { > > > > > I have hacked up a RELENG_8 version which I think is correct including > the above change > > http://www.tancsa.com/if_em-8.c > > > > --- if_em.c.orig 2011-02-01 21:47:14.000000000 -0500 > +++ if_em.c 2011-02-01 21:47:19.000000000 -0500 > @@ -30,7 +30,7 @@ > POSSIBILITY OF SUCH DAMAGE. > > > ******************************************************************************/ > -/*$FreeBSD: src/sys/dev/e1000/if_em.c,v 1.21.2.20 2011/01/22 01:37:53 > jfv Exp $*/ > +/*$FreeBSD$*/ > > #ifdef HAVE_KERNEL_OPTION_HEADERS > #include "opt_device_polling.h" > @@ -93,7 +93,7 @@ > /********************************************************************* > * Driver version: > *********************************************************************/ > -char em_driver_version[] = "7.1.9"; > +char em_driver_version[] = "7.1.9-test"; > > /********************************************************************* > * PCI Device ID Table > @@ -927,11 +927,10 @@ > if (!adapter->link_active) > return; > > - /* Call cleanup if number of TX descriptors low */ > - if (txr->tx_avail <= EM_TX_CLEANUP_THRESHOLD) > - em_txeof(txr); > - > while (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) { > + /* First cleanup if TX descriptors low */ > + if (txr->tx_avail <= EM_TX_CLEANUP_THRESHOLD) > + em_txeof(txr); > if (txr->tx_avail < EM_MAX_SCATTER) { > ifp->if_drv_flags |= IFF_DRV_OACTIVE; > break; > @@ -1411,8 +1410,7 @@ > if (!drbr_empty(ifp, txr->br)) > em_mq_start_locked(ifp, txr, NULL); > #else > - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) > - em_start_locked(ifp, txr); > + em_start_locked(ifp, txr); > #endif > EM_TX_UNLOCK(txr); > > @@ -1475,11 +1473,10 @@ > struct ifnet *ifp = adapter->ifp; > struct tx_ring *txr = adapter->tx_rings; > struct rx_ring *rxr = adapter->rx_rings; > - bool more; > - > > if (ifp->if_drv_flags & IFF_DRV_RUNNING) { > - more = em_rxeof(rxr, adapter->rx_process_limit, NULL); > + bool more_rx; > + more_rx = em_rxeof(rxr, adapter->rx_process_limit, NULL); > > EM_TX_LOCK(txr); > em_txeof(txr); > @@ -1487,12 +1484,10 @@ > if (!drbr_empty(ifp, txr->br)) > em_mq_start_locked(ifp, txr, NULL); > #else > - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) > - em_start_locked(ifp, txr); > + em_start_locked(ifp, txr); > #endif > - em_txeof(txr); > EM_TX_UNLOCK(txr); > - if (more) { > + if (more_rx || (ifp->if_drv_flags & IFF_DRV_OACTIVE)) { > taskqueue_enqueue(adapter->tq, &adapter->que_task); > return; > } > @@ -1604,7 +1599,6 @@ > if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) > em_start_locked(ifp, txr); > #endif > - em_txeof(txr); > E1000_WRITE_REG(&adapter->hw, E1000_IMS, txr->ims); > EM_TX_UNLOCK(txr); > } > @@ -3730,17 +3724,17 @@ > txr->queue_status = EM_QUEUE_HUNG; > > /* > - * If we have enough room, clear IFF_DRV_OACTIVE > + * If we have a minimum free, clear IFF_DRV_OACTIVE > * to tell the stack that it is OK to send packets. > */ > - if (txr->tx_avail > EM_TX_CLEANUP_THRESHOLD) { > + if (txr->tx_avail > EM_MAX_SCATTER) > ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; > - /* Disable watchdog if all clean */ > - if (txr->tx_avail == adapter->num_tx_desc) { > - txr->queue_status = EM_QUEUE_IDLE; > - return (FALSE); > - } > - } > + > + /* Disable watchdog if all clean */ > + if (txr->tx_avail == adapter->num_tx_desc) { > + txr->queue_status = EM_QUEUE_IDLE; > + return (FALSE); > + } > > return (TRUE); > } > @@ -5064,8 +5058,8 @@ > char namebuf[QUEUE_NAME_LEN]; > > /* Driver Statistics */ > - SYSCTL_ADD_UINT(ctx, child, OID_AUTO, "link_irq", > - CTLFLAG_RD, &adapter->link_irq, 0, > + SYSCTL_ADD_UINT(ctx, child, OID_AUTO, "link_irq", > + CTLFLAG_RD, &adapter->link_irq,0, > "Link MSIX IRQ Handled"); > SYSCTL_ADD_ULONG(ctx, child, OID_AUTO, "mbuf_alloc_fail", > CTLFLAG_RD, &adapter->mbuf_alloc_failed, > @@ -5108,11 +5102,13 @@ > queue_list = SYSCTL_CHILDREN(queue_node); > > SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "txd_head", > - CTLFLAG_RD, adapter, E1000_TDH(txr->me), > + CTLFLAG_RD, adapter, > + E1000_TDH(txr->me), > em_sysctl_reg_handler, "IU", > "Transmit Descriptor Head"); > SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "txd_tail", > - CTLFLAG_RD, adapter, E1000_TDT(txr->me), > + CTLFLAG_RD, adapter, > + E1000_TDT(txr->me), > em_sysctl_reg_handler, "IU", > "Transmit Descriptor Tail"); > SYSCTL_ADD_ULONG(ctx, queue_list, OID_AUTO, "tx_irq", > @@ -5123,11 +5119,13 @@ > "Queue No Descriptor Available"); > > SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "rxd_head", > - CTLFLAG_RD, adapter, E1000_RDH(rxr->me), > + CTLFLAG_RD, adapter, > + E1000_RDH(rxr->me), > em_sysctl_reg_handler, "IU", > "Receive Descriptor Head"); > SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "rxd_tail", > - CTLFLAG_RD, adapter, E1000_RDT(rxr->me), > + CTLFLAG_RD, adapter, > + E1000_RDT(rxr->me), > em_sysctl_reg_handler, "IU", > "Receive Descriptor Tail"); > SYSCTL_ADD_ULONG(ctx, queue_list, OID_AUTO, "rx_irq", > @@ -5141,19 +5139,19 @@ > CTLFLAG_RD, NULL, "Statistics"); > stat_list = SYSCTL_CHILDREN(stat_node); > > - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "excess_coll", > + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "excess_coll", > CTLFLAG_RD, &stats->ecol, > "Excessive collisions"); > - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "single_coll", > + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "single_coll", > CTLFLAG_RD, &stats->scc, > "Single collisions"); > - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "multiple_coll", > + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "multiple_coll", > CTLFLAG_RD, &stats->mcc, > "Multiple collisions"); > - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "late_coll", > + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "late_coll", > CTLFLAG_RD, &stats->latecol, > "Late collisions"); > - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "collision_count", > + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "collision_count", > CTLFLAG_RD, &stats->colc, > "Collision Count"); > SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "symbol_errors", > @@ -5240,12 +5238,12 @@ > SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "rx_frames_1024_1522", > CTLFLAG_RD, &adapter->stats.prc1522, > "1023-1522 byte frames received"); > - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "good_octets_recvd", > + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "good_octets_recvd", > CTLFLAG_RD, &adapter->stats.gorc, > "Good Octets Received"); > > /* Packet Transmission Stats */ > - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "good_octets_txd", > + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "good_octets_txd", > CTLFLAG_RD, &adapter->stats.gotc, > "Good Octets Transmitted"); > SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "total_pkts_txd", > > -- > ------------------- > Mike Tancsa, tel +1 519 651 3400 > Sentex Communications, mike@sentex.net > Providing Internet services since 1994 www.sentex.net > Cambridge, Ontario Canada http://www.tancsa.com/ > From owner-freebsd-hardware@FreeBSD.ORG Wed Feb 2 18:29:09 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DDF03106564A; Wed, 2 Feb 2011 18:29:09 +0000 (UTC) (envelope-from mike@sentex.net) Received: from smarthost1.sentex.ca (smarthost1-6.sentex.ca [IPv6:2607:f3e0:0:1::12]) by mx1.freebsd.org (Postfix) with ESMTP id 7A7C78FC17; Wed, 2 Feb 2011 18:29:09 +0000 (UTC) Received: from [IPv6:2607:f3e0:0:4:f025:8813:7603:7e4a] (saphire3.sentex.ca [IPv6:2607:f3e0:0:4:f025:8813:7603:7e4a]) by smarthost1.sentex.ca (8.14.4/8.14.4) with ESMTP id p12IT70o065398 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Wed, 2 Feb 2011 13:29:07 -0500 (EST) (envelope-from mike@sentex.net) Message-ID: <4D49A26B.5050803@sentex.net> Date: Wed, 02 Feb 2011 13:28:59 -0500 From: Mike Tancsa Organization: Sentex Communications User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101207 Thunderbird/3.1.7 MIME-Version: 1.0 To: Jack Vogel References: <1290533941.3173.50.camel@home-yahoo> <4CEC0548.1080801@sentex.net> <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> <1296591565.2326.7.camel@hitfishpass-lx.corp.yahoo.com> <1296597827.2326.12.camel@hitfishpass-lx.corp.yahoo.com> <4D48C973.7080503@sentex.net> In-Reply-To: X-Enigmail-Version: 1.1.1 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.67 on IPv6:2607:f3e0:0:1::12 Cc: "freebsd-net@freebsd.org" , Ivan Voras , Sean Bruno , Jan Koum , "freebsd-hardware@freebsd.org" Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 02 Feb 2011 18:29:10 -0000 On 2/2/2011 12:37 PM, Jack Vogel wrote: > So has everyone that wanted to get something testing been able to do so? I have been testing in the back and will deploy to my production box this afternoon. As I am not able to reproduce it easily, it will be a bit before I can say the issue is gone. Jan however, was able to trigger it with greater ease ? ---Mike > > Jack > > > On Tue, Feb 1, 2011 at 7:03 PM, Mike Tancsa wrote: > >> On 2/1/2011 5:03 PM, Sean Bruno wrote: >>> On Tue, 2011-02-01 at 13:43 -0800, Jack Vogel wrote: >>>> To those who are going to test, here is the if_em.c, based on head, >>>> with my >>>> changes, I have to leave for the afternoon, and have not had a chance >>>> to build >>>> this, but it should work. I will check back in the later evening. >>>> >>>> Any blatant problems Sean, feel free to fix them :) >>>> >>>> Jack >>>> >>> >>> >>> I suspect that line 1490 should be: >>> if (more_rx || (ifp->if_drv_flags & IFF_DRV_OACTIVE)) { >>> >> >> >> I have hacked up a RELENG_8 version which I think is correct including >> the above change >> >> http://www.tancsa.com/if_em-8.c >> >> >> >> --- if_em.c.orig 2011-02-01 21:47:14.000000000 -0500 >> +++ if_em.c 2011-02-01 21:47:19.000000000 -0500 >> @@ -30,7 +30,7 @@ >> POSSIBILITY OF SUCH DAMAGE. >> >> >> ******************************************************************************/ >> -/*$FreeBSD: src/sys/dev/e1000/if_em.c,v 1.21.2.20 2011/01/22 01:37:53 >> jfv Exp $*/ >> +/*$FreeBSD$*/ >> >> #ifdef HAVE_KERNEL_OPTION_HEADERS >> #include "opt_device_polling.h" >> @@ -93,7 +93,7 @@ >> /********************************************************************* >> * Driver version: >> *********************************************************************/ >> -char em_driver_version[] = "7.1.9"; >> +char em_driver_version[] = "7.1.9-test"; >> >> /********************************************************************* >> * PCI Device ID Table >> @@ -927,11 +927,10 @@ >> if (!adapter->link_active) >> return; >> >> - /* Call cleanup if number of TX descriptors low */ >> - if (txr->tx_avail <= EM_TX_CLEANUP_THRESHOLD) >> - em_txeof(txr); >> - >> while (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) { >> + /* First cleanup if TX descriptors low */ >> + if (txr->tx_avail <= EM_TX_CLEANUP_THRESHOLD) >> + em_txeof(txr); >> if (txr->tx_avail < EM_MAX_SCATTER) { >> ifp->if_drv_flags |= IFF_DRV_OACTIVE; >> break; >> @@ -1411,8 +1410,7 @@ >> if (!drbr_empty(ifp, txr->br)) >> em_mq_start_locked(ifp, txr, NULL); >> #else >> - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) >> - em_start_locked(ifp, txr); >> + em_start_locked(ifp, txr); >> #endif >> EM_TX_UNLOCK(txr); >> >> @@ -1475,11 +1473,10 @@ >> struct ifnet *ifp = adapter->ifp; >> struct tx_ring *txr = adapter->tx_rings; >> struct rx_ring *rxr = adapter->rx_rings; >> - bool more; >> - >> >> if (ifp->if_drv_flags & IFF_DRV_RUNNING) { >> - more = em_rxeof(rxr, adapter->rx_process_limit, NULL); >> + bool more_rx; >> + more_rx = em_rxeof(rxr, adapter->rx_process_limit, NULL); >> >> EM_TX_LOCK(txr); >> em_txeof(txr); >> @@ -1487,12 +1484,10 @@ >> if (!drbr_empty(ifp, txr->br)) >> em_mq_start_locked(ifp, txr, NULL); >> #else >> - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) >> - em_start_locked(ifp, txr); >> + em_start_locked(ifp, txr); >> #endif >> - em_txeof(txr); >> EM_TX_UNLOCK(txr); >> - if (more) { >> + if (more_rx || (ifp->if_drv_flags & IFF_DRV_OACTIVE)) { >> taskqueue_enqueue(adapter->tq, &adapter->que_task); >> return; >> } >> @@ -1604,7 +1599,6 @@ >> if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) >> em_start_locked(ifp, txr); >> #endif >> - em_txeof(txr); >> E1000_WRITE_REG(&adapter->hw, E1000_IMS, txr->ims); >> EM_TX_UNLOCK(txr); >> } >> @@ -3730,17 +3724,17 @@ >> txr->queue_status = EM_QUEUE_HUNG; >> >> /* >> - * If we have enough room, clear IFF_DRV_OACTIVE >> + * If we have a minimum free, clear IFF_DRV_OACTIVE >> * to tell the stack that it is OK to send packets. >> */ >> - if (txr->tx_avail > EM_TX_CLEANUP_THRESHOLD) { >> + if (txr->tx_avail > EM_MAX_SCATTER) >> ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; >> - /* Disable watchdog if all clean */ >> - if (txr->tx_avail == adapter->num_tx_desc) { >> - txr->queue_status = EM_QUEUE_IDLE; >> - return (FALSE); >> - } >> - } >> + >> + /* Disable watchdog if all clean */ >> + if (txr->tx_avail == adapter->num_tx_desc) { >> + txr->queue_status = EM_QUEUE_IDLE; >> + return (FALSE); >> + } >> >> return (TRUE); >> } >> @@ -5064,8 +5058,8 @@ >> char namebuf[QUEUE_NAME_LEN]; >> >> /* Driver Statistics */ >> - SYSCTL_ADD_UINT(ctx, child, OID_AUTO, "link_irq", >> - CTLFLAG_RD, &adapter->link_irq, 0, >> + SYSCTL_ADD_UINT(ctx, child, OID_AUTO, "link_irq", >> + CTLFLAG_RD, &adapter->link_irq,0, >> "Link MSIX IRQ Handled"); >> SYSCTL_ADD_ULONG(ctx, child, OID_AUTO, "mbuf_alloc_fail", >> CTLFLAG_RD, &adapter->mbuf_alloc_failed, >> @@ -5108,11 +5102,13 @@ >> queue_list = SYSCTL_CHILDREN(queue_node); >> >> SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "txd_head", >> - CTLFLAG_RD, adapter, E1000_TDH(txr->me), >> + CTLFLAG_RD, adapter, >> + E1000_TDH(txr->me), >> em_sysctl_reg_handler, "IU", >> "Transmit Descriptor Head"); >> SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "txd_tail", >> - CTLFLAG_RD, adapter, E1000_TDT(txr->me), >> + CTLFLAG_RD, adapter, >> + E1000_TDT(txr->me), >> em_sysctl_reg_handler, "IU", >> "Transmit Descriptor Tail"); >> SYSCTL_ADD_ULONG(ctx, queue_list, OID_AUTO, "tx_irq", >> @@ -5123,11 +5119,13 @@ >> "Queue No Descriptor Available"); >> >> SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "rxd_head", >> - CTLFLAG_RD, adapter, E1000_RDH(rxr->me), >> + CTLFLAG_RD, adapter, >> + E1000_RDH(rxr->me), >> em_sysctl_reg_handler, "IU", >> "Receive Descriptor Head"); >> SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "rxd_tail", >> - CTLFLAG_RD, adapter, E1000_RDT(rxr->me), >> + CTLFLAG_RD, adapter, >> + E1000_RDT(rxr->me), >> em_sysctl_reg_handler, "IU", >> "Receive Descriptor Tail"); >> SYSCTL_ADD_ULONG(ctx, queue_list, OID_AUTO, "rx_irq", >> @@ -5141,19 +5139,19 @@ >> CTLFLAG_RD, NULL, "Statistics"); >> stat_list = SYSCTL_CHILDREN(stat_node); >> >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "excess_coll", >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "excess_coll", >> CTLFLAG_RD, &stats->ecol, >> "Excessive collisions"); >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "single_coll", >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "single_coll", >> CTLFLAG_RD, &stats->scc, >> "Single collisions"); >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "multiple_coll", >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "multiple_coll", >> CTLFLAG_RD, &stats->mcc, >> "Multiple collisions"); >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "late_coll", >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "late_coll", >> CTLFLAG_RD, &stats->latecol, >> "Late collisions"); >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "collision_count", >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "collision_count", >> CTLFLAG_RD, &stats->colc, >> "Collision Count"); >> SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "symbol_errors", >> @@ -5240,12 +5238,12 @@ >> SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "rx_frames_1024_1522", >> CTLFLAG_RD, &adapter->stats.prc1522, >> "1023-1522 byte frames received"); >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "good_octets_recvd", >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "good_octets_recvd", >> CTLFLAG_RD, &adapter->stats.gorc, >> "Good Octets Received"); >> >> /* Packet Transmission Stats */ >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "good_octets_txd", >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "good_octets_txd", >> CTLFLAG_RD, &adapter->stats.gotc, >> "Good Octets Transmitted"); >> SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "total_pkts_txd", >> >> -- >> ------------------- >> Mike Tancsa, tel +1 519 651 3400 >> Sentex Communications, mike@sentex.net >> Providing Internet services since 1994 www.sentex.net >> Cambridge, Ontario Canada http://www.tancsa.com/ >> > -- ------------------- Mike Tancsa, tel +1 519 651 3400 Sentex Communications, mike@sentex.net Providing Internet services since 1994 www.sentex.net Cambridge, Ontario Canada http://www.tancsa.com/ From owner-freebsd-hardware@FreeBSD.ORG Fri Feb 4 18:10:30 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DA6B0106566B; Fri, 4 Feb 2011 18:10:30 +0000 (UTC) (envelope-from seanbru@yahoo-inc.com) Received: from mrout2-b.corp.re1.yahoo.com (mrout2-b.corp.re1.yahoo.com [69.147.107.21]) by mx1.freebsd.org (Postfix) with ESMTP id 7A2908FC19; Fri, 4 Feb 2011 18:10:30 +0000 (UTC) Received: from [127.0.0.1] (proxy8.corp.yahoo.com [216.145.48.13]) by mrout2-b.corp.re1.yahoo.com (8.14.4/8.14.4/y.out) with ESMTP id p14I9uc4062603; Fri, 4 Feb 2011 10:09:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=yahoo-inc.com; s=cobra; t=1296842997; bh=ZSVZVd05IHh6EQiRRKtTZ8q51ey9s2jjxsOIxbWxMBs=; h=Subject:From:To:Cc:In-Reply-To:References:Content-Type:Date: Message-ID:Mime-Version:Content-Transfer-Encoding; b=oAU7zzt1g6KykhOvWG45kKGSMlnDp2t4/+bZ/sYnytObfYZiq2tBczzka8w24MQdc G1QxeP4CnMFC9AHaMUkVvuIWjII3KWp7abyoj88PDSh00VElEMeKTcg6htjIpzKmfl +9NcxHfLmLSRo4JoTjtYv5tEAPZ/WfmcwpiKhliU= From: Sean Bruno To: Mike Tancsa In-Reply-To: <4D49A26B.5050803@sentex.net> References: <1290533941.3173.50.camel@home-yahoo> <4CEC0548.1080801@sentex.net> <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> <1296591565.2326.7.camel@hitfishpass-lx.corp.yahoo.com> <1296597827.2326.12.camel@hitfishpass-lx.corp.yahoo.com> <4D48C973.7080503@sentex.net> <4D49A26B.5050803@sentex.net> Content-Type: text/plain; charset="UTF-8" Date: Fri, 04 Feb 2011 10:09:56 -0800 Message-ID: <1296842996.2233.0.camel@hitfishpass-lx.corp.yahoo.com> Mime-Version: 1.0 X-Mailer: Evolution 2.32.1 (2.32.1-1.fc14) Content-Transfer-Encoding: 7bit Cc: "freebsd-net@freebsd.org" , "freebsd-hardware@freebsd.org" , Jack Vogel , Jan Koum , Ivan Voras Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 04 Feb 2011 18:10:31 -0000 Any more data on this problem or do we have to wait a while? Sean On Wed, 2011-02-02 at 10:28 -0800, Mike Tancsa wrote: > On 2/2/2011 12:37 PM, Jack Vogel wrote: > > So has everyone that wanted to get something testing been able to do so? > > I have been testing in the back and will deploy to my production box > this afternoon. As I am not able to reproduce it easily, it will be a > bit before I can say the issue is gone. Jan however, was able to > trigger it with greater ease ? > > ---Mike > > > > > Jack > > > > > > On Tue, Feb 1, 2011 at 7:03 PM, Mike Tancsa wrote: > > > >> On 2/1/2011 5:03 PM, Sean Bruno wrote: > >>> On Tue, 2011-02-01 at 13:43 -0800, Jack Vogel wrote: > >>>> To those who are going to test, here is the if_em.c, based on head, > >>>> with my > >>>> changes, I have to leave for the afternoon, and have not had a chance > >>>> to build > >>>> this, but it should work. I will check back in the later evening. > >>>> > >>>> Any blatant problems Sean, feel free to fix them :) > >>>> > >>>> Jack > >>>> > >>> > >>> > >>> I suspect that line 1490 should be: > >>> if (more_rx || (ifp->if_drv_flags & IFF_DRV_OACTIVE)) { > >>> > >> > >> > >> I have hacked up a RELENG_8 version which I think is correct including > >> the above change > >> > >> http://www.tancsa.com/if_em-8.c > >> > >> > >> > >> --- if_em.c.orig 2011-02-01 21:47:14.000000000 -0500 > >> +++ if_em.c 2011-02-01 21:47:19.000000000 -0500 > >> @@ -30,7 +30,7 @@ > >> POSSIBILITY OF SUCH DAMAGE. > >> > >> > >> ******************************************************************************/ > >> -/*$FreeBSD: src/sys/dev/e1000/if_em.c,v 1.21.2.20 2011/01/22 01:37:53 > >> jfv Exp $*/ > >> +/*$FreeBSD$*/ > >> > >> #ifdef HAVE_KERNEL_OPTION_HEADERS > >> #include "opt_device_polling.h" > >> @@ -93,7 +93,7 @@ > >> /********************************************************************* > >> * Driver version: > >> *********************************************************************/ > >> -char em_driver_version[] = "7.1.9"; > >> +char em_driver_version[] = "7.1.9-test"; > >> > >> /********************************************************************* > >> * PCI Device ID Table > >> @@ -927,11 +927,10 @@ > >> if (!adapter->link_active) > >> return; > >> > >> - /* Call cleanup if number of TX descriptors low */ > >> - if (txr->tx_avail <= EM_TX_CLEANUP_THRESHOLD) > >> - em_txeof(txr); > >> - > >> while (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) { > >> + /* First cleanup if TX descriptors low */ > >> + if (txr->tx_avail <= EM_TX_CLEANUP_THRESHOLD) > >> + em_txeof(txr); > >> if (txr->tx_avail < EM_MAX_SCATTER) { > >> ifp->if_drv_flags |= IFF_DRV_OACTIVE; > >> break; > >> @@ -1411,8 +1410,7 @@ > >> if (!drbr_empty(ifp, txr->br)) > >> em_mq_start_locked(ifp, txr, NULL); > >> #else > >> - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) > >> - em_start_locked(ifp, txr); > >> + em_start_locked(ifp, txr); > >> #endif > >> EM_TX_UNLOCK(txr); > >> > >> @@ -1475,11 +1473,10 @@ > >> struct ifnet *ifp = adapter->ifp; > >> struct tx_ring *txr = adapter->tx_rings; > >> struct rx_ring *rxr = adapter->rx_rings; > >> - bool more; > >> - > >> > >> if (ifp->if_drv_flags & IFF_DRV_RUNNING) { > >> - more = em_rxeof(rxr, adapter->rx_process_limit, NULL); > >> + bool more_rx; > >> + more_rx = em_rxeof(rxr, adapter->rx_process_limit, NULL); > >> > >> EM_TX_LOCK(txr); > >> em_txeof(txr); > >> @@ -1487,12 +1484,10 @@ > >> if (!drbr_empty(ifp, txr->br)) > >> em_mq_start_locked(ifp, txr, NULL); > >> #else > >> - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) > >> - em_start_locked(ifp, txr); > >> + em_start_locked(ifp, txr); > >> #endif > >> - em_txeof(txr); > >> EM_TX_UNLOCK(txr); > >> - if (more) { > >> + if (more_rx || (ifp->if_drv_flags & IFF_DRV_OACTIVE)) { > >> taskqueue_enqueue(adapter->tq, &adapter->que_task); > >> return; > >> } > >> @@ -1604,7 +1599,6 @@ > >> if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) > >> em_start_locked(ifp, txr); > >> #endif > >> - em_txeof(txr); > >> E1000_WRITE_REG(&adapter->hw, E1000_IMS, txr->ims); > >> EM_TX_UNLOCK(txr); > >> } > >> @@ -3730,17 +3724,17 @@ > >> txr->queue_status = EM_QUEUE_HUNG; > >> > >> /* > >> - * If we have enough room, clear IFF_DRV_OACTIVE > >> + * If we have a minimum free, clear IFF_DRV_OACTIVE > >> * to tell the stack that it is OK to send packets. > >> */ > >> - if (txr->tx_avail > EM_TX_CLEANUP_THRESHOLD) { > >> + if (txr->tx_avail > EM_MAX_SCATTER) > >> ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; > >> - /* Disable watchdog if all clean */ > >> - if (txr->tx_avail == adapter->num_tx_desc) { > >> - txr->queue_status = EM_QUEUE_IDLE; > >> - return (FALSE); > >> - } > >> - } > >> + > >> + /* Disable watchdog if all clean */ > >> + if (txr->tx_avail == adapter->num_tx_desc) { > >> + txr->queue_status = EM_QUEUE_IDLE; > >> + return (FALSE); > >> + } > >> > >> return (TRUE); > >> } > >> @@ -5064,8 +5058,8 @@ > >> char namebuf[QUEUE_NAME_LEN]; > >> > >> /* Driver Statistics */ > >> - SYSCTL_ADD_UINT(ctx, child, OID_AUTO, "link_irq", > >> - CTLFLAG_RD, &adapter->link_irq, 0, > >> + SYSCTL_ADD_UINT(ctx, child, OID_AUTO, "link_irq", > >> + CTLFLAG_RD, &adapter->link_irq,0, > >> "Link MSIX IRQ Handled"); > >> SYSCTL_ADD_ULONG(ctx, child, OID_AUTO, "mbuf_alloc_fail", > >> CTLFLAG_RD, &adapter->mbuf_alloc_failed, > >> @@ -5108,11 +5102,13 @@ > >> queue_list = SYSCTL_CHILDREN(queue_node); > >> > >> SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "txd_head", > >> - CTLFLAG_RD, adapter, E1000_TDH(txr->me), > >> + CTLFLAG_RD, adapter, > >> + E1000_TDH(txr->me), > >> em_sysctl_reg_handler, "IU", > >> "Transmit Descriptor Head"); > >> SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "txd_tail", > >> - CTLFLAG_RD, adapter, E1000_TDT(txr->me), > >> + CTLFLAG_RD, adapter, > >> + E1000_TDT(txr->me), > >> em_sysctl_reg_handler, "IU", > >> "Transmit Descriptor Tail"); > >> SYSCTL_ADD_ULONG(ctx, queue_list, OID_AUTO, "tx_irq", > >> @@ -5123,11 +5119,13 @@ > >> "Queue No Descriptor Available"); > >> > >> SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "rxd_head", > >> - CTLFLAG_RD, adapter, E1000_RDH(rxr->me), > >> + CTLFLAG_RD, adapter, > >> + E1000_RDH(rxr->me), > >> em_sysctl_reg_handler, "IU", > >> "Receive Descriptor Head"); > >> SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "rxd_tail", > >> - CTLFLAG_RD, adapter, E1000_RDT(rxr->me), > >> + CTLFLAG_RD, adapter, > >> + E1000_RDT(rxr->me), > >> em_sysctl_reg_handler, "IU", > >> "Receive Descriptor Tail"); > >> SYSCTL_ADD_ULONG(ctx, queue_list, OID_AUTO, "rx_irq", > >> @@ -5141,19 +5139,19 @@ > >> CTLFLAG_RD, NULL, "Statistics"); > >> stat_list = SYSCTL_CHILDREN(stat_node); > >> > >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "excess_coll", > >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "excess_coll", > >> CTLFLAG_RD, &stats->ecol, > >> "Excessive collisions"); > >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "single_coll", > >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "single_coll", > >> CTLFLAG_RD, &stats->scc, > >> "Single collisions"); > >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "multiple_coll", > >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "multiple_coll", > >> CTLFLAG_RD, &stats->mcc, > >> "Multiple collisions"); > >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "late_coll", > >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "late_coll", > >> CTLFLAG_RD, &stats->latecol, > >> "Late collisions"); > >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "collision_count", > >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "collision_count", > >> CTLFLAG_RD, &stats->colc, > >> "Collision Count"); > >> SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "symbol_errors", > >> @@ -5240,12 +5238,12 @@ > >> SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "rx_frames_1024_1522", > >> CTLFLAG_RD, &adapter->stats.prc1522, > >> "1023-1522 byte frames received"); > >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "good_octets_recvd", > >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "good_octets_recvd", > >> CTLFLAG_RD, &adapter->stats.gorc, > >> "Good Octets Received"); > >> > >> /* Packet Transmission Stats */ > >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "good_octets_txd", > >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "good_octets_txd", > >> CTLFLAG_RD, &adapter->stats.gotc, > >> "Good Octets Transmitted"); > >> SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "total_pkts_txd", > >> > >> -- > >> ------------------- > >> Mike Tancsa, tel +1 519 651 3400 > >> Sentex Communications, mike@sentex.net > >> Providing Internet services since 1994 www.sentex.net > >> Cambridge, Ontario Canada http://www.tancsa.com/ > >> > > > > > -- > ------------------- > Mike Tancsa, tel +1 519 651 3400 > Sentex Communications, mike@sentex.net > Providing Internet services since 1994 www.sentex.net > Cambridge, Ontario Canada http://www.tancsa.com/ > _______________________________________________ > freebsd-net@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-net > To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org" From owner-freebsd-hardware@FreeBSD.ORG Fri Feb 4 18:12:19 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0883F106566B; Fri, 4 Feb 2011 18:12:19 +0000 (UTC) (envelope-from jfvogel@gmail.com) Received: from mail-yw0-f54.google.com (mail-yw0-f54.google.com [209.85.213.54]) by mx1.freebsd.org (Postfix) with ESMTP id 781D88FC08; Fri, 4 Feb 2011 18:12:18 +0000 (UTC) Received: by ywp6 with SMTP id 6so1082259ywp.13 for ; Fri, 04 Feb 2011 10:12:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=u9dJSGpWTOziYYo1MG59YTEGWt6KsFoLDn8FxxeQQUk=; b=v0o0Sk6njf6WuwGHNCc6xTf11r09chCncPdwLz449EyD2iV0yOCIWdkT+rKRKEDRIs xxfxqOVeb+hCLaxEVpigtBznKQPCgW9aAMnT3Ms32q7raZvq0aHxOk3a74KwgBHZe/Kz xXyk554dROGwooqAnUDYD/iH2l1IT9j6l5/lQ= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=N4uwf4er7ACCSVmfT3VTxf27faV9v815y9S/GzU/HQ1vtG+IyGgWoGpxpgOSiFy0vZ Ito/aHpSZrHVoWRfsCJjwpL2pdA3yVE8qxpNarcBjqmRcSs0QwzyD8/xb9PJ3RCSb6bJ rKJsnX3QrqyseCebZ5gIwbiikFD4RYCOfGFkM= MIME-Version: 1.0 Received: by 10.151.106.7 with SMTP id i7mr376067ybm.193.1296843137478; Fri, 04 Feb 2011 10:12:17 -0800 (PST) Received: by 10.147.171.17 with HTTP; Fri, 4 Feb 2011 10:12:17 -0800 (PST) In-Reply-To: <1296842996.2233.0.camel@hitfishpass-lx.corp.yahoo.com> References: <1290533941.3173.50.camel@home-yahoo> <4CEC0548.1080801@sentex.net> <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> <1296591565.2326.7.camel@hitfishpass-lx.corp.yahoo.com> <1296597827.2326.12.camel@hitfishpass-lx.corp.yahoo.com> <4D48C973.7080503@sentex.net> <4D49A26B.5050803@sentex.net> <1296842996.2233.0.camel@hitfishpass-lx.corp.yahoo.com> Date: Fri, 4 Feb 2011 10:12:17 -0800 Message-ID: From: Jack Vogel To: Sean Bruno Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: "freebsd-net@freebsd.org" , "freebsd-hardware@freebsd.org" , Ivan Voras , Jan Koum , Mike Tancsa Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 04 Feb 2011 18:12:19 -0000 Was curious too, but being more patient than you :) Jack On Fri, Feb 4, 2011 at 10:09 AM, Sean Bruno wrote: > Any more data on this problem or do we have to wait a while? > > Sean > > > On Wed, 2011-02-02 at 10:28 -0800, Mike Tancsa wrote: > > On 2/2/2011 12:37 PM, Jack Vogel wrote: > > > So has everyone that wanted to get something testing been able to do > so? > > > > I have been testing in the back and will deploy to my production box > > this afternoon. As I am not able to reproduce it easily, it will be a > > bit before I can say the issue is gone. Jan however, was able to > > trigger it with greater ease ? > > > > ---Mike > > > > > > > > Jack > > > > > > > > > On Tue, Feb 1, 2011 at 7:03 PM, Mike Tancsa wrote: > > > > > >> On 2/1/2011 5:03 PM, Sean Bruno wrote: > > >>> On Tue, 2011-02-01 at 13:43 -0800, Jack Vogel wrote: > > >>>> To those who are going to test, here is the if_em.c, based on head, > > >>>> with my > > >>>> changes, I have to leave for the afternoon, and have not had a > chance > > >>>> to build > > >>>> this, but it should work. I will check back in the later evening. > > >>>> > > >>>> Any blatant problems Sean, feel free to fix them :) > > >>>> > > >>>> Jack > > >>>> > > >>> > > >>> > > >>> I suspect that line 1490 should be: > > >>> if (more_rx || (ifp->if_drv_flags & IFF_DRV_OACTIVE)) { > > >>> > > >> > > >> > > >> I have hacked up a RELENG_8 version which I think is correct including > > >> the above change > > >> > > >> http://www.tancsa.com/if_em-8.c > > >> > > >> > > >> > > >> --- if_em.c.orig 2011-02-01 21:47:14.000000000 -0500 > > >> +++ if_em.c 2011-02-01 21:47:19.000000000 -0500 > > >> @@ -30,7 +30,7 @@ > > >> POSSIBILITY OF SUCH DAMAGE. > > >> > > >> > > >> > ******************************************************************************/ > > >> -/*$FreeBSD: src/sys/dev/e1000/if_em.c,v 1.21.2.20 2011/01/22 01:37:53 > > >> jfv Exp $*/ > > >> +/*$FreeBSD$*/ > > >> > > >> #ifdef HAVE_KERNEL_OPTION_HEADERS > > >> #include "opt_device_polling.h" > > >> @@ -93,7 +93,7 @@ > > >> > /********************************************************************* > > >> * Driver version: > > >> > *********************************************************************/ > > >> -char em_driver_version[] = "7.1.9"; > > >> +char em_driver_version[] = "7.1.9-test"; > > >> > > >> > /********************************************************************* > > >> * PCI Device ID Table > > >> @@ -927,11 +927,10 @@ > > >> if (!adapter->link_active) > > >> return; > > >> > > >> - /* Call cleanup if number of TX descriptors low */ > > >> - if (txr->tx_avail <= EM_TX_CLEANUP_THRESHOLD) > > >> - em_txeof(txr); > > >> - > > >> while (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) { > > >> + /* First cleanup if TX descriptors low */ > > >> + if (txr->tx_avail <= EM_TX_CLEANUP_THRESHOLD) > > >> + em_txeof(txr); > > >> if (txr->tx_avail < EM_MAX_SCATTER) { > > >> ifp->if_drv_flags |= IFF_DRV_OACTIVE; > > >> break; > > >> @@ -1411,8 +1410,7 @@ > > >> if (!drbr_empty(ifp, txr->br)) > > >> em_mq_start_locked(ifp, txr, NULL); > > >> #else > > >> - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) > > >> - em_start_locked(ifp, txr); > > >> + em_start_locked(ifp, txr); > > >> #endif > > >> EM_TX_UNLOCK(txr); > > >> > > >> @@ -1475,11 +1473,10 @@ > > >> struct ifnet *ifp = adapter->ifp; > > >> struct tx_ring *txr = adapter->tx_rings; > > >> struct rx_ring *rxr = adapter->rx_rings; > > >> - bool more; > > >> - > > >> > > >> if (ifp->if_drv_flags & IFF_DRV_RUNNING) { > > >> - more = em_rxeof(rxr, adapter->rx_process_limit, NULL); > > >> + bool more_rx; > > >> + more_rx = em_rxeof(rxr, adapter->rx_process_limit, > NULL); > > >> > > >> EM_TX_LOCK(txr); > > >> em_txeof(txr); > > >> @@ -1487,12 +1484,10 @@ > > >> if (!drbr_empty(ifp, txr->br)) > > >> em_mq_start_locked(ifp, txr, NULL); > > >> #else > > >> - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) > > >> - em_start_locked(ifp, txr); > > >> + em_start_locked(ifp, txr); > > >> #endif > > >> - em_txeof(txr); > > >> EM_TX_UNLOCK(txr); > > >> - if (more) { > > >> + if (more_rx || (ifp->if_drv_flags & IFF_DRV_OACTIVE)) > { > > >> taskqueue_enqueue(adapter->tq, > &adapter->que_task); > > >> return; > > >> } > > >> @@ -1604,7 +1599,6 @@ > > >> if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) > > >> em_start_locked(ifp, txr); > > >> #endif > > >> - em_txeof(txr); > > >> E1000_WRITE_REG(&adapter->hw, E1000_IMS, txr->ims); > > >> EM_TX_UNLOCK(txr); > > >> } > > >> @@ -3730,17 +3724,17 @@ > > >> txr->queue_status = EM_QUEUE_HUNG; > > >> > > >> /* > > >> - * If we have enough room, clear IFF_DRV_OACTIVE > > >> + * If we have a minimum free, clear IFF_DRV_OACTIVE > > >> * to tell the stack that it is OK to send packets. > > >> */ > > >> - if (txr->tx_avail > EM_TX_CLEANUP_THRESHOLD) { > > >> + if (txr->tx_avail > EM_MAX_SCATTER) > > >> ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; > > >> - /* Disable watchdog if all clean */ > > >> - if (txr->tx_avail == adapter->num_tx_desc) { > > >> - txr->queue_status = EM_QUEUE_IDLE; > > >> - return (FALSE); > > >> - } > > >> - } > > >> + > > >> + /* Disable watchdog if all clean */ > > >> + if (txr->tx_avail == adapter->num_tx_desc) { > > >> + txr->queue_status = EM_QUEUE_IDLE; > > >> + return (FALSE); > > >> + } > > >> > > >> return (TRUE); > > >> } > > >> @@ -5064,8 +5058,8 @@ > > >> char namebuf[QUEUE_NAME_LEN]; > > >> > > >> /* Driver Statistics */ > > >> - SYSCTL_ADD_UINT(ctx, child, OID_AUTO, "link_irq", > > >> - CTLFLAG_RD, &adapter->link_irq, 0, > > >> + SYSCTL_ADD_UINT(ctx, child, OID_AUTO, "link_irq", > > >> + CTLFLAG_RD, &adapter->link_irq,0, > > >> "Link MSIX IRQ Handled"); > > >> SYSCTL_ADD_ULONG(ctx, child, OID_AUTO, "mbuf_alloc_fail", > > >> CTLFLAG_RD, &adapter->mbuf_alloc_failed, > > >> @@ -5108,11 +5102,13 @@ > > >> queue_list = SYSCTL_CHILDREN(queue_node); > > >> > > >> SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "txd_head", > > >> - CTLFLAG_RD, adapter, > E1000_TDH(txr->me), > > >> + CTLFLAG_RD, adapter, > > >> + E1000_TDH(txr->me), > > >> em_sysctl_reg_handler, "IU", > > >> "Transmit Descriptor Head"); > > >> SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "txd_tail", > > >> - CTLFLAG_RD, adapter, > E1000_TDT(txr->me), > > >> + CTLFLAG_RD, adapter, > > >> + E1000_TDT(txr->me), > > >> em_sysctl_reg_handler, "IU", > > >> "Transmit Descriptor Tail"); > > >> SYSCTL_ADD_ULONG(ctx, queue_list, OID_AUTO, "tx_irq", > > >> @@ -5123,11 +5119,13 @@ > > >> "Queue No Descriptor Available"); > > >> > > >> SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "rxd_head", > > >> - CTLFLAG_RD, adapter, > E1000_RDH(rxr->me), > > >> + CTLFLAG_RD, adapter, > > >> + E1000_RDH(rxr->me), > > >> em_sysctl_reg_handler, "IU", > > >> "Receive Descriptor Head"); > > >> SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, "rxd_tail", > > >> - CTLFLAG_RD, adapter, > E1000_RDT(rxr->me), > > >> + CTLFLAG_RD, adapter, > > >> + E1000_RDT(rxr->me), > > >> em_sysctl_reg_handler, "IU", > > >> "Receive Descriptor Tail"); > > >> SYSCTL_ADD_ULONG(ctx, queue_list, OID_AUTO, "rx_irq", > > >> @@ -5141,19 +5139,19 @@ > > >> CTLFLAG_RD, NULL, "Statistics"); > > >> stat_list = SYSCTL_CHILDREN(stat_node); > > >> > > >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "excess_coll", > > >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "excess_coll", > > >> CTLFLAG_RD, &stats->ecol, > > >> "Excessive collisions"); > > >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "single_coll", > > >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "single_coll", > > >> CTLFLAG_RD, &stats->scc, > > >> "Single collisions"); > > >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "multiple_coll", > > >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "multiple_coll", > > >> CTLFLAG_RD, &stats->mcc, > > >> "Multiple collisions"); > > >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "late_coll", > > >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "late_coll", > > >> CTLFLAG_RD, &stats->latecol, > > >> "Late collisions"); > > >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "collision_count", > > >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "collision_count", > > >> CTLFLAG_RD, &stats->colc, > > >> "Collision Count"); > > >> SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "symbol_errors", > > >> @@ -5240,12 +5238,12 @@ > > >> SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, > "rx_frames_1024_1522", > > >> CTLFLAG_RD, &adapter->stats.prc1522, > > >> "1023-1522 byte frames received"); > > >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "good_octets_recvd", > > >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "good_octets_recvd", > > >> CTLFLAG_RD, &adapter->stats.gorc, > > >> "Good Octets Received"); > > >> > > >> /* Packet Transmission Stats */ > > >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "good_octets_txd", > > >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "good_octets_txd", > > >> CTLFLAG_RD, &adapter->stats.gotc, > > >> "Good Octets Transmitted"); > > >> SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, "total_pkts_txd", > > >> > > >> -- > > >> ------------------- > > >> Mike Tancsa, tel +1 519 651 3400 > > >> Sentex Communications, mike@sentex.net > > >> Providing Internet services since 1994 www.sentex.net > > >> Cambridge, Ontario Canada http://www.tancsa.com/ > > >> > > > > > > > > > -- > > ------------------- > > Mike Tancsa, tel +1 519 651 3400 > > Sentex Communications, mike@sentex.net > > Providing Internet services since 1994 www.sentex.net > > Cambridge, Ontario Canada http://www.tancsa.com/ > > _______________________________________________ > > freebsd-net@freebsd.org mailing list > > http://lists.freebsd.org/mailman/listinfo/freebsd-net > > To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org" > > > From owner-freebsd-hardware@FreeBSD.ORG Fri Feb 4 19:22:09 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B0AFD1065672; Fri, 4 Feb 2011 19:22:09 +0000 (UTC) (envelope-from seanbru@yahoo-inc.com) Received: from mrout1-b.corp.re1.yahoo.com (mrout1-b.corp.re1.yahoo.com [69.147.107.20]) by mx1.freebsd.org (Postfix) with ESMTP id 61CF98FC16; Fri, 4 Feb 2011 19:22:09 +0000 (UTC) Received: from [127.0.0.1] (rideseveral.corp.yahoo.com [10.73.160.231]) by mrout1-b.corp.re1.yahoo.com (8.14.4/8.14.4/y.out) with ESMTP id p14JLfeI076851; Fri, 4 Feb 2011 11:21:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=yahoo-inc.com; s=cobra; t=1296847302; bh=LnUiV52+/Ki6nwyPPPY3NxOKuMICyCwMiOChbOkrA/o=; h=Subject:From:To:Cc:In-Reply-To:References:Content-Type:Date: Message-ID:Mime-Version:Content-Transfer-Encoding; b=fsQo73O8U8lEVR2uv3FO3YPEW0CUi9a0XtQx8TeOGmh6a91SN26K3zK6f1gG1oD2x XM7ri/qnApyl6fbyTRwY9YUNiiW5JIP8APml1cYdobe6wrXpP2p84YOZjNzKGXn9W/ 7N67irWL//XA6C9duZ3EobuOBC5waq3KONY1x34Y= From: Sean Bruno To: Jack Vogel In-Reply-To: References: <1290533941.3173.50.camel@home-yahoo> <4CEC0548.1080801@sentex.net> <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> <1296591565.2326.7.camel@hitfishpass-lx.corp.yahoo.com> <1296597827.2326.12.camel@hitfishpass-lx.corp.yahoo.com> <4D48C973.7080503@sentex.net> <4D49A26B.5050803@sentex.net> <1296842996.2233.0.camel@hitfishpass-lx.corp.yahoo.com> Content-Type: text/plain; charset="UTF-8" Date: Fri, 04 Feb 2011 11:21:40 -0800 Message-ID: <1296847300.2509.0.camel@hitfishpass-lx.corp.yahoo.com> Mime-Version: 1.0 X-Mailer: Evolution 2.32.1 (2.32.1-1.fc14) Content-Transfer-Encoding: 7bit Cc: "freebsd-net@freebsd.org" , "freebsd-hardware@freebsd.org" , Ivan Voras , Jan Koum , Mike Tancsa Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 04 Feb 2011 19:22:09 -0000 meh, patience is not one of my character traits. :-) Sean On Fri, 2011-02-04 at 10:12 -0800, Jack Vogel wrote: > Was curious too, but being more patient than you :) > > Jack > > > On Fri, Feb 4, 2011 at 10:09 AM, Sean Bruno > wrote: > Any more data on this problem or do we have to wait a while? > > Sean > > > > On Wed, 2011-02-02 at 10:28 -0800, Mike Tancsa wrote: > > On 2/2/2011 12:37 PM, Jack Vogel wrote: > > > So has everyone that wanted to get something testing been > able to do so? > > > > I have been testing in the back and will deploy to my > production box > > this afternoon. As I am not able to reproduce it easily, it > will be a > > bit before I can say the issue is gone. Jan however, was > able to > > trigger it with greater ease ? > > > > ---Mike > > > > > > > > Jack > > > > > > > > > On Tue, Feb 1, 2011 at 7:03 PM, Mike Tancsa > wrote: > > > > > >> On 2/1/2011 5:03 PM, Sean Bruno wrote: > > >>> On Tue, 2011-02-01 at 13:43 -0800, Jack Vogel wrote: > > >>>> To those who are going to test, here is the if_em.c, > based on head, > > >>>> with my > > >>>> changes, I have to leave for the afternoon, and have > not had a chance > > >>>> to build > > >>>> this, but it should work. I will check back in the > later evening. > > >>>> > > >>>> Any blatant problems Sean, feel free to fix them :) > > >>>> > > >>>> Jack > > >>>> > > >>> > > >>> > > >>> I suspect that line 1490 should be: > > >>> if (more_rx || (ifp->if_drv_flags & > IFF_DRV_OACTIVE)) { > > >>> > > >> > > >> > > >> I have hacked up a RELENG_8 version which I think is > correct including > > >> the above change > > >> > > >> http://www.tancsa.com/if_em-8.c > > >> > > >> > > >> > > >> --- if_em.c.orig 2011-02-01 21:47:14.000000000 > -0500 > > >> +++ if_em.c 2011-02-01 21:47:19.000000000 -0500 > > >> @@ -30,7 +30,7 @@ > > >> POSSIBILITY OF SUCH DAMAGE. > > >> > > >> > > >> > ******************************************************************************/ > > >> -/*$FreeBSD: src/sys/dev/e1000/if_em.c,v 1.21.2.20 > 2011/01/22 01:37:53 > > >> jfv Exp $*/ > > >> +/*$FreeBSD$*/ > > >> > > >> #ifdef HAVE_KERNEL_OPTION_HEADERS > > >> #include "opt_device_polling.h" > > >> @@ -93,7 +93,7 @@ > > >> > /********************************************************************* > > >> * Driver version: > > >> > *********************************************************************/ > > >> -char em_driver_version[] = "7.1.9"; > > >> +char em_driver_version[] = "7.1.9-test"; > > >> > > >> > /********************************************************************* > > >> * PCI Device ID Table > > >> @@ -927,11 +927,10 @@ > > >> if (!adapter->link_active) > > >> return; > > >> > > >> - /* Call cleanup if number of TX descriptors low > */ > > >> - if (txr->tx_avail <= EM_TX_CLEANUP_THRESHOLD) > > >> - em_txeof(txr); > > >> - > > >> while (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) { > > >> + /* First cleanup if TX descriptors low */ > > >> + if (txr->tx_avail <= > EM_TX_CLEANUP_THRESHOLD) > > >> + em_txeof(txr); > > >> if (txr->tx_avail < EM_MAX_SCATTER) { > > >> ifp->if_drv_flags |= > IFF_DRV_OACTIVE; > > >> break; > > >> @@ -1411,8 +1410,7 @@ > > >> if (!drbr_empty(ifp, txr->br)) > > >> em_mq_start_locked(ifp, txr, NULL); > > >> #else > > >> - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) > > >> - em_start_locked(ifp, txr); > > >> + em_start_locked(ifp, txr); > > >> #endif > > >> EM_TX_UNLOCK(txr); > > >> > > >> @@ -1475,11 +1473,10 @@ > > >> struct ifnet *ifp = adapter->ifp; > > >> struct tx_ring *txr = adapter->tx_rings; > > >> struct rx_ring *rxr = adapter->rx_rings; > > >> - bool more; > > >> - > > >> > > >> if (ifp->if_drv_flags & IFF_DRV_RUNNING) { > > >> - more = em_rxeof(rxr, > adapter->rx_process_limit, NULL); > > >> + bool more_rx; > > >> + more_rx = em_rxeof(rxr, > adapter->rx_process_limit, NULL); > > >> > > >> EM_TX_LOCK(txr); > > >> em_txeof(txr); > > >> @@ -1487,12 +1484,10 @@ > > >> if (!drbr_empty(ifp, txr->br)) > > >> em_mq_start_locked(ifp, txr, > NULL); > > >> #else > > >> - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) > > >> - em_start_locked(ifp, txr); > > >> + em_start_locked(ifp, txr); > > >> #endif > > >> - em_txeof(txr); > > >> EM_TX_UNLOCK(txr); > > >> - if (more) { > > >> + if (more_rx || (ifp->if_drv_flags & > IFF_DRV_OACTIVE)) { > > >> taskqueue_enqueue(adapter->tq, > &adapter->que_task); > > >> return; > > >> } > > >> @@ -1604,7 +1599,6 @@ > > >> if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) > > >> em_start_locked(ifp, txr); > > >> #endif > > >> - em_txeof(txr); > > >> E1000_WRITE_REG(&adapter->hw, E1000_IMS, > txr->ims); > > >> EM_TX_UNLOCK(txr); > > >> } > > >> @@ -3730,17 +3724,17 @@ > > >> txr->queue_status = EM_QUEUE_HUNG; > > >> > > >> /* > > >> - * If we have enough room, clear IFF_DRV_OACTIVE > > >> + * If we have a minimum free, clear > IFF_DRV_OACTIVE > > >> * to tell the stack that it is OK to send > packets. > > >> */ > > >> - if (txr->tx_avail > EM_TX_CLEANUP_THRESHOLD) { > > >> + if (txr->tx_avail > EM_MAX_SCATTER) > > >> ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; > > >> - /* Disable watchdog if all clean */ > > >> - if (txr->tx_avail == > adapter->num_tx_desc) { > > >> - txr->queue_status = > EM_QUEUE_IDLE; > > >> - return (FALSE); > > >> - } > > >> - } > > >> + > > >> + /* Disable watchdog if all clean */ > > >> + if (txr->tx_avail == adapter->num_tx_desc) { > > >> + txr->queue_status = EM_QUEUE_IDLE; > > >> + return (FALSE); > > >> + } > > >> > > >> return (TRUE); > > >> } > > >> @@ -5064,8 +5058,8 @@ > > >> char namebuf[QUEUE_NAME_LEN]; > > >> > > >> /* Driver Statistics */ > > >> - SYSCTL_ADD_UINT(ctx, child, OID_AUTO, "link_irq", > > >> - CTLFLAG_RD, &adapter->link_irq, > 0, > > >> + SYSCTL_ADD_UINT(ctx, child, OID_AUTO, "link_irq", > > >> + CTLFLAG_RD, &adapter->link_irq,0, > > >> "Link MSIX IRQ Handled"); > > >> SYSCTL_ADD_ULONG(ctx, child, OID_AUTO, > "mbuf_alloc_fail", > > >> CTLFLAG_RD, > &adapter->mbuf_alloc_failed, > > >> @@ -5108,11 +5102,13 @@ > > >> queue_list = SYSCTL_CHILDREN(queue_node); > > >> > > >> SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, > "txd_head", > > >> - CTLFLAG_RD, adapter, > E1000_TDH(txr->me), > > >> + CTLFLAG_RD, adapter, > > >> + E1000_TDH(txr->me), > > >> em_sysctl_reg_handler, > "IU", > > >> "Transmit Descriptor > Head"); > > >> SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, > "txd_tail", > > >> - CTLFLAG_RD, adapter, > E1000_TDT(txr->me), > > >> + CTLFLAG_RD, adapter, > > >> + E1000_TDT(txr->me), > > >> em_sysctl_reg_handler, > "IU", > > >> "Transmit Descriptor > Tail"); > > >> SYSCTL_ADD_ULONG(ctx, queue_list, > OID_AUTO, "tx_irq", > > >> @@ -5123,11 +5119,13 @@ > > >> "Queue No Descriptor > Available"); > > >> > > >> SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, > "rxd_head", > > >> - CTLFLAG_RD, adapter, > E1000_RDH(rxr->me), > > >> + CTLFLAG_RD, adapter, > > >> + E1000_RDH(rxr->me), > > >> em_sysctl_reg_handler, > "IU", > > >> "Receive Descriptor > Head"); > > >> SYSCTL_ADD_PROC(ctx, queue_list, OID_AUTO, > "rxd_tail", > > >> - CTLFLAG_RD, adapter, > E1000_RDT(rxr->me), > > >> + CTLFLAG_RD, adapter, > > >> + E1000_RDT(rxr->me), > > >> em_sysctl_reg_handler, > "IU", > > >> "Receive Descriptor > Tail"); > > >> SYSCTL_ADD_ULONG(ctx, queue_list, > OID_AUTO, "rx_irq", > > >> @@ -5141,19 +5139,19 @@ > > >> CTLFLAG_RD, NULL, > "Statistics"); > > >> stat_list = SYSCTL_CHILDREN(stat_node); > > >> > > >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, > "excess_coll", > > >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, > "excess_coll", > > >> CTLFLAG_RD, &stats->ecol, > > >> "Excessive collisions"); > > >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, > "single_coll", > > >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, > "single_coll", > > >> CTLFLAG_RD, &stats->scc, > > >> "Single collisions"); > > >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, > "multiple_coll", > > >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, > "multiple_coll", > > >> CTLFLAG_RD, &stats->mcc, > > >> "Multiple collisions"); > > >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, > "late_coll", > > >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, > "late_coll", > > >> CTLFLAG_RD, &stats->latecol, > > >> "Late collisions"); > > >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, > "collision_count", > > >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, > "collision_count", > > >> CTLFLAG_RD, &stats->colc, > > >> "Collision Count"); > > >> SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, > "symbol_errors", > > >> @@ -5240,12 +5238,12 @@ > > >> SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, > "rx_frames_1024_1522", > > >> CTLFLAG_RD, > &adapter->stats.prc1522, > > >> "1023-1522 byte frames received"); > > >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, > "good_octets_recvd", > > >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, > "good_octets_recvd", > > >> CTLFLAG_RD, &adapter->stats.gorc, > > >> "Good Octets Received"); > > >> > > >> /* Packet Transmission Stats */ > > >> - SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, > "good_octets_txd", > > >> + SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, > "good_octets_txd", > > >> CTLFLAG_RD, &adapter->stats.gotc, > > >> "Good Octets Transmitted"); > > >> SYSCTL_ADD_QUAD(ctx, stat_list, OID_AUTO, > "total_pkts_txd", > > >> > > >> -- > > >> ------------------- > > >> Mike Tancsa, tel +1 519 651 3400 > > >> Sentex Communications, mike@sentex.net > > >> Providing Internet services since 1994 www.sentex.net > > >> Cambridge, Ontario Canada http://www.tancsa.com/ > > >> > > > > > > > > > -- > > ------------------- > > Mike Tancsa, tel +1 519 651 3400 > > Sentex Communications, mike@sentex.net > > Providing Internet services since 1994 www.sentex.net > > Cambridge, Ontario Canada http://www.tancsa.com/ > > > > _______________________________________________ > > freebsd-net@freebsd.org mailing list > > http://lists.freebsd.org/mailman/listinfo/freebsd-net > > To unsubscribe, send any mail to > "freebsd-net-unsubscribe@freebsd.org" > > > > From owner-freebsd-hardware@FreeBSD.ORG Sat Feb 5 01:51:33 2011 Return-Path: Delivered-To: freebsd-hardware@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2391C106566B; Sat, 5 Feb 2011 01:51:33 +0000 (UTC) (envelope-from mike@sentex.net) Received: from smarthost1.sentex.ca (smarthost1-6.sentex.ca [IPv6:2607:f3e0:0:1::12]) by mx1.freebsd.org (Postfix) with ESMTP id C2A7E8FC14; Sat, 5 Feb 2011 01:51:32 +0000 (UTC) Received: from [IPv6:2607:f3e0:0:4:f025:8813:7603:7e4a] (saphire3.sentex.ca [IPv6:2607:f3e0:0:4:f025:8813:7603:7e4a]) by smarthost1.sentex.ca (8.14.4/8.14.4) with ESMTP id p151pUgr033611 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Fri, 4 Feb 2011 20:51:30 -0500 (EST) (envelope-from mike@sentex.net) Message-ID: <4D4CAD16.2030502@sentex.net> Date: Fri, 04 Feb 2011 20:51:18 -0500 From: Mike Tancsa Organization: Sentex Communications User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101207 Thunderbird/3.1.7 MIME-Version: 1.0 To: Sean Bruno References: <1290533941.3173.50.camel@home-yahoo> <4CEC0548.1080801@sentex.net> <4D2C636B.5040003@sentex.net> <4D3C4795.40205@sentex.net> <4D42EA74.4090807@sentex.net> <1296590190.2326.6.camel@hitfishpass-lx.corp.yahoo.com> <1296591565.2326.7.camel@hitfishpass-lx.corp.yahoo.com> <1296597827.2326.12.camel@hitfishpass-lx.corp.yahoo.com> <4D48C973.7080503@sentex.net> <4D49A26B.5050803@sentex.net> <1296842996.2233.0.camel@hitfishpass-lx.corp.yahoo.com> In-Reply-To: <1296842996.2233.0.camel@hitfishpass-lx.corp.yahoo.com> X-Enigmail-Version: 1.1.1 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.67 on IPv6:2607:f3e0:0:1::12 Cc: "freebsd-net@freebsd.org" , "freebsd-hardware@freebsd.org" , Jack Vogel , Jan Koum , Ivan Voras Subject: Re: em driver, 82574L chip, and possibly ASPM X-BeenThere: freebsd-hardware@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: General discussion of FreeBSD hardware List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 05 Feb 2011 01:51:33 -0000 On 2/4/2011 1:09 PM, Sean Bruno wrote: > Any more data on this problem or do we have to wait a while? On my RELENG_8 production box, so far so good. It usually would hang on weekend runs, so tomorrow would be a good sign, but not a proof that its fixed as it has on occasion survived a few weeks in a row. I am running the version Jack posted with the one change Sean suggested and is at http://www.tancsa.com/if_em-8.c I am also using all default options for the two onboard nics em0: flags=8843 metric 0 mtu 1500 options=219b em1: flags=8843 metric 0 mtu 1500 options=219b em0: port 0x4040-0x405f mem 0xb4500000-0xb451ffff,0xb4525000-0xb4525fff irq 16 at device 25.0 on pci0 em0: Using an MSI interrupt em0: [FILTER] em0: Ethernet address: 00:15:17:ed:68:a5 em1: port 0x2000-0x201f mem 0xb4100000-0xb411ffff,0xb4120000-0xb4123fff irq 16 at device 0.0 on pci10 em1: Using MSIX interrupts with 3 vectors em1: [ITHREAD] em1: [ITHREAD] em1: [ITHREAD] em1: Ethernet address: 00:15:17:ed:68:a4 em0: link state changed to UP em1: link state changed to UP ---Mike -- ------------------- Mike Tancsa, tel +1 519 651 3400 Sentex Communications, mike@sentex.net Providing Internet services since 1994 www.sentex.net Cambridge, Ontario Canada http://www.tancsa.com/