From: Arun Kumar Neelakantam <aneela@codeaurora.org> To: ohad@wizery.com, bjorn.andersson@linaro.org, clew@codeaurora.org, sricharan@codeaurora.org Cc: linux-remoteproc@vger.kernel.org, linux-kernel@vger.kernel.org, Arun Kumar Neelakantam <aneela@codeaurora.org>, Andy Gross <agross@kernel.org>, "open list:ARM/QUALCOMM SUPPORT" <linux-arm-msm@vger.kernel.org> Subject: [PATCH V5 1/5] rpmsg: glink: Use complete_all for open states Date: Fri, 22 Nov 2019 10:05:12 +0000 [thread overview] Message-ID: <0101016e92929ca4-d99d10e1-9b60-46d2-a0fd-9eb6bc3c7b09-000000@us-west-2.amazonses.com> (raw) In-Reply-To: <1574417087-27594-1-git-send-email-aneela@codeaurora.org> From: Chris Lew <clew@codeaurora.org> The open_req and open_ack completion variables are the state variables to represet a remote channel as open. Use complete_all so there are no races with waiters and using completion_done. Signed-off-by: Chris Lew <clew@codeaurora.org> Signed-off-by: Arun Kumar Neelakantam <aneela@codeaurora.org> --- drivers/rpmsg/qcom_glink_native.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/rpmsg/qcom_glink_native.c b/drivers/rpmsg/qcom_glink_native.c index 621f1af..609a150f 100644 --- a/drivers/rpmsg/qcom_glink_native.c +++ b/drivers/rpmsg/qcom_glink_native.c @@ -949,7 +949,7 @@ static int qcom_glink_rx_open_ack(struct qcom_glink *glink, unsigned int lcid) return -EINVAL; } - complete(&channel->open_ack); + complete_all(&channel->open_ack); return 0; } @@ -1393,7 +1393,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); -- 1.9.1
WARNING: multiple messages have this Message-ID (diff)
From: Arun Kumar Neelakantam <aneela@codeaurora.org> To: ohad@wizery.com, bjorn.andersson@linaro.org, clew@codeaurora.org, sricharan@codeaurora.org Cc: linux-remoteproc@vger.kernel.org, linux-kernel@vger.kernel.org, Arun Kumar Neelakantam <aneela@codeaurora.org>, Andy Gross <agross@kernel.org>, linux-arm-msm@vger.kernel.org (open list:ARM/QUALCOMM SUPPORT) Subject: [PATCH V5 1/5] rpmsg: glink: Use complete_all for open states Date: Fri, 22 Nov 2019 10:05:12 +0000 [thread overview] Message-ID: <0101016e92929ca4-d99d10e1-9b60-46d2-a0fd-9eb6bc3c7b09-000000@us-west-2.amazonses.com> (raw) In-Reply-To: <1574417087-27594-1-git-send-email-aneela@codeaurora.org> From: Chris Lew <clew@codeaurora.org> The open_req and open_ack completion variables are the state variables to represet a remote channel as open. Use complete_all so there are no races with waiters and using completion_done. Signed-off-by: Chris Lew <clew@codeaurora.org> Signed-off-by: Arun Kumar Neelakantam <aneela@codeaurora.org> --- drivers/rpmsg/qcom_glink_native.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/rpmsg/qcom_glink_native.c b/drivers/rpmsg/qcom_glink_native.c index 621f1af..609a150f 100644 --- a/drivers/rpmsg/qcom_glink_native.c +++ b/drivers/rpmsg/qcom_glink_native.c @@ -949,7 +949,7 @@ static int qcom_glink_rx_open_ack(struct qcom_glink *glink, unsigned int lcid) return -EINVAL; } - complete(&channel->open_ack); + complete_all(&channel->open_ack); return 0; } @@ -1393,7 +1393,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); -- 1.9.1
next prev parent reply other threads:[~2019-11-22 10:05 UTC|newest] Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top [not found] <1574417087-27594-1-git-send-email-aneela@codeaurora.org> 2019-11-22 10:05 ` [PATCH V5 1/5] rpmsg: glink: Use complete_all for open states Arun Kumar Neelakantam 2019-11-22 10:05 ` Arun Kumar Neelakantam [this message] 2019-11-22 10:05 ` Arun Kumar Neelakantam 2019-11-22 10:05 ` [PATCH V5 2/5] rpmsg: Guard against null endpoint ops in destroy Arun Kumar Neelakantam 2019-11-22 10:05 ` Arun Kumar Neelakantam 2019-11-22 10:05 ` [PATCH V5 3/5] rpmsg: glink: Add support for rpmsg glink chrdev Arun Kumar Neelakantam 2019-11-22 10:05 ` Arun Kumar Neelakantam 2019-11-22 10:05 ` Arun Kumar Neelakantam 2019-11-22 10:05 ` [PATCH V5 4/5] rpmsg: glink: Expose rpmsg name attr for glink Arun Kumar Neelakantam 2019-11-22 10:05 ` Arun Kumar Neelakantam 2019-11-22 10:05 ` Arun Kumar Neelakantam 2019-11-22 10:05 ` [PATCH V5 5/5] rpmsg: glink: unregister rpmsg device during endpoint destroy Arun Kumar Neelakantam 2019-11-22 10:05 ` Arun Kumar Neelakantam 2019-11-22 10:05 ` Arun Kumar Neelakantam 2020-05-13 5:10 [PATCH V5 0/5] Add chrdev and name query support for GLINK Arun Kumar Neelakantam 2020-05-13 5:10 ` [PATCH V5 1/5] rpmsg: glink: Use complete_all for open states Arun Kumar Neelakantam 2020-05-13 20:59 ` Mathieu Poirier 2020-05-20 9:28 ` Arun Kumar Neelakantam
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=0101016e92929ca4-d99d10e1-9b60-46d2-a0fd-9eb6bc3c7b09-000000@us-west-2.amazonses.com \ --to=aneela@codeaurora.org \ --cc=agross@kernel.org \ --cc=bjorn.andersson@linaro.org \ --cc=clew@codeaurora.org \ --cc=linux-arm-msm@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-remoteproc@vger.kernel.org \ --cc=ohad@wizery.com \ --cc=sricharan@codeaurora.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.