msm: rpm: Replace mutex_lock_interruptible with mutex_lock
mutex_lock_interruptible() bails on signal pending. Instead use the
mutex_lock() variant and let the caller handle the pending signal
condition.
Change-Id: Idda3f13aeb15b16e1377facf6ad35b030a69b85a
Signed-off-by: Praveen Chidambaram <pchidamb@codeaurora.org>
diff --git a/arch/arm/mach-msm/rpm.c b/arch/arm/mach-msm/rpm.c
index 2eac3c1..b0fa3d2 100644
--- a/arch/arm/mach-msm/rpm.c
+++ b/arch/arm/mach-msm/rpm.c
@@ -437,7 +437,6 @@
*
* Return value:
* 0: success
- * -EINTR: interrupted
* -EINVAL: invalid <ctx> or invalid id in <req> array
* -ENOSPC: request rejected
* -ENODEV: RPM driver not initialized
@@ -464,10 +463,7 @@
rc = msm_rpm_set_exclusive_noirq(ctx, sel_masks, req, count);
spin_unlock_irqrestore(&msm_rpm_lock, flags);
} else {
- rc = mutex_lock_interruptible(&msm_rpm_mutex);
- if (rc)
- goto set_common_exit;
-
+ mutex_lock(&msm_rpm_mutex);
rc = msm_rpm_set_exclusive(ctx, sel_masks, req, count);
mutex_unlock(&msm_rpm_mutex);
}
@@ -479,7 +475,6 @@
/*
* Return value:
* 0: success
- * -EINTR: interrupted
* -EINVAL: invalid <ctx> or invalid id in <req> array
* -ENODEV: RPM driver not initialized.
*/
@@ -518,10 +513,7 @@
spin_unlock_irqrestore(&msm_rpm_lock, flags);
BUG_ON(rc);
} else {
- rc = mutex_lock_interruptible(&msm_rpm_mutex);
- if (rc)
- goto clear_common_exit;
-
+ mutex_lock(&msm_rpm_mutex);
rc = msm_rpm_set_exclusive(ctx, sel_masks, r, ARRAY_SIZE(r));
mutex_unlock(&msm_rpm_mutex);
BUG_ON(rc);
@@ -683,7 +675,6 @@
*
* Return value:
* 0: success
- * -EINTR: interrupted
* -EINVAL: invalid <ctx> or invalid id in <req> array
* -ENOSPC: request rejected
* -ENODEV: RPM driver not initialized
@@ -724,7 +715,6 @@
*
* Return value:
* 0: success
- * -EINTR: interrupted
* -EINVAL: invalid <ctx> or invalid id in <req> array
*/
int msm_rpm_clear(int ctx, struct msm_rpm_iv_pair *req, int count)
@@ -769,7 +759,6 @@
*
* Return value:
* 0: success
- * -EINTR: interrupted
* -EINVAL: invalid id in <req> array
* -ENODEV: RPM driver not initialized
*/
@@ -787,9 +776,7 @@
if (rc)
goto register_notification_exit;
- rc = mutex_lock_interruptible(&msm_rpm_mutex);
- if (rc)
- goto register_notification_exit;
+ mutex_lock(&msm_rpm_mutex);
if (!msm_rpm_init_notif_done) {
msm_rpm_initialize_notification();
@@ -823,7 +810,6 @@
*
* Return value:
* 0: success
- * -EINTR: interrupted
* -ENODEV: RPM driver not initialized
*/
int msm_rpm_unregister_notification(struct msm_rpm_notification *n)
@@ -831,13 +817,10 @@
unsigned long flags;
unsigned int ctx;
struct msm_rpm_notif_config cfg;
- int rc;
+ int rc = 0;
int i;
- rc = mutex_lock_interruptible(&msm_rpm_mutex);
- if (rc)
- goto unregister_notification_exit;
-
+ mutex_lock(&msm_rpm_mutex);
ctx = MSM_RPM_CTX_SET_0;
cfg = msm_rpm_notif_cfgs[ctx];
@@ -854,7 +837,6 @@
msm_rpm_update_notification(ctx, &msm_rpm_notif_cfgs[ctx], &cfg);
mutex_unlock(&msm_rpm_mutex);
-unregister_notification_exit:
return rc;
}
EXPORT_SYMBOL(msm_rpm_unregister_notification);