From owner-freebsd-net@FreeBSD.ORG Wed Oct 1 22:16:48 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 A8DC2106564A for ; Wed, 1 Oct 2008 22:16:48 +0000 (UTC) (envelope-from jfvogel@gmail.com) Received: from mu-out-0910.google.com (mu-out-0910.google.com [209.85.134.187]) by mx1.freebsd.org (Postfix) with ESMTP id 31E3E8FC13 for ; Wed, 1 Oct 2008 22:16:47 +0000 (UTC) (envelope-from jfvogel@gmail.com) Received: by mu-out-0910.google.com with SMTP id i2so613200mue.3 for ; Wed, 01 Oct 2008 15:16:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to :subject:mime-version:content-type:content-transfer-encoding :content-disposition; bh=DGfhrc6OoT5HGoA6avk3zevO7xtjuPjcaPx5tUx8XEw=; b=qUirKG4r71dL0vShBRGALzgPU5GqpJNb29f8idZ8NJXihGY9q1f13/cDbsm9xaXsUM 80k7I8HXZBuB8JAn+ahMY4PK/GhlmWEZ8nRKeUmXQLjcqtp2Vwvs5519iljM1hjBlAcF DEAMqv9Xt7Y+PR7LBdV7swXUFtHqEaq/NF42k= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:mime-version:content-type :content-transfer-encoding:content-disposition; b=vzBnShwUnNXhTgJnqllTmnSH6cqirw0tQ92l3cK+2DdBhMhqw5eArujypFB8ST0xFE wcj8/9SqlFwt15Vv5IIWZ/xMrHQgTFvocgtkJaexbQTi4py5v7OVCLDgZYdbXNIr1Wlc 3sEh1u1Jog9H8l9SUwKlyWnQQpf2dY4bghrsA= Received: by 10.181.2.10 with SMTP id e10mr4975152bki.107.1222899406442; Wed, 01 Oct 2008 15:16:46 -0700 (PDT) Received: by 10.180.208.16 with HTTP; Wed, 1 Oct 2008 15:16:46 -0700 (PDT) Message-ID: <2a41acea0810011516u77ca05b1k2df527e453dfe392@mail.gmail.com> Date: Wed, 1 Oct 2008 15:16:46 -0700 From: "Jack Vogel" To: "George V. Neville-Neil" , "John Baldwin" , "Scott Long" , "Kip Macy" , "Jeff Roberson" , "freebsd-net@freebsd.org" MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline Cc: Subject: 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: Wed, 01 Oct 2008 22:16:48 -0000 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