netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [net-next-2.6 PATCH 0/9] return PCI_ERS_RESULT_DISCONNECT on permanent failure
@ 2009-07-31 19:12 Dean Nelson
  2009-07-31 19:13 ` [net-next-2.6 PATCH 1/9] atl1c: " Dean Nelson
                   ` (9 more replies)
  0 siblings, 10 replies; 13+ messages in thread
From: Dean Nelson @ 2009-07-31 19:12 UTC (permalink / raw)
  To: netdev

PCI drivers that implement the struct pci_error_handlers' error_detected
callback should return PCI_ERS_RESULT_DISCONNECT if the state passed in is
pci_channel_io_perm_failure.

There have been a few of this type of net driver that have recently been
modified to address this issue. See the following commits:

http://git.kernel.org/linus/c93b5a76d58656158d195a7df507ebc660010969
http://git.kernel.org/linus/eab633021c26025b34f36f79f0311d3d99f40ceb
http://git.kernel.org/linus/ef681ce1e8b3e63317cd724c200b2fd39286c005
http://git.kernel.org/linus/59ed6eecff4aa00c5c5d18ffd180acac108d596e
http://git.kernel.org/linus/3044b8d1ff8c05237652a692fb572a34e4d70146

This patchset is an attempt to address the remaining net drivers of this type.
None of the patches in this patchset have been tested, since I don't have the
hardware to test any of them. I'm simply making these patches available for
whomever is interested and able to test them, to do so. Perhaps the individual
patches can be committed as they get tested, reviewed and ACK'd.

Apologies in advance if I'm not Cc'ng the correct maintainers of these drivers.

Thanks,
Dean

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [net-next-2.6 PATCH 1/9] atl1c: return PCI_ERS_RESULT_DISCONNECT on permanent failure
  2009-07-31 19:12 [net-next-2.6 PATCH 0/9] return PCI_ERS_RESULT_DISCONNECT on permanent failure Dean Nelson
@ 2009-07-31 19:13 ` Dean Nelson
  2009-07-31 19:13 ` [net-next-2.6 PATCH 2/9] atl1e: " Dean Nelson
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 13+ messages in thread
From: Dean Nelson @ 2009-07-31 19:13 UTC (permalink / raw)
  To: netdev; +Cc: roel kluin, Jay Cliburn, Jie Yang

PCI drivers that implement the struct pci_error_handlers' error_detected
callback should return PCI_ERS_RESULT_DISCONNECT if the state passed in is
pci_channel_io_perm_failure. This patch fixes the issue for atl1c.

Signed-off-by: Dean Nelson <dnelson@redhat.com>

---

This patch has not been tested, since I don't have the hardware to test it.
It is based on a few recent patches. See the following commits:

http://git.kernel.org/linus/c93b5a76d58656158d195a7df507ebc660010969
http://git.kernel.org/linus/eab633021c26025b34f36f79f0311d3d99f40ceb
http://git.kernel.org/linus/ef681ce1e8b3e63317cd724c200b2fd39286c005
http://git.kernel.org/linus/59ed6eecff4aa00c5c5d18ffd180acac108d596e
http://git.kernel.org/linus/3044b8d1ff8c05237652a692fb572a34e4d70146

 drivers/net/atl1c/atl1c_main.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/drivers/net/atl1c/atl1c_main.c b/drivers/net/atl1c/atl1c_main.c
index cd547a2..7426053 100644
--- a/drivers/net/atl1c/atl1c_main.c
+++ b/drivers/net/atl1c/atl1c_main.c
@@ -2678,6 +2678,9 @@ static pci_ers_result_t atl1c_io_error_detected(struct pci_dev *pdev,
 
 	netif_device_detach(netdev);
 
+	if (state == pci_channel_io_perm_failure)
+		return PCI_ERS_RESULT_DISCONNECT;
+
 	if (netif_running(netdev))
 		atl1c_down(adapter);
 

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [net-next-2.6 PATCH 2/9] atl1e: return PCI_ERS_RESULT_DISCONNECT on permanent failure
  2009-07-31 19:12 [net-next-2.6 PATCH 0/9] return PCI_ERS_RESULT_DISCONNECT on permanent failure Dean Nelson
  2009-07-31 19:13 ` [net-next-2.6 PATCH 1/9] atl1c: " Dean Nelson
@ 2009-07-31 19:13 ` Dean Nelson
  2009-07-31 19:13 ` [net-next-2.6 PATCH 3/9] bnx2: " Dean Nelson
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 13+ messages in thread
From: Dean Nelson @ 2009-07-31 19:13 UTC (permalink / raw)
  To: netdev; +Cc: roel kluin, Jay Cliburn, Jie Yang

PCI drivers that implement the struct pci_error_handlers' error_detected
callback should return PCI_ERS_RESULT_DISCONNECT if the state passed in is
pci_channel_io_perm_failure. This patch fixes the issue for atl1e.

Signed-off-by: Dean Nelson <dnelson@redhat.com>

---

This patch has not been tested, since I don't have the hardware to test it.
It is based on a few recent patches. See the following commits:

http://git.kernel.org/linus/c93b5a76d58656158d195a7df507ebc660010969
http://git.kernel.org/linus/eab633021c26025b34f36f79f0311d3d99f40ceb
http://git.kernel.org/linus/ef681ce1e8b3e63317cd724c200b2fd39286c005
http://git.kernel.org/linus/59ed6eecff4aa00c5c5d18ffd180acac108d596e
http://git.kernel.org/linus/3044b8d1ff8c05237652a692fb572a34e4d70146

 drivers/net/atl1e/atl1e_main.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/drivers/net/atl1e/atl1e_main.c b/drivers/net/atl1e/atl1e_main.c
index 9fc6d6d..4570749 100644
--- a/drivers/net/atl1e/atl1e_main.c
+++ b/drivers/net/atl1e/atl1e_main.c
@@ -2497,6 +2497,9 @@ atl1e_io_error_detected(struct pci_dev *pdev, pci_channel_state_t state)
 
 	netif_device_detach(netdev);
 
+	if (state == pci_channel_io_perm_failure)
+		return PCI_ERS_RESULT_DISCONNECT;
+
 	if (netif_running(netdev))
 		atl1e_down(adapter);
 

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [net-next-2.6 PATCH 3/9] bnx2: return PCI_ERS_RESULT_DISCONNECT on permanent failure
  2009-07-31 19:12 [net-next-2.6 PATCH 0/9] return PCI_ERS_RESULT_DISCONNECT on permanent failure Dean Nelson
  2009-07-31 19:13 ` [net-next-2.6 PATCH 1/9] atl1c: " Dean Nelson
  2009-07-31 19:13 ` [net-next-2.6 PATCH 2/9] atl1e: " Dean Nelson
@ 2009-07-31 19:13 ` Dean Nelson
  2009-07-31 19:13 ` [net-next-2.6 PATCH 4/9] bnx2x: " Dean Nelson
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 13+ messages in thread
From: Dean Nelson @ 2009-07-31 19:13 UTC (permalink / raw)
  To: netdev; +Cc: Michael Chan

PCI drivers that implement the struct pci_error_handlers' error_detected
callback should return PCI_ERS_RESULT_DISCONNECT if the state passed in is
pci_channel_io_perm_failure. This patch fixes the issue for bnx2.

Signed-off-by: Dean Nelson <dnelson@redhat.com>

---

This patch has not been tested, since I don't have the hardware to test it.
It is based on a few recent patches. See the following commits:

http://git.kernel.org/linus/c93b5a76d58656158d195a7df507ebc660010969
http://git.kernel.org/linus/eab633021c26025b34f36f79f0311d3d99f40ceb
http://git.kernel.org/linus/ef681ce1e8b3e63317cd724c200b2fd39286c005
http://git.kernel.org/linus/59ed6eecff4aa00c5c5d18ffd180acac108d596e
http://git.kernel.org/linus/3044b8d1ff8c05237652a692fb572a34e4d70146

 drivers/net/bnx2.c             |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/drivers/net/bnx2.c b/drivers/net/bnx2.c
index b70cc99..7bdefe2 100644
--- a/drivers/net/bnx2.c
+++ b/drivers/net/bnx2.c
@@ -8188,6 +8188,11 @@ static pci_ers_result_t bnx2_io_error_detected(struct pci_dev *pdev,
 	rtnl_lock();
 	netif_device_detach(dev);
 
+	if (state == pci_channel_io_perm_failure) {
+		rtnl_unlock();
+		return PCI_ERS_RESULT_DISCONNECT;
+	}
+
 	if (netif_running(dev)) {
 		bnx2_netif_stop(bp);
 		del_timer_sync(&bp->timer);

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [net-next-2.6 PATCH 4/9] bnx2x: return PCI_ERS_RESULT_DISCONNECT on permanent failure
  2009-07-31 19:12 [net-next-2.6 PATCH 0/9] return PCI_ERS_RESULT_DISCONNECT on permanent failure Dean Nelson
                   ` (2 preceding siblings ...)
  2009-07-31 19:13 ` [net-next-2.6 PATCH 3/9] bnx2: " Dean Nelson
@ 2009-07-31 19:13 ` Dean Nelson
  2009-07-31 19:13 ` [net-next-2.6 PATCH 5/9] igbvf: " Dean Nelson
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 13+ messages in thread
From: Dean Nelson @ 2009-07-31 19:13 UTC (permalink / raw)
  To: netdev; +Cc: Eilon Greenstein

PCI drivers that implement the struct pci_error_handlers' error_detected
callback should return PCI_ERS_RESULT_DISCONNECT if the state passed in is
pci_channel_io_perm_failure. This patch fixes the issue for bnx2x.

Signed-off-by: Dean Nelson <dnelson@redhat.com>

---

This patch has not been tested, since I don't have the hardware to test it.
It is based on a few recent patches. See the following commits:

http://git.kernel.org/linus/c93b5a76d58656158d195a7df507ebc660010969
http://git.kernel.org/linus/eab633021c26025b34f36f79f0311d3d99f40ceb
http://git.kernel.org/linus/ef681ce1e8b3e63317cd724c200b2fd39286c005
http://git.kernel.org/linus/59ed6eecff4aa00c5c5d18ffd180acac108d596e
http://git.kernel.org/linus/3044b8d1ff8c05237652a692fb572a34e4d70146

 drivers/net/bnx2x_main.c       |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/drivers/net/bnx2x_main.c b/drivers/net/bnx2x_main.c
index 6c67be6..086eaaa 100644
--- a/drivers/net/bnx2x_main.c
+++ b/drivers/net/bnx2x_main.c
@@ -11553,6 +11553,11 @@ static pci_ers_result_t bnx2x_io_error_detected(struct pci_dev *pdev,
 
 	netif_device_detach(dev);
 
+	if (state == pci_channel_io_perm_failure) {
+		rtnl_unlock();
+		return PCI_ERS_RESULT_DISCONNECT;
+	}
+
 	if (netif_running(dev))
 		bnx2x_eeh_nic_unload(bp);
 

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [net-next-2.6 PATCH 5/9] igbvf: return PCI_ERS_RESULT_DISCONNECT on permanent failure
  2009-07-31 19:12 [net-next-2.6 PATCH 0/9] return PCI_ERS_RESULT_DISCONNECT on permanent failure Dean Nelson
                   ` (3 preceding siblings ...)
  2009-07-31 19:13 ` [net-next-2.6 PATCH 4/9] bnx2x: " Dean Nelson
@ 2009-07-31 19:13 ` Dean Nelson
  2009-07-31 19:13 ` [net-next-2.6 PATCH 6/9] ixgb: " Dean Nelson
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 13+ messages in thread
From: Dean Nelson @ 2009-07-31 19:13 UTC (permalink / raw)
  To: netdev; +Cc: Alexander Duyck, Jeff Kirsher

PCI drivers that implement the struct pci_error_handlers' error_detected
callback should return PCI_ERS_RESULT_DISCONNECT if the state passed in is
pci_channel_io_perm_failure. This patch fixes the issue for igbvf.

Signed-off-by: Dean Nelson <dnelson@redhat.com>

---

This patch has not been tested, since I don't have the hardware to test it.
It is based on a few recent patches. See the following commits:

http://git.kernel.org/linus/c93b5a76d58656158d195a7df507ebc660010969
http://git.kernel.org/linus/eab633021c26025b34f36f79f0311d3d99f40ceb
http://git.kernel.org/linus/ef681ce1e8b3e63317cd724c200b2fd39286c005
http://git.kernel.org/linus/59ed6eecff4aa00c5c5d18ffd180acac108d596e
http://git.kernel.org/linus/3044b8d1ff8c05237652a692fb572a34e4d70146

 drivers/net/igbvf/netdev.c     |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/drivers/net/igbvf/netdev.c b/drivers/net/igbvf/netdev.c
index 2bc9d63..dba360d 100644
--- a/drivers/net/igbvf/netdev.c
+++ b/drivers/net/igbvf/netdev.c
@@ -2512,6 +2512,9 @@ static pci_ers_result_t igbvf_io_error_detected(struct pci_dev *pdev,
 
 	netif_device_detach(netdev);
 
+	if (state == pci_channel_io_perm_failure)
+		return PCI_ERS_RESULT_DISCONNECT;
+
 	if (netif_running(netdev))
 		igbvf_down(adapter);
 	pci_disable_device(pdev);

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [net-next-2.6 PATCH 6/9] ixgb: return PCI_ERS_RESULT_DISCONNECT on permanent failure
  2009-07-31 19:12 [net-next-2.6 PATCH 0/9] return PCI_ERS_RESULT_DISCONNECT on permanent failure Dean Nelson
                   ` (4 preceding siblings ...)
  2009-07-31 19:13 ` [net-next-2.6 PATCH 5/9] igbvf: " Dean Nelson
@ 2009-07-31 19:13 ` Dean Nelson
  2009-07-31 19:44   ` Waskiewicz Jr, Peter P
  2009-07-31 19:13 ` [net-next-2.6 PATCH 7/9] qlge: " Dean Nelson
                   ` (3 subsequent siblings)
  9 siblings, 1 reply; 13+ messages in thread
From: Dean Nelson @ 2009-07-31 19:13 UTC (permalink / raw)
  To: netdev; +Cc: PJ Waskiewicz, Jesse Brandeburg, Jeff Kirsher

PCI drivers that implement the struct pci_error_handlers' error_detected
callback should return PCI_ERS_RESULT_DISCONNECT if the state passed in is
pci_channel_io_perm_failure. This patch fixes the issue for ixgb.

Signed-off-by: Dean Nelson <dnelson@redhat.com>

---

This patch has not been tested, since I don't have the hardware to test it.
It is based on a few recent patches. See the following commits:

http://git.kernel.org/linus/c93b5a76d58656158d195a7df507ebc660010969
http://git.kernel.org/linus/eab633021c26025b34f36f79f0311d3d99f40ceb
http://git.kernel.org/linus/ef681ce1e8b3e63317cd724c200b2fd39286c005
http://git.kernel.org/linus/59ed6eecff4aa00c5c5d18ffd180acac108d596e
http://git.kernel.org/linus/3044b8d1ff8c05237652a692fb572a34e4d70146

 drivers/net/ixgb/ixgb_main.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/drivers/net/ixgb/ixgb_main.c b/drivers/net/ixgb/ixgb_main.c
index eb917f1..fad08ce 100644
--- a/drivers/net/ixgb/ixgb_main.c
+++ b/drivers/net/ixgb/ixgb_main.c
@@ -2227,6 +2227,11 @@ static pci_ers_result_t ixgb_io_error_detected(struct pci_dev *pdev,
 	struct net_device *netdev = pci_get_drvdata(pdev);
 	struct ixgb_adapter *adapter = netdev_priv(netdev);
 
+	netif_device_detach(netdev);
+
+	if (state == pci_channel_io_perm_failure)
+		return PCI_ERS_RESULT_DISCONNECT;
+
 	if (netif_running(netdev))
 		ixgb_down(adapter, true);
 

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [net-next-2.6 PATCH 7/9] qlge: return PCI_ERS_RESULT_DISCONNECT on permanent failure
  2009-07-31 19:12 [net-next-2.6 PATCH 0/9] return PCI_ERS_RESULT_DISCONNECT on permanent failure Dean Nelson
                   ` (5 preceding siblings ...)
  2009-07-31 19:13 ` [net-next-2.6 PATCH 6/9] ixgb: " Dean Nelson
@ 2009-07-31 19:13 ` Dean Nelson
  2009-07-31 19:13 ` [net-next-2.6 PATCH 8/9] s2io: " Dean Nelson
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 13+ messages in thread
From: Dean Nelson @ 2009-07-31 19:13 UTC (permalink / raw)
  To: netdev; +Cc: linux-driver, Ron Mercer

PCI drivers that implement the struct pci_error_handlers' error_detected
callback should return PCI_ERS_RESULT_DISCONNECT if the state passed in is
pci_channel_io_perm_failure. This patch fixes the issue for qlge.

Signed-off-by: Dean Nelson <dnelson@redhat.com>

---

This patch has not been tested, since I don't have the hardware to test it.
It is based on a few recent patches. See the following commits:

http://git.kernel.org/linus/c93b5a76d58656158d195a7df507ebc660010969
http://git.kernel.org/linus/eab633021c26025b34f36f79f0311d3d99f40ceb
http://git.kernel.org/linus/ef681ce1e8b3e63317cd724c200b2fd39286c005
http://git.kernel.org/linus/59ed6eecff4aa00c5c5d18ffd180acac108d596e
http://git.kernel.org/linus/3044b8d1ff8c05237652a692fb572a34e4d70146

 drivers/net/qlge/qlge_main.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/drivers/net/qlge/qlge_main.c b/drivers/net/qlge/qlge_main.c
index 5768af1..3a271af 100644
--- a/drivers/net/qlge/qlge_main.c
+++ b/drivers/net/qlge/qlge_main.c
@@ -4076,6 +4076,11 @@ static pci_ers_result_t qlge_io_error_detected(struct pci_dev *pdev,
 	struct net_device *ndev = pci_get_drvdata(pdev);
 	struct ql_adapter *qdev = netdev_priv(ndev);
 
+	netif_device_detach(ndev);
+
+	if (state == pci_channel_io_perm_failure)
+		return PCI_ERS_RESULT_DISCONNECT;
+
 	if (netif_running(ndev))
 		ql_adapter_down(qdev);
 

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [net-next-2.6 PATCH 8/9] s2io: return PCI_ERS_RESULT_DISCONNECT on permanent failure
  2009-07-31 19:12 [net-next-2.6 PATCH 0/9] return PCI_ERS_RESULT_DISCONNECT on permanent failure Dean Nelson
                   ` (6 preceding siblings ...)
  2009-07-31 19:13 ` [net-next-2.6 PATCH 7/9] qlge: " Dean Nelson
@ 2009-07-31 19:13 ` Dean Nelson
  2009-07-31 19:14 ` [net-next-2.6 PATCH 9/9] vxge: " Dean Nelson
  2009-08-02  6:13 ` [net-next-2.6 PATCH 0/9] " David Miller
  9 siblings, 0 replies; 13+ messages in thread
From: Dean Nelson @ 2009-07-31 19:13 UTC (permalink / raw)
  To: netdev; +Cc: Ramkrishna Vepa, Sreenivasa Honnur

PCI drivers that implement the struct pci_error_handlers' error_detected
callback should return PCI_ERS_RESULT_DISCONNECT if the state passed in is
pci_channel_io_perm_failure. This patch fixes the issue for s2io.

Signed-off-by: Dean Nelson <dnelson@redhat.com>

---

This patch has not been tested, since I don't have the hardware to test it.
It is based on a few recent patches. See the following commits:

http://git.kernel.org/linus/c93b5a76d58656158d195a7df507ebc660010969
http://git.kernel.org/linus/eab633021c26025b34f36f79f0311d3d99f40ceb
http://git.kernel.org/linus/ef681ce1e8b3e63317cd724c200b2fd39286c005
http://git.kernel.org/linus/59ed6eecff4aa00c5c5d18ffd180acac108d596e
http://git.kernel.org/linus/3044b8d1ff8c05237652a692fb572a34e4d70146

 drivers/net/s2io.c             |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/drivers/net/s2io.c b/drivers/net/s2io.c
index d4df933..bd6d713 100644
--- a/drivers/net/s2io.c
+++ b/drivers/net/s2io.c
@@ -8636,6 +8636,9 @@ static pci_ers_result_t s2io_io_error_detected(struct pci_dev *pdev,
 
 	netif_device_detach(netdev);
 
+	if (state == pci_channel_io_perm_failure)
+		return PCI_ERS_RESULT_DISCONNECT;
+
 	if (netif_running(netdev)) {
 		/* Bring down the card, while avoiding PCI I/O */
 		do_s2io_card_down(sp, 0);

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [net-next-2.6 PATCH 9/9] vxge: return PCI_ERS_RESULT_DISCONNECT on permanent failure
  2009-07-31 19:12 [net-next-2.6 PATCH 0/9] return PCI_ERS_RESULT_DISCONNECT on permanent failure Dean Nelson
                   ` (7 preceding siblings ...)
  2009-07-31 19:13 ` [net-next-2.6 PATCH 8/9] s2io: " Dean Nelson
@ 2009-07-31 19:14 ` Dean Nelson
  2009-08-05  0:48   ` Sivakumar Subramani
  2009-08-02  6:13 ` [net-next-2.6 PATCH 0/9] " David Miller
  9 siblings, 1 reply; 13+ messages in thread
From: Dean Nelson @ 2009-07-31 19:14 UTC (permalink / raw)
  To: netdev; +Cc: Ramkrishna Vepa

PCI drivers that implement the struct pci_error_handlers' error_detected
callback should return PCI_ERS_RESULT_DISCONNECT if the state passed in is
pci_channel_io_perm_failure. This patch fixes the issue for vxge.

Signed-off-by: Dean Nelson <dnelson@redhat.com>

---

This patch has not been tested, since I don't have the hardware to test it.
It is based on a few recent patches. See the following commits:

http://git.kernel.org/linus/c93b5a76d58656158d195a7df507ebc660010969
http://git.kernel.org/linus/eab633021c26025b34f36f79f0311d3d99f40ceb
http://git.kernel.org/linus/ef681ce1e8b3e63317cd724c200b2fd39286c005
http://git.kernel.org/linus/59ed6eecff4aa00c5c5d18ffd180acac108d596e
http://git.kernel.org/linus/3044b8d1ff8c05237652a692fb572a34e4d70146

 drivers/net/vxge/vxge-main.c   |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/drivers/net/vxge/vxge-main.c b/drivers/net/vxge/vxge-main.c
index 7b5402b..335140d 100644
--- a/drivers/net/vxge/vxge-main.c
+++ b/drivers/net/vxge/vxge-main.c
@@ -3956,6 +3956,9 @@ static pci_ers_result_t vxge_io_error_detected(struct pci_dev *pdev,
 
 	netif_device_detach(netdev);
 
+	if (state == pci_channel_io_perm_failure)
+		return PCI_ERS_RESULT_DISCONNECT;
+
 	if (netif_running(netdev)) {
 		/* Bring down the card, while avoiding PCI I/O */
 		do_vxge_close(netdev, 0);

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* Re: [net-next-2.6 PATCH 6/9] ixgb: return PCI_ERS_RESULT_DISCONNECT on permanent failure
  2009-07-31 19:13 ` [net-next-2.6 PATCH 6/9] ixgb: " Dean Nelson
@ 2009-07-31 19:44   ` Waskiewicz Jr, Peter P
  0 siblings, 0 replies; 13+ messages in thread
From: Waskiewicz Jr, Peter P @ 2009-07-31 19:44 UTC (permalink / raw)
  To: Dean Nelson
  Cc: netdev@vger.kernel.org, Waskiewicz Jr, Peter P, Brandeburg, Jesse,
	Kirsher, Jeffrey T

On Fri, 31 Jul 2009, Dean Nelson wrote:

> PCI drivers that implement the struct pci_error_handlers' error_detected
> callback should return PCI_ERS_RESULT_DISCONNECT if the state passed in is
> pci_channel_io_perm_failure. This patch fixes the issue for ixgb.
> 
> Signed-off-by: Dean Nelson <dnelson@redhat.com>
> 
> ---
> 
> This patch has not been tested, since I don't have the hardware to test it.
> It is based on a few recent patches. See the following commits:
> 
> http://git.kernel.org/linus/c93b5a76d58656158d195a7df507ebc660010969
> http://git.kernel.org/linus/eab633021c26025b34f36f79f0311d3d99f40ceb
> http://git.kernel.org/linus/ef681ce1e8b3e63317cd724c200b2fd39286c005
> http://git.kernel.org/linus/59ed6eecff4aa00c5c5d18ffd180acac108d596e
> http://git.kernel.org/linus/3044b8d1ff8c05237652a692fb572a34e4d70146
> 
>  drivers/net/ixgb/ixgb_main.c |    5 +++++
>  1 files changed, 5 insertions(+), 0 deletions(-)
> 
> diff --git a/drivers/net/ixgb/ixgb_main.c b/drivers/net/ixgb/ixgb_main.c
> index eb917f1..fad08ce 100644
> --- a/drivers/net/ixgb/ixgb_main.c
> +++ b/drivers/net/ixgb/ixgb_main.c
> @@ -2227,6 +2227,11 @@ static pci_ers_result_t ixgb_io_error_detected(struct pci_dev *pdev,
>  	struct net_device *netdev = pci_get_drvdata(pdev);
>  	struct ixgb_adapter *adapter = netdev_priv(netdev);
>  
> +	netif_device_detach(netdev);
> +
> +	if (state == pci_channel_io_perm_failure)
> +		return PCI_ERS_RESULT_DISCONNECT;
> +
>  	if (netif_running(netdev))
>  		ixgb_down(adapter, true);

Seems reasonable, especially since the same logic works fine on our other 
drivers.  The hardware for this driver is somewhat difficult to get our 
hands on, but we'll definately give this a spot test once we can locate 
one of these NICs.

Cheers,
-PJ Waskiewicz

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [net-next-2.6 PATCH 0/9] return PCI_ERS_RESULT_DISCONNECT on permanent failure
  2009-07-31 19:12 [net-next-2.6 PATCH 0/9] return PCI_ERS_RESULT_DISCONNECT on permanent failure Dean Nelson
                   ` (8 preceding siblings ...)
  2009-07-31 19:14 ` [net-next-2.6 PATCH 9/9] vxge: " Dean Nelson
@ 2009-08-02  6:13 ` David Miller
  9 siblings, 0 replies; 13+ messages in thread
From: David Miller @ 2009-08-02  6:13 UTC (permalink / raw)
  To: dnelson; +Cc: netdev

From: Dean Nelson <dnelson@redhat.com>
Date: Fri, 31 Jul 2009 15:12:55 -0400

> PCI drivers that implement the struct pci_error_handlers' error_detected
> callback should return PCI_ERS_RESULT_DISCONNECT if the state passed in is
> pci_channel_io_perm_failure.
 ...
> This patchset is an attempt to address the remaining net drivers of this type.
> None of the patches in this patchset have been tested, since I don't have the
> hardware to test any of them. I'm simply making these patches available for
> whomever is interested and able to test them, to do so. Perhaps the individual
> patches can be committed as they get tested, reviewed and ACK'd.

I think these are safe to apply, they look so straightforward
to me.  I've thus added them all to net-next-2.6, thanks!

^ permalink raw reply	[flat|nested] 13+ messages in thread

* RE: [net-next-2.6 PATCH 9/9] vxge: return PCI_ERS_RESULT_DISCONNECT on permanent failure
  2009-07-31 19:14 ` [net-next-2.6 PATCH 9/9] vxge: " Dean Nelson
@ 2009-08-05  0:48   ` Sivakumar Subramani
  0 siblings, 0 replies; 13+ messages in thread
From: Sivakumar Subramani @ 2009-08-05  0:48 UTC (permalink / raw)
  To: Dean Nelson, netdev
  Cc: Ramkrishna Vepa, Sriram Rapuru, Sreenivasa Honnur,
	Rastapur Santosh, Anil Murthy

Hi,

Reviewed the patch for vxge driver. Please accept it.

Thanks,
~Siva
-----Original Message-----
From: netdev-owner@vger.kernel.org [mailto:netdev-owner@vger.kernel.org]
On Behalf Of Dean Nelson
Sent: Saturday, August 01, 2009 12:44 AM
To: netdev@vger.kernel.org
Cc: Ramkrishna Vepa
Subject: [net-next-2.6 PATCH 9/9] vxge: return PCI_ERS_RESULT_DISCONNECT
on permanent failure

PCI drivers that implement the struct pci_error_handlers' error_detected
callback should return PCI_ERS_RESULT_DISCONNECT if the state passed in
is
pci_channel_io_perm_failure. This patch fixes the issue for vxge.

Signed-off-by: Dean Nelson <dnelson@redhat.com>

---

This patch has not been tested, since I don't have the hardware to test
it.
It is based on a few recent patches. See the following commits:

http://git.kernel.org/linus/c93b5a76d58656158d195a7df507ebc660010969
http://git.kernel.org/linus/eab633021c26025b34f36f79f0311d3d99f40ceb
http://git.kernel.org/linus/ef681ce1e8b3e63317cd724c200b2fd39286c005
http://git.kernel.org/linus/59ed6eecff4aa00c5c5d18ffd180acac108d596e
http://git.kernel.org/linus/3044b8d1ff8c05237652a692fb572a34e4d70146

 drivers/net/vxge/vxge-main.c   |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/drivers/net/vxge/vxge-main.c b/drivers/net/vxge/vxge-main.c
index 7b5402b..335140d 100644
--- a/drivers/net/vxge/vxge-main.c
+++ b/drivers/net/vxge/vxge-main.c
@@ -3956,6 +3956,9 @@ static pci_ers_result_t
vxge_io_error_detected(struct pci_dev *pdev,
 
 	netif_device_detach(netdev);
 
+	if (state == pci_channel_io_perm_failure)
+		return PCI_ERS_RESULT_DISCONNECT;
+
 	if (netif_running(netdev)) {
 		/* Bring down the card, while avoiding PCI I/O */
 		do_vxge_close(netdev, 0);
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply related	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2009-08-05  0:48 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-07-31 19:12 [net-next-2.6 PATCH 0/9] return PCI_ERS_RESULT_DISCONNECT on permanent failure Dean Nelson
2009-07-31 19:13 ` [net-next-2.6 PATCH 1/9] atl1c: " Dean Nelson
2009-07-31 19:13 ` [net-next-2.6 PATCH 2/9] atl1e: " Dean Nelson
2009-07-31 19:13 ` [net-next-2.6 PATCH 3/9] bnx2: " Dean Nelson
2009-07-31 19:13 ` [net-next-2.6 PATCH 4/9] bnx2x: " Dean Nelson
2009-07-31 19:13 ` [net-next-2.6 PATCH 5/9] igbvf: " Dean Nelson
2009-07-31 19:13 ` [net-next-2.6 PATCH 6/9] ixgb: " Dean Nelson
2009-07-31 19:44   ` Waskiewicz Jr, Peter P
2009-07-31 19:13 ` [net-next-2.6 PATCH 7/9] qlge: " Dean Nelson
2009-07-31 19:13 ` [net-next-2.6 PATCH 8/9] s2io: " Dean Nelson
2009-07-31 19:14 ` [net-next-2.6 PATCH 9/9] vxge: " Dean Nelson
2009-08-05  0:48   ` Sivakumar Subramani
2009-08-02  6:13 ` [net-next-2.6 PATCH 0/9] " David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).