diff --git a/drivers/cam_req_mgr/cam_req_mgr_core.c b/drivers/cam_req_mgr/cam_req_mgr_core.c index 27c6e22b594b..3942655f58f9 100644 --- a/drivers/cam_req_mgr/cam_req_mgr_core.c +++ b/drivers/cam_req_mgr/cam_req_mgr_core.c @@ -5001,7 +5001,10 @@ int cam_req_mgr_link_control(struct cam_req_mgr_link_control *control) link->state = CAM_CRM_LINK_STATE_IDLE; link->skip_init_frame = false; crm_timer_exit(&link->watchdog); - clear_bit(link->activate_seq, g_crm_core_dev->bitmap); + if ((link->activate_seq >= 0) && + (link->activate_seq < MAXIMUM_LINKS_PER_SESSION)) + clear_bit(link->activate_seq, g_crm_core_dev->bitmap); + link->activate_seq = -1; spin_unlock_bh(&link->link_state_spin_lock); CAM_DBG(CAM_CRM,