History

[PATCH] myri10ge - Fix spurious invokations of the watchdog reset handler

Fix spurious invocations of the watchdog reset handler.

Brice Goglin committed 20 years ago

Commit c54772e1 parent e4543581 file · +4 −1Browse files

Unified · Split

drivers/net/myri10ge/myri10ge.c+4−1
@@ -177,6 +177,7 @@ struct myri10ge_priv { · 176 unmodified lines
177177 struct work_struct watchdog_work;
178178 struct timer_list watchdog_timer;
179179 int watchdog_tx_done;
180+ int watchdog_tx_req;
180181 int watchdog_resets;
181182 int tx_linearized;
182183 int pause;
@@ -2542,7 +2543,8 @@ static void myri10ge_watchdog_timer(unsigned long arg) · 2359 unmodified lines
25422543
25432544 mgp = (struct myri10ge_priv *)arg;
25442545 if (mgp->tx.req != mgp->tx.done &&
2545− mgp->tx.done == mgp->watchdog_tx_done)
2546+ mgp->tx.done == mgp->watchdog_tx_done &&
2547+ mgp->watchdog_tx_req != mgp->watchdog_tx_done)
25462548 /* nic seems like it might be stuck.. */
25472549 schedule_work(&mgp->watchdog_work);
25482550 else
@@ -2551,6 +2553,7 @@ static void myri10ge_watchdog_timer(unsigned long arg) · 2 unmodified lines
25512553 jiffies + myri10ge_watchdog_timeout * HZ);
25522554
25532555 mgp->watchdog_tx_done = mgp->tx.done;
2556+ mgp->watchdog_tx_req = mgp->tx.req;
25542557 }
25552558
25562559 static int myri10ge_probe(struct pci_dev *pdev, const struct pci_device_id *ent)

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t