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

Commit 44f2f7b0 authored by Chris Lew's avatar Chris Lew
Browse files

rpmsg: Change complete to complete_all for open state



The open_req and open_ack completion variables are the state variables
to represet a channel remote as open. Use complete_all so there are no
races with waiters and using completion_done.

Change-Id: I073902bbbf8920534d96c9d54ac9fb16ab13614f
Signed-off-by: default avatarChris Lew <clew@codeaurora.org>
parent 8ecd48cc
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -1016,7 +1016,7 @@ static int qcom_glink_rx_open_ack(struct qcom_glink *glink, unsigned int lcid)
	}

	CH_INFO(channel, "\n");
	complete(&channel->open_ack);
	complete_all(&channel->open_ack);

	return 0;
}
@@ -1474,7 +1474,7 @@ static int qcom_glink_rx_open(struct qcom_glink *glink, unsigned int rcid,
	channel->rcid = ret;
	spin_unlock_irqrestore(&glink->idr_lock, flags);

	complete(&channel->open_req);
	complete_all(&channel->open_req);

	if (create_device) {
		rpdev = kzalloc(sizeof(*rpdev), GFP_KERNEL);