From owner-freebsd-bugs@FreeBSD.ORG Wed Jan 12 19:40:05 2011 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 98743106566C for ; Wed, 12 Jan 2011 19:40:05 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 57D038FC12 for ; Wed, 12 Jan 2011 19:40:05 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.4/8.14.4) with ESMTP id p0CJe5qx010783 for ; Wed, 12 Jan 2011 19:40:05 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.4/8.14.4/Submit) id p0CJe5qp010782; Wed, 12 Jan 2011 19:40:05 GMT (envelope-from gnats) Resent-Date: Wed, 12 Jan 2011 19:40:05 GMT Resent-Message-Id: <201101121940.p0CJe5qp010782@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Andrew Boyer Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7A2E01065674 for ; Wed, 12 Jan 2011 19:32:34 +0000 (UTC) (envelope-from nobody@FreeBSD.org) Received: from red.freebsd.org (unknown [IPv6:2001:4f8:fff6::22]) by mx1.freebsd.org (Postfix) with ESMTP id 69CBB8FC12 for ; Wed, 12 Jan 2011 19:32:34 +0000 (UTC) Received: from red.freebsd.org (localhost [127.0.0.1]) by red.freebsd.org (8.14.4/8.14.4) with ESMTP id p0CJWYha023881 for ; Wed, 12 Jan 2011 19:32:34 GMT (envelope-from nobody@red.freebsd.org) Received: (from nobody@localhost) by red.freebsd.org (8.14.4/8.14.4/Submit) id p0CJWYAl023880; Wed, 12 Jan 2011 19:32:34 GMT (envelope-from nobody) Message-Id: <201101121932.p0CJWYAl023880@red.freebsd.org> Date: Wed, 12 Jan 2011 19:32:34 GMT From: Andrew Boyer To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-3.1 Cc: Subject: kern/153936: [ixgbe] [patch] MPRC workaround incorrectly applied to 82599 X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Jan 2011 19:40:05 -0000 >Number: 153936 >Category: kern >Synopsis: [ixgbe] [patch] MPRC workaround incorrectly applied to 82599 >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Wed Jan 12 19:40:04 UTC 2011 >Closed-Date: >Last-Modified: >Originator: Andrew Boyer >Release: -current >Organization: Avere Systems >Environment: N/A >Description: ixgbe_update_stats_counters() used a workaround for the MPC register described in the Intel 82598 sightings list. This workaround (subtracting bprc from mprc) is always used, even on 82599 hardware where it is not applicable. The result is an incorrect (sometimes negative) multicast packets received count on 82599 interfaces. >How-To-Repeat: "sysctl dev.ix.0" on an 82599 controller, soon after boot: dev.ix.0.mac_stats.good_pkts_rcvd: 97 dev.ix.0.mac_stats.mcast_pkts_rcvd: -64 dev.ix.0.mac_stats.bcast_pkts_rcvd: 79 >Fix: Make this conditional on the MAC type: /* * Workaround: mprc hardware is incorrectly counting * broadcasts, so for now we subtract those. */ bprc = IXGBE_READ_REG(hw, IXGBE_BPRC); adapter->stats.bprc += bprc; adapter->stats.mprc += IXGBE_READ_REG(hw, IXGBE_MPRC); adapter->stats.mprc -= bprc; >Release-Note: >Audit-Trail: >Unformatted: