summaryrefslogtreecommitdiff
path: root/pfinet/ethernet.c
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2014-01-28 23:58:34 +0100
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2014-01-28 23:58:34 +0100
commitd473f407e3b168490032905e60effa3cdbbc063e (patch)
treeb6ded2c3de1ddab185a24d544f378fec4ef6e2e0 /pfinet/ethernet.c
parente24381784b0a56896542d1a5828a77ad0e1c40ec (diff)
Also re-open Ethernet device on EMIG_SERVER_DIED
* pfinet/ethernet.c (ethernet_xmit): Also call ethernet_close then ethernet_open on EMIG_SERVER_DIED error.
Diffstat (limited to 'pfinet/ethernet.c')
-rw-r--r--pfinet/ethernet.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/pfinet/ethernet.c b/pfinet/ethernet.c
index 74c1a08a..3b0d27b5 100644
--- a/pfinet/ethernet.c
+++ b/pfinet/ethernet.c
@@ -259,7 +259,7 @@ ethernet_xmit (struct sk_buff *skb, struct device *dev)
{
tried++;
err = device_write (edev->ether_port, D_NOWAIT, 0, skb->data, skb->len, &count);
- if (err == EMACH_SEND_INVALID_DEST)
+ if (err == EMACH_SEND_INVALID_DEST || err == EMIG_SERVER_DIED)
{
/* Device probably just died, try to reopen it. */