aboutsummaryrefslogtreecommitdiff
path: root/drivers/net/bnx2x.h
diff options
context:
space:
mode:
authorEilon Greenstein2009-01-14 21:22:18 -0800
committerDavid S. Miller2009-01-15 08:28:10 -0800
commit1cf167f27ad2720af11ee8aa350009342f909e70 (patch)
tree3733c5516e5518cdab133895e515cc4355a216e0 /drivers/net/bnx2x.h
parentc53a6ee88b0a91bd012ef1b7988c0b93dae6f24d (diff)
bnx2x: Using singlethread work queue
Since slow-path events, including link update, are handled in work-queue, a race condition was introduced in the self-test that sometimes caused the link status to fail: the self-test was running under RTNL lock, and if the link-watch was scheduled it stoped the shared work-queue (waiting for the RTNL lock) and so the link update event was not handled until the self-test ended (releasing the RTNL lock) with failure (since the link status was not updated) Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/bnx2x.h')
-rw-r--r--drivers/net/bnx2x.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/bnx2x.h b/drivers/net/bnx2x.h
index fd705d1295a7..96a8889afbe1 100644
--- a/drivers/net/bnx2x.h
+++ b/drivers/net/bnx2x.h
@@ -811,7 +811,7 @@ struct bnx2x {
int pm_cap;
int pcie_cap;
- struct work_struct sp_task;
+ struct delayed_work sp_task;
struct work_struct reset_task;
struct timer_list timer;