Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2abad79a authored by Andy Shevchenko's avatar Andy Shevchenko Committed by David S. Miller
Browse files

qla3xxx: don't allow never end busy loop



The counter variable wasn't increased at all which may stuck under
certain circumstances.

Signed-off-by: default avatarAndy Shevchenko <andy.shevchenko@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 627d2cc0
Loading
Loading
Loading
Loading
+3 −5
Original line number Diff line number Diff line
@@ -146,10 +146,7 @@ static int ql_wait_for_drvr_lock(struct ql3_adapter *qdev)
{
	int i = 0;

	while (i < 10) {
		if (i)
			ssleep(1);

	do {
		if (ql_sem_lock(qdev,
				QL_DRVR_SEM_MASK,
				(QL_RESOURCE_BITS_BASE_CODE | (qdev->mac_index)
@@ -158,7 +155,8 @@ static int ql_wait_for_drvr_lock(struct ql3_adapter *qdev)
				      "driver lock acquired\n");
			return 1;
		}
	}
		ssleep(1);
	} while (++i < 10);

	netdev_err(qdev->ndev, "Timed out waiting for driver lock...\n");
	return 0;