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>
This commit is contained in:
parent
697cdc4680
commit
0857e9d73f
|
@ -126,12 +126,12 @@ static int ql_sem_trylock(struct ql_adapter *qdev, u32 sem_mask)
|
|||
|
||||
int ql_sem_spinlock(struct ql_adapter *qdev, u32 sem_mask)
|
||||
{
|
||||
unsigned int seconds = 3;
|
||||
unsigned int wait_count = 30;
|
||||
do {
|
||||
if (!ql_sem_trylock(qdev, sem_mask))
|
||||
return 0;
|
||||
ssleep(1);
|
||||
} while (--seconds);
|
||||
udelay(100);
|
||||
} while (--wait_count);
|
||||
return -ETIMEDOUT;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue