On Thu, Jul 06, 2006 at 11:01:35AM -0700, Auke Kok wrote:
> Linas Vepstas wrote:
> >
> >Perhaps the right fix is to figure out what parts of the driver do i/o
> >during shutdown, and then add a line "if(wedged) skip i/o;" to those
> >places?
>
> that would be relatively simple if we can check a flag (?) somewhere that
> signifies that we've encountered a pci error. We basically only need to
> skip out after e1000_reset and bypass e1000_irq_disable in e1000_down()
> then.
>
> Does the pci error recovery code give us such a flag?
Yes, it was introduced so that drivers could view the state in
an interrupt context. (how this flag is set is platform dependent.)
struct pci_dev {
pci_channel_state error_state;
};
enum pci_channel_state {
/* I/O channel is in normal state */
pci_channel_io_normal,
/* I/O to channel is blocked */
pci_channel_io_frozen,
/* PCI card is dead */
pci_channel_io_perm_failure,
};
Unless I get distracted, I'll provide an e1000 patch shortly ?
--linas
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]