aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/myri10ge/myri10ge.c
diff options
context:
space:
mode:
authorBrice Goglin <brice@myri.com>2007-06-11 14:26:31 -0400
committerJeff Garzik <jeff@garzik.org>2007-06-12 18:58:58 -0400
commitf181137f9d70dc851dcb418cdad4df7888a0bfd3 (patch)
tree6d9631fe67faf11736862c6e7e59fb77cfd35e1d /drivers/net/myri10ge/myri10ge.c
parentc27e672172def41924ea8410398554c49c17b3c1 (diff)
myri10ge: limit the number of recoveries
Limit the number of recoveries from a NIC hw watchdog reset to 1 by default. It enables detection of defective NICs immediately since these memory parity errors are expected to happen very rarely (less than once per century*NIC). Signed-off-by: Brice Goglin <brice@myri.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/net/myri10ge/myri10ge.c')
-rw-r--r--drivers/net/myri10ge/myri10ge.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/drivers/net/myri10ge/myri10ge.c b/drivers/net/myri10ge/myri10ge.c
index b53b7ad999bc..4867837bc1be 100644
--- a/drivers/net/myri10ge/myri10ge.c
+++ b/drivers/net/myri10ge/myri10ge.c
@@ -279,6 +279,8 @@ static int myri10ge_fill_thresh = 256;
279module_param(myri10ge_fill_thresh, int, S_IRUGO | S_IWUSR); 279module_param(myri10ge_fill_thresh, int, S_IRUGO | S_IWUSR);
280MODULE_PARM_DESC(myri10ge_fill_thresh, "Number of empty rx slots allowed\n"); 280MODULE_PARM_DESC(myri10ge_fill_thresh, "Number of empty rx slots allowed\n");
281 281
282static int myri10ge_reset_recover = 1;
283
282static int myri10ge_wcfifo = 0; 284static int myri10ge_wcfifo = 0;
283module_param(myri10ge_wcfifo, int, S_IRUGO); 285module_param(myri10ge_wcfifo, int, S_IRUGO);
284MODULE_PARM_DESC(myri10ge_wcfifo, "Enable WC Fifo when WC is enabled\n"); 286MODULE_PARM_DESC(myri10ge_wcfifo, "Enable WC Fifo when WC is enabled\n");
@@ -2730,8 +2732,14 @@ static void myri10ge_watchdog(struct work_struct *work)
2730 * For now, just report it */ 2732 * For now, just report it */
2731 reboot = myri10ge_read_reboot(mgp); 2733 reboot = myri10ge_read_reboot(mgp);
2732 printk(KERN_ERR 2734 printk(KERN_ERR
2733 "myri10ge: %s: NIC rebooted (0x%x), resetting\n", 2735 "myri10ge: %s: NIC rebooted (0x%x),%s resetting\n",
2734 mgp->dev->name, reboot); 2736 mgp->dev->name, reboot,
2737 myri10ge_reset_recover ? " " : " not");
2738 if (myri10ge_reset_recover == 0)
2739 return;
2740
2741 myri10ge_reset_recover--;
2742
2735 /* 2743 /*
2736 * A rebooted nic will come back with config space as 2744 * A rebooted nic will come back with config space as
2737 * it was after power was applied to PCIe bus. 2745 * it was after power was applied to PCIe bus.