diff options
author | Eilon Greenstein <eilong@broadcom.com> | 2009-01-15 00:22:18 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-01-15 11:28:10 -0500 |
commit | 1cf167f27ad2720af11ee8aa350009342f909e70 (patch) | |
tree | 3733c5516e5518cdab133895e515cc4355a216e0 /drivers/net/bnx2x.h | |
parent | c53a6ee88b0a91bd012ef1b7988c0b93dae6f24d (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.h | 2 |
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 { | |||
811 | int pm_cap; | 811 | int pm_cap; |
812 | int pcie_cap; | 812 | int pcie_cap; |
813 | 813 | ||
814 | struct work_struct sp_task; | 814 | struct delayed_work sp_task; |
815 | struct work_struct reset_task; | 815 | struct work_struct reset_task; |
816 | 816 | ||
817 | struct timer_list timer; | 817 | struct timer_list timer; |