From owner-freebsd-hackers@FreeBSD.ORG Mon Aug 31 19:15:56 2009 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5D1781065676 for ; Mon, 31 Aug 2009 19:15:56 +0000 (UTC) (envelope-from brampton@gmail.com) Received: from mail-bw0-f206.google.com (mail-bw0-f206.google.com [209.85.218.206]) by mx1.freebsd.org (Postfix) with ESMTP id A773A8FC12 for ; Mon, 31 Aug 2009 19:15:55 +0000 (UTC) Received: by bwz2 with SMTP id 2so2825776bwz.43 for ; Mon, 31 Aug 2009 12:15:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:sender:received:in-reply-to :references:date:x-google-sender-auth:message-id:subject:from:to:cc :content-type; bh=M2rxl5pNgHSu5E/yLjFBXZ+wAg5g5sZfnMFgHGsGXdw=; b=qSrNuCA245Pcbj2QN+jv3JlPDQHzIIRHmJ1YNVhIOE6YYXGl6ET7JobhbIGsHA9sFJ 0X1p0wpR5olYkvnulvM4bnbm5d9qRzzebMPh4Z+qzuyYaUax94jVFWvElz+ShNUFvOhp k/KLYxTwBlBifoe0dwz5Y9TcvWHg7B6a+LSrQ= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; b=eYmfyjFCVispsBl6C05anMrdxOY2H+BFVzKSZua806y9gnSmOYUR1bztYIvIoipqYU 3xsm4Vs5zv/COgyRaggVuMqBNj551nFeXXOQMqyg7IVuvm+ZR8eYZ7EgCL+gQiDPmLRh EboChNr4Acrs+IKVhcdXSdr59HJ83YOdTTwzE= MIME-Version: 1.0 Sender: brampton@gmail.com Received: by 10.223.53.149 with SMTP id m21mr1876824fag.101.1251746153730; Mon, 31 Aug 2009 12:15:53 -0700 (PDT) In-Reply-To: <200908310804.27417.jhb@freebsd.org> References: <200908310804.27417.jhb@freebsd.org> Date: Mon, 31 Aug 2009 20:15:53 +0100 X-Google-Sender-Auth: 2b152fec2dab2833 Message-ID: From: Andrew Brampton To: John Baldwin Content-Type: multipart/mixed; boundary=001517473652d794ef047274dcf6 Cc: jfv@freebsd.org, freebsd-hackers@freebsd.org Subject: Re: netstat -i Ierrs column, Is it total, or per second? X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 31 Aug 2009 19:15:56 -0000 --001517473652d794ef047274dcf6 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable 2009/8/31 John Baldwin : > It should be total and it sounds like a bug in the device driver. =C2=A0I= t looks > like ixgbe_update_stats_counters() overwrites the accumulated value of > if_ierrors: > > =C2=A0 =C2=A0 =C2=A0 =C2=A0/* Rx Errors */ > =C2=A0 =C2=A0 =C2=A0 =C2=A0ifp->if_ierrors =3D total_missed_rx + adapter-= >stats.crcerrs + > =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0adapter->stats.rle= c; > > It also increments if_ierrors in ixgbe_rxeof(). =C2=A0The driver should o= nly do one > or the other, but probably not both. > > -- > John Baldwin > Thanks for your reply. I had wondered that, but looking at e1000/if_em.c it does a similar thing. However, a quick look at non-intel drivers and it seems others don't. So perhaps this is a problem across the intel drivers? So anyway I spent my afternoon reading the ixgbe spec sheet and creating the attached patch, which hopefully fixes this problem. I will forward this patch to freebsd intel.com unless someone can point me toward the maintainers email address, or should I just create a PR? thanks Andrew --001517473652d794ef047274dcf6 Content-Type: text/plain; charset=US-ASCII; name="freebsd-ixgbe.ierrors.patch.txt" Content-Disposition: attachment; filename="freebsd-ixgbe.ierrors.patch.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_fz1lbj720 ZGlmZiAtdSBpeGdiZS5vbGQvaXhnYmUuYyBpeGdiZS9peGdiZS5jCi0tLSBpeGdiZS5vbGQvaXhn YmUuYwkyMDA5LTA4LTMxIDE4OjE1OjA1LjAwMDAwMDAwMCArMDEwMAorKysgaXhnYmUvaXhnYmUu YwkyMDA5LTA4LTMxIDE5OjUyOjE0LjAwMDAwMDAwMCArMDEwMApAQCAtMzk3OCw3ICszOTc4LDYg QEAKIAogCQkJaWYgKGVvcCkgewogCQkJCXJ4ci0+Zm1wLT5tX3BrdGhkci5yY3ZpZiA9IGlmcDsK LQkJCQlpZnAtPmlmX2lwYWNrZXRzKys7CiAJCQkJcnhyLT5yeF9wYWNrZXRzKys7CiAJCQkJLyog Y2FwdHVyZSBkYXRhIGZvciBBSU0gKi8KIAkJCQlyeHItPmJ5dGVzICs9IHJ4ci0+Zm1wLT5tX3Br dGhkci5sZW47CkBAIC00MDAwLDggKzM5OTksOSBAQAogCQkJCXJ4ci0+bG1wID0gTlVMTDsKIAkJ CX0KIAkJfSBlbHNlIHsKLQkJCWlmcC0+aWZfaWVycm9ycysrOwogZGlzY2FyZDoKKwkJCWFkYXB0 ZXItPmRyb3BwZWRfcGt0cysrOworCiAJCQkvKiBSZXVzZSBsb2FkZWQgRE1BIG1hcCBhbmQganVz dCB1cGRhdGUgbWJ1ZiBjaGFpbiAqLwogCQkJaWYgKGhsZW4pIHsKIAkJCQltaCA9IHJ4ci0+cnhf YnVmZmVyc1tpXS5tX2hlYWQ7CkBAIC00NDU5LDEyICs0NDU5LDE1IEBACiAJdTMyICBtaXNzZWRf cnggPSAwLCBicHJjLCBseG9uLCBseG9mZiwgdG90YWw7CiAKIAlhZGFwdGVyLT5zdGF0cy5jcmNl cnJzICs9IElYR0JFX1JFQURfUkVHKGh3LCBJWEdCRV9DUkNFUlJTKTsKKwlhZGFwdGVyLT5zdGF0 cy5pbGxlcnJjICs9IElYR0JFX1JFQURfUkVHKGh3LCBJWEdCRV9JTExFUlJDKTsKKwlhZGFwdGVy LT5zdGF0cy5lcnJiYyAgICs9IElYR0JFX1JFQURfUkVHKGh3LCBJWEdCRV9FUlJCQyk7CiAKIAlm b3IgKGludCBpID0gMDsgaSA8IDg7IGkrKykgewogCQlpbnQgbXA7CiAJCW1wID0gSVhHQkVfUkVB RF9SRUcoaHcsIElYR0JFX01QQyhpKSk7CiAJCW1pc3NlZF9yeCArPSBtcDsKICAgICAgICAgCWFk YXB0ZXItPnN0YXRzLm1wY1tpXSArPSBtcDsKKyAgICAgICAgCWFkYXB0ZXItPnN0YXRzLm1wY3Rv dGFsICs9IG1wOwogCQlhZGFwdGVyLT5zdGF0cy5ybmJjW2ldICs9IElYR0JFX1JFQURfUkVHKGh3 LCBJWEdCRV9STkJDKGkpKTsKIAl9CiAKQEAgLTQ1MzIsOCArNDUzNSwxMSBAQAogCWlmcC0+aWZf Y29sbGlzaW9ucyA9IDA7CiAKIAkvKiBSeCBFcnJvcnMgKi8KLQlpZnAtPmlmX2llcnJvcnMgPSBt aXNzZWRfcnggKyBhZGFwdGVyLT5zdGF0cy5jcmNlcnJzICsKLQkJYWRhcHRlci0+c3RhdHMucmxl YzsKKwlpZnAtPmlmX2llcnJvcnMgPSBhZGFwdGVyLT5zdGF0cy5tcGN0b3RhbCArCisJICAgICAg ICAgICAgICAgICAgYWRhcHRlci0+c3RhdHMuY3JjZXJycyArCisJICAgICAgICAgICAgICAgICAg YWRhcHRlci0+c3RhdHMuaWxsZXJyYyArCisJICAgICAgICAgICAgICAgICAgYWRhcHRlci0+c3Rh dHMuZXJyYmMgKworCSAgICAgICAgICAgICAgICAgIGFkYXB0ZXItPnN0YXRzLnJsZWM7CiB9Cgo= --001517473652d794ef047274dcf6--