From owner-freebsd-net@FreeBSD.ORG Fri Oct 3 20:19:32 2008 Return-Path: Delivered-To: freebsd-net@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7D6CF106564A for ; Fri, 3 Oct 2008 20:19:32 +0000 (UTC) (envelope-from scottl@samsco.org) Received: from pooker.samsco.org (pooker.samsco.org [168.103.85.57]) by mx1.freebsd.org (Postfix) with ESMTP id E768C8FC08 for ; Fri, 3 Oct 2008 20:19:31 +0000 (UTC) (envelope-from scottl@samsco.org) Received: from pooker.samsco.home (pooker.samsco.home [192.168.254.1]) by pooker.samsco.org (8.14.2/8.14.2) with ESMTP id m93JuUvF003540; Fri, 3 Oct 2008 13:56:31 -0600 (MDT) (envelope-from scottl@samsco.org) Date: Fri, 3 Oct 2008 13:56:30 -0600 (MDT) From: Scott Long To: Jack Vogel In-Reply-To: <2a41acea0810011516u77ca05b1k2df527e453dfe392@mail.gmail.com> Message-ID: <20081003135625.C39726@pooker.samsco.org> References: <2a41acea0810011516u77ca05b1k2df527e453dfe392@mail.gmail.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Spam-Status: No, score=-4.4 required=3.8 tests=ALL_TRUSTED,BAYES_00 autolearn=ham version=3.1.8 X-Spam-Checker-Version: SpamAssassin 3.1.8 (2007-02-13) on pooker.samsco.org Cc: "freebsd-net@freebsd.org" , Jeff Roberson , Kip Macy , John Baldwin Subject: Re: potential nasty bug in igb and ixgbe X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 03 Oct 2008 20:19:32 -0000 I'll bite. Scott On Wed, 1 Oct 2008, Jack Vogel wrote: > Jeff Roberson uncovered an issue that might be behind any number of > possible problems. > > Our newer hardware (meaning those supported by the igb and ixgbe > drivers) overwrites the buffer address in the RX > descriptor with a variety of data in support of advanced features (see > the relevant header files for details). > > However, in the rxeof code, if you fail to get a new mbuf, and hence, > will discard, the descriptor is being left in the wb form, > meaning that the address is jibberish for the next time the engine > uses that descriptor. > > I am modifying get_buf so that it fixes the address in the descriptor > when this happens. I know when my test group has had > the igb driver under heavy load they have had some panics, right now > I'm not sure if this has been at the root of those or not. > > If you want to see how I'm changing the code just speak up :) And > thanks for finding this Jeff. > > Jack >