Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 1 Oct 2008 15:16:46 -0700
From:      "Jack Vogel" <jfvogel@gmail.com>
To:        "George V. Neville-Neil" <gnn@neville-neil.com>,  "John Baldwin" <jhb@yahoo-inc.com>, "Scott Long" <scottl@samsco.org>,  "Kip Macy" <kmacy@freebsd.org>,  "Jeff Roberson" <jroberson@jroberson.net>,  "freebsd-net@freebsd.org" <freebsd-net@freebsd.org>
Subject:   potential nasty bug in igb and ixgbe
Message-ID:  <2a41acea0810011516u77ca05b1k2df527e453dfe392@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?2a41acea0810011516u77ca05b1k2df527e453dfe392>