Merge "msm: camera: reqmgr: Workqueue congestion handling" into camera-kernel.lnx.4.0
Esse commit está contido em:

commit de
Gerrit - the friendly Code Review server

commit
992378c626
@@ -1694,18 +1694,24 @@ static int __cam_req_mgr_process_req(struct cam_req_mgr_core_link *link,
|
||||
|
||||
rc = __cam_req_mgr_send_req(link, link->req.in_q, trigger, &dev);
|
||||
if (rc < 0) {
|
||||
/* Apply req failed retry at next sof */
|
||||
slot->status = CRM_SLOT_STATUS_REQ_PENDING;
|
||||
if (in_q->last_applied_idx < in_q->rd_idx) {
|
||||
/* Apply req failed retry at next sof */
|
||||
slot->status = CRM_SLOT_STATUS_REQ_PENDING;
|
||||
|
||||
link->retry_cnt++;
|
||||
if (link->retry_cnt == MAXIMUM_RETRY_ATTEMPTS) {
|
||||
CAM_DBG(CAM_CRM,
|
||||
"Max retry attempts reached on link[0x%x] for req [%lld]",
|
||||
link->link_hdl,
|
||||
in_q->slot[in_q->rd_idx].req_id);
|
||||
__cam_req_mgr_notify_error_on_link(link, dev);
|
||||
link->retry_cnt = 0;
|
||||
}
|
||||
link->retry_cnt++;
|
||||
if (link->retry_cnt == MAXIMUM_RETRY_ATTEMPTS) {
|
||||
CAM_DBG(CAM_CRM,
|
||||
"Max retry attempts reached on link[0x%x] for req [%lld]",
|
||||
link->link_hdl,
|
||||
in_q->slot[in_q->rd_idx].req_id);
|
||||
__cam_req_mgr_notify_error_on_link(link, dev);
|
||||
link->retry_cnt = 0;
|
||||
}
|
||||
} else
|
||||
CAM_WARN(CAM_CRM,
|
||||
"workqueue congestion, last applied idx:%d rd idx:%d",
|
||||
in_q->last_applied_idx,
|
||||
in_q->rd_idx);
|
||||
} else {
|
||||
if (link->retry_cnt)
|
||||
link->retry_cnt = 0;
|
||||
|
Referência em uma nova issue
Block a user