All of lore.kernel.org
 help / color / mirror / Atom feed
From: linas@austin.ibm.com (Linas Vepstas)
To: Auke Kok <auke-jan.h.kok@intel.com>
Cc: "Zhang, Yanmin" <yanmin_zhang@linux.intel.com>,
	Jesse Brandeburg <jesse.brandeburg@intel.com>,
	"Ronciak, John" <john.ronciak@intel.com>,
	"bibo,mao" <bibo.mao@intel.com>,
	Rajesh Shah <rajesh.shah@intel.com>,
	Grant Grundler <grundler@parisc-linux.org>,
	akpm@osdl.org, LKML <linux-kernel@vger.kernel.org>,
	linux-pci maillist <linux-pci@atrey.karlin.mff.cuni.cz>,
	netdev@vger.kernel.org, wenxiong@us.ibm.com
Subject: Re: [PATCH] ixgb: add PCI Error recovery callbacks
Date: Wed, 5 Jul 2006 14:44:37 -0500	[thread overview]
Message-ID: <20060705194437.GJ29526@austin.ibm.com> (raw)
In-Reply-To: <44ABDF87.8000801@intel.com>

On Wed, Jul 05, 2006 at 08:49:27AM -0700, Auke Kok wrote:
> Zhang, Yanmin wrote:
> >On Fri, 2006-06-30 at 00:26, Linas Vepstas wrote:
> >>Adds PCI Error recovery callbacks to the Intel 10-gigabit ethernet
> >>ixgb device driver. Lightly tested, works.
> >
> >Both pci_disable_device and ixgb_down would access the device. It doesn't
> >follow Documentation/pci-error-recovery.txt that error_detected shouldn't 
> >do
> >any access to the device.
> 
> Moreover, it was Linas who wrote this documentation in the first place :)

On the pSeries, its harmless to try to do i/o; the i/o will e blocked. 

> Linas, have you tried moving the e1000_down() call into the _reset part? I 
> suspect that the e1000_reset() in there however may already be sufficient.

I wanted to perform all of the "down" type functions BEFORE the reset. 
The idea is to get the device driver and the various parts of the 
Linux kernel into a state that would be consisten with a reset.

I don't want to do these functions after the reset, since, at this
point, the card is a "clean slate"; it has the PCI bars set, but 
nothing else.  Doing random i/o to it at this point could confuse
the card; instead, one wants to bring the card up using the usual
bringup sequence.

For example, I tipped over one rather confusing bug: new code 
in the -mm tree blocks a pci_enable_device() if it thinks the
card is already enabled (even if its not). Doing I/O to a card
that is not enabled will cause either a target abort or a master 
abort.  Thus, I found I had to call pci_disable_device(); and it
seemed that the best time to do this would be before the reset, not
afterwords.  However, I did not play at length with other possibilities.

I recently lost access to my ixgb cards, and so can't do more testing
just right now.

--linas



  reply	other threads:[~2006-07-05 19:44 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-06-29 16:26 [PATCH] ixgb: add PCI Error recovery callbacks Linas Vepstas
2006-07-03  5:49 ` Zhang, Yanmin
2006-07-05 15:49   ` Auke Kok
2006-07-05 19:44     ` Linas Vepstas [this message]
2006-07-06  1:21       ` Zhang, Yanmin
2006-07-06 16:16         ` Linas Vepstas
2006-07-06 18:01           ` Auke Kok
2006-07-06 18:50             ` Linas Vepstas
2006-07-06 21:52               ` Linas Vepstas

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20060705194437.GJ29526@austin.ibm.com \
    --to=linas@austin.ibm.com \
    --cc=akpm@osdl.org \
    --cc=auke-jan.h.kok@intel.com \
    --cc=bibo.mao@intel.com \
    --cc=grundler@parisc-linux.org \
    --cc=jesse.brandeburg@intel.com \
    --cc=john.ronciak@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@atrey.karlin.mff.cuni.cz \
    --cc=netdev@vger.kernel.org \
    --cc=rajesh.shah@intel.com \
    --cc=wenxiong@us.ibm.com \
    --cc=yanmin_zhang@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.