mirror of https://gitee.com/openkylin/linux.git
qlge: fix a timeout loop in ql_change_rx_buffers()
The problem here is that after the loop we test for "if (!i) " but because "i--" is a post-op we exit with i set to -1. I have fixed this by changing it to a pre-op instead. I had to change the starting value from 3 to 4 so that we still iterate 3 times. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
c7557e6a56
commit
351434c6ba
|
@ -4211,8 +4211,9 @@ static int ql_change_rx_buffers(struct ql_adapter *qdev)
|
|||
|
||||
/* Wait for an outstanding reset to complete. */
|
||||
if (!test_bit(QL_ADAPTER_UP, &qdev->flags)) {
|
||||
int i = 3;
|
||||
while (i-- && !test_bit(QL_ADAPTER_UP, &qdev->flags)) {
|
||||
int i = 4;
|
||||
|
||||
while (--i && !test_bit(QL_ADAPTER_UP, &qdev->flags)) {
|
||||
netif_err(qdev, ifup, qdev->ndev,
|
||||
"Waiting for adapter UP...\n");
|
||||
ssleep(1);
|
||||
|
|
Loading…
Reference in New Issue