msm: vidc: Communicate session error to client if aborted.
msm_comm_kill_session is called in driver only in situations where the driver state goes bad. session_abort is called on firmware which may be honored. But still the session_error needs to be communicated to the client or else client will operate oblivious about the bad video driver state. Change-Id: Iafb90cde31a985bf5377fdcdd1a9653a965c5600 Signed-off-by: Abdulla Anam <abdullahanam@codeaurora.org>
This commit is contained in:
parent
ed6ef4b170
commit
9a3382024f
1 changed files with 3 additions and 5 deletions
|
@ -4952,14 +4952,12 @@ int msm_comm_kill_session(struct msm_vidc_inst *inst)
|
|||
if ((inst->state >= MSM_VIDC_OPEN_DONE &&
|
||||
inst->state < MSM_VIDC_CLOSE_DONE) ||
|
||||
inst->state == MSM_VIDC_CORE_INVALID) {
|
||||
rc = msm_comm_session_abort(inst);
|
||||
if (rc == -EBUSY) {
|
||||
if (msm_comm_session_abort(inst)) {
|
||||
msm_comm_generate_sys_error(inst);
|
||||
return 0;
|
||||
} else if (rc)
|
||||
return rc;
|
||||
|
||||
}
|
||||
change_inst_state(inst, MSM_VIDC_CLOSE_DONE);
|
||||
msm_comm_generate_session_error(inst);
|
||||
} else {
|
||||
dprintk(VIDC_WARN,
|
||||
"Inactive session %p, triggering an internal session error\n",
|
||||
|
|
Loading…
Add table
Reference in a new issue