diff --git a/drivers/media/platform/msm/camera_v2/msm.c b/drivers/media/platform/msm/camera_v2/msm.c index ecf416d38f621635844556470848ca32eae4c7f0..1fd1065d536e09dcec6558a36d59335ed12ec56d 100644 --- a/drivers/media/platform/msm/camera_v2/msm.c +++ b/drivers/media/platform/msm/camera_v2/msm.c @@ -407,8 +407,10 @@ void msm_delete_command_ack_q(unsigned int session_id, unsigned int stream_id) cmd_ack = msm_queue_find(&session->command_ack_q, struct msm_command_ack, list, __msm_queue_find_command_ack_q, &stream_id); - if (!cmd_ack) + if (!cmd_ack) { + mutex_unlock(&session->lock); return; + } msm_queue_drain(&cmd_ack->command_q, struct msm_command, list);