[PATCH/RFC] ppc64: EEH + SCSI recovery (IPR only)

Linas Vepstas linas at austin.ibm.com
Fri Feb 25 10:28:22 EST 2005


On Thu, Feb 24, 2005 at 08:56:56AM -0600, Brian King was heard to remark:
> 
> I think we will all agree we are not working in a standard OO-style
> circle;)

Ah, come on, more and more OO stuff is sneaking into the kernel 
all the time. Its not a bad style (although I agree that much 
foolishness can be blamed on novice programmers carried away 
by giddy OO concepts).

> >>>+static void ipr_eeh_perm_failure (struct pci_dev *pdev, void * data)
> >>>+{
> >>>+	ipr_cmd->job_step = ipr_reset_shutdown_ioa;
> >>
> >>This needs to "bringdown" the adapter, but not actually touch it. Basically
> >>stuff like unblocking requests so that we fail them instead of hanging, etc.
> > 
> > 
> > Yes.  Actually, right after this, I unconfig the pci slot,
> > which calls pci_remove_bus_device() .. pci_destroy_dev() .. 
> > and eventually pci_driver->remove() and so IPR finds out about this
> > sooner or later anyway.  The goal of this function was to provide
> > an alternate and/or earlier warning that the device is going away.
> > 
> > Maybe its superfluous.  I tend to add callbacks like this because
> > I know that sooner or later someone will want one ... 
> 
> Ok. I wasn't sure about that. It in that case, I think its fine to leave
> the callback in. I still think the perm_failure handler should do
> the bringdown in ipr, however.

Yes, I didn't implement this because it was a quick-n-dirty hack.
The real question I'd like to pose to you is, 

"Are there any other callbacks you would like to get during the
pci error detection and recovery phase?"

> >>Not sure what you are trying to accomplish with this bit of code. Does
> >>not seem necessary to me.

OK.  I don't have a clear mental model of how the IPR worked at this
level of detail; I'll cut this code out.

--linas




More information about the Linuxppc64-dev mailing list