summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Lew <clew@codeaurora.org>2019-02-21 18:33:39 -0800
committerAndy Gross <andy.gross@linaro.org>2019-03-27 23:32:26 -0500
commit9324df5817c01f55fcde24da0da9df2c2f9392ac (patch)
tree876af334feb315857610a9bcbbb0f1a794ce3ffd
parent8da3daaa097171edd9658a82bbd3f335bc2e03ad (diff)
downloadlinux-9324df5817c01f55fcde24da0da9df2c2f9392ac.tar.gz
linux-9324df5817c01f55fcde24da0da9df2c2f9392ac.tar.bz2
linux-9324df5817c01f55fcde24da0da9df2c2f9392ac.zip
soc: qcom: qmi: Change txn wait to non-interruptible
Current QMI clients are not userspace facing, if their threads are signaled, they do not do any signal checking or propagate the ERESTARTSYS return code up. Remove the interruptible option so clients can finish their QMI transactions even if the thread is signaled. Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org> Signed-off-by: Chris Lew <clew@codeaurora.org> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> Signed-off-by: Andy Gross <andy.gross@linaro.org>
-rw-r--r--drivers/soc/qcom/qmi_interface.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/drivers/soc/qcom/qmi_interface.c b/drivers/soc/qcom/qmi_interface.c
index c239a28e503f..f9e309f0acd3 100644
--- a/drivers/soc/qcom/qmi_interface.c
+++ b/drivers/soc/qcom/qmi_interface.c
@@ -345,8 +345,7 @@ int qmi_txn_wait(struct qmi_txn *txn, unsigned long timeout)
struct qmi_handle *qmi = txn->qmi;
int ret;
- ret = wait_for_completion_interruptible_timeout(&txn->completion,
- timeout);
+ ret = wait_for_completion_timeout(&txn->completion, timeout);
mutex_lock(&qmi->txn_lock);
mutex_lock(&txn->lock);
@@ -354,9 +353,7 @@ int qmi_txn_wait(struct qmi_txn *txn, unsigned long timeout)
mutex_unlock(&txn->lock);
mutex_unlock(&qmi->txn_lock);
- if (ret < 0)
- return ret;
- else if (ret == 0)
+ if (ret == 0)
return -ETIMEDOUT;
else
return txn->result;