aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorRon Mercer <ron.mercer@qlogic.com>2009-01-09 06:31:52 -0500
committerDavid S. Miller <davem@davemloft.net>2009-01-11 03:07:35 -0500
commit0857e9d73feea0125280dcd431cee84f6cb3b4e2 (patch)
tree1ec35349243852e7457b187cc41f06d0f157176a /drivers
parent697cdc46801d1106a25d27a8225cb925f0a7f5aa (diff)
qlge: Fix schedule while atomic issue.
There is no need to sleep while waiting for the hardware semaphore to become available. Signed-off-by: Ron Mercer <ron.mercer@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/qlge/qlge_main.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/qlge/qlge_main.c b/drivers/net/qlge/qlge_main.c
index 9931cf7b6ad6..543a4135ae04 100644
--- a/drivers/net/qlge/qlge_main.c
+++ b/drivers/net/qlge/qlge_main.c
@@ -126,12 +126,12 @@ static int ql_sem_trylock(struct ql_adapter *qdev, u32 sem_mask)
126 126
127int ql_sem_spinlock(struct ql_adapter *qdev, u32 sem_mask) 127int ql_sem_spinlock(struct ql_adapter *qdev, u32 sem_mask)
128{ 128{
129 unsigned int seconds = 3; 129 unsigned int wait_count = 30;
130 do { 130 do {
131 if (!ql_sem_trylock(qdev, sem_mask)) 131 if (!ql_sem_trylock(qdev, sem_mask))
132 return 0; 132 return 0;
133 ssleep(1); 133 udelay(100);
134 } while (--seconds); 134 } while (--wait_count);
135 return -ETIMEDOUT; 135 return -ETIMEDOUT;
136} 136}
137 137