msm: ipc: Allow QMI clients to send messages after IRSC is complete
Currently there exists a small time interval during initialization
where QMI clients in user-space can communicate with QMI services
before the IPC Router Security Configuration(IRSC) is complete.
Only allow clients to communicate after IRSC is complete.
Change-Id: I773ad5b3cb02c51a725cd60a77466876c1498b64
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@codeaurora.org>
diff --git a/arch/arm/mach-msm/ipc_router.c b/arch/arm/mach-msm/ipc_router.c
index ca07ae0..a2da3a5 100644
--- a/arch/arm/mach-msm/ipc_router.c
+++ b/arch/arm/mach-msm/ipc_router.c
@@ -194,12 +194,6 @@
static struct workqueue_struct *msm_ipc_router_workqueue;
enum {
- CLIENT_PORT,
- SERVER_PORT,
- CONTROL_PORT,
-};
-
-enum {
DOWN,
UP,
};
@@ -2160,6 +2154,11 @@
mutex_lock(&control_ports_lock);
list_del(&port_ptr->list);
mutex_unlock(&control_ports_lock);
+ } else if (port_ptr->type == IRSC_PORT) {
+ mutex_lock(&local_ports_lock);
+ list_del(&port_ptr->list);
+ mutex_unlock(&local_ports_lock);
+ signal_irsc_completion();
}
mutex_lock(&port_ptr->port_rx_q_lock);