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

Commit 0c884567 authored by Suresh Reddy's avatar Suresh Reddy Committed by David S. Miller
Browse files

be2net: release mcc-lock in a failure case in be_cmd_notify_wait()



The mcc/mbox lock is not being released when be_cmd_copy() returns
an error.

Signed-off-by: default avatarSuresh Reddy <suresh.reddy@avagotech.com>
Signed-off-by: default avatarSathya Perla <sathya.perla@avagotech.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent ae4a9d6a
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -851,8 +851,10 @@ static int be_cmd_notify_wait(struct be_adapter *adapter,
		return status;

	dest_wrb = be_cmd_copy(adapter, wrb);
	if (!dest_wrb)
		return -EBUSY;
	if (!dest_wrb) {
		status = -EBUSY;
		goto unlock;
	}

	if (use_mcc(adapter))
		status = be_mcc_notify_wait(adapter);
@@ -862,6 +864,7 @@ static int be_cmd_notify_wait(struct be_adapter *adapter,
	if (!status)
		memcpy(wrb, dest_wrb, sizeof(*wrb));

unlock:
	be_cmd_unlock(adapter);
	return status;
}