Эх сурвалжийг харах

msm: eva: Clean up in case of SSR

Instead of returning from validate session failure with SSR,
doing other required clean up.

Change-Id: I5a2baa7039bc4e23758c541af31648d58a58823c
Signed-off-by: Palak Joshi <[email protected]>
Palak Joshi 1 жил өмнө
parent
commit
536a3ed754

+ 1 - 1
msm/eva/msm_cvp.c

@@ -944,7 +944,7 @@ int msm_cvp_session_stop(struct msm_cvp_inst *inst,
 	}
 	}
 	sq->state = QUEUE_STOP;
 	sq->state = QUEUE_STOP;
 
 
-	pr_info_ratelimited(CVP_DBG_TAG "Stop session: %pK session_id = %d\n",
+	pr_info_ratelimited(CVP_DBG_TAG "Stop session: %pK session_id = %#x\n",
 			"sess", inst, hash32_ptr(inst->session));
 			"sess", inst, hash32_ptr(inst->session));
 	spin_unlock(&sq->lock);
 	spin_unlock(&sq->lock);
 
 

+ 2 - 1
msm/eva/msm_cvp_core.c

@@ -357,7 +357,7 @@ stop_session:
 	if (!tmp) {
 	if (!tmp) {
 		dprintk(CVP_ERR, "%s has a invalid session %llx\n",
 		dprintk(CVP_ERR, "%s has a invalid session %llx\n",
 			__func__, inst);
 			__func__, inst);
-		return -EINVAL;
+		goto exit;
 	}
 	}
 	if (!empty) {
 	if (!empty) {
 		/* STOP SESSION to avoid SMMU fault after releasing ARP */
 		/* STOP SESSION to avoid SMMU fault after releasing ARP */
@@ -378,6 +378,7 @@ stop_session:
 	}
 	}
 release_arp:
 release_arp:
 	cvp_put_inst(tmp);
 	cvp_put_inst(tmp);
+exit:
 	if (cvp_release_arp_buffers(inst))
 	if (cvp_release_arp_buffers(inst))
 		dprintk_rl(CVP_WARN,
 		dprintk_rl(CVP_WARN,
 			"Failed to release persist buffers\n");
 			"Failed to release persist buffers\n");