Re: [PATCH] soc: qcom: qmi: Change txn wait to non-interruptible

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu 21 Feb 18:33 PST 2019, Chris Lew wrote:

> 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.
> 
> Signed-off-by: Chris Lew <clew@xxxxxxxxxxxxxx>

Reviewed-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx>

Regards,
Bjorn

> ---
>  drivers/soc/qcom/qmi_interface.c | 7 ++-----
>  1 file 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;
> -- 
> The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
> a Linux Foundation Collaborative Project
> 



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux