Loading drivers/platform/msm/ipa/ipa_clients/ipa_uc_offload.c +3 −0 Original line number Diff line number Diff line Loading @@ -356,6 +356,7 @@ static int ipa_uc_ntn_alloc_conn_smmu_info(struct ipa_ntn_setup_info *dest, source->buff_pool_base_sgt); if (result) { kfree(dest->data_buff_list); dest->data_buff_list = NULL; return result; } Loading @@ -363,6 +364,7 @@ static int ipa_uc_ntn_alloc_conn_smmu_info(struct ipa_ntn_setup_info *dest, source->ring_base_sgt); if (result) { kfree(dest->data_buff_list); dest->data_buff_list = NULL; ipa_smmu_free_sgt(&dest->buff_pool_base_sgt); return result; } Loading @@ -373,6 +375,7 @@ static int ipa_uc_ntn_alloc_conn_smmu_info(struct ipa_ntn_setup_info *dest, static void ipa_uc_ntn_free_conn_smmu_info(struct ipa_ntn_setup_info *params) { kfree(params->data_buff_list); params->data_buff_list = NULL; ipa_smmu_free_sgt(¶ms->buff_pool_base_sgt); ipa_smmu_free_sgt(¶ms->ring_base_sgt); } Loading drivers/platform/msm/ipa/ipa_v3/ipa.c +4 −0 Original line number Diff line number Diff line Loading @@ -393,6 +393,7 @@ static void ipa3_active_clients_log_destroy(void) kfree(active_clients_table_buf); active_clients_table_buf = NULL; kfree(ipa3_ctx->ipa3_active_clients_logging.log_buffer[0]); ipa3_ctx->ipa3_active_clients_logging.log_buffer[0] = NULL; ipa3_ctx->ipa3_active_clients_logging.log_head = 0; ipa3_ctx->ipa3_active_clients_logging.log_tail = IPA3_ACTIVE_CLIENTS_LOG_BUFFER_SIZE_LINES - 1; Loading Loading @@ -7263,8 +7264,10 @@ static int ipa3_pre_init(const struct ipa3_plat_drv_res *resource_p, fail_init_mem_partition: fail_bind: kfree(ipa3_ctx->ctrl); ipa3_ctx->ctrl = NULL; fail_mem_ctrl: kfree(ipa3_ctx->ipa_tz_unlock_reg); ipa3_ctx->ipa_tz_unlock_reg = NULL; fail_tz_unlock_reg: if (ipa3_ctx->logbuf) ipc_log_context_destroy(ipa3_ctx->logbuf); Loading Loading @@ -7703,6 +7706,7 @@ static int get_ipa_dts_configuration(struct platform_device *pdev, IPAERR("failed to read register addresses\n"); kfree(ipa_tz_unlock_reg); kfree(ipa_drv_res->ipa_tz_unlock_reg); ipa_drv_res->ipa_tz_unlock_reg = NULL; return -EFAULT; } Loading drivers/platform/msm/ipa/ipa_v3/ipa_dp.c +4 −0 Original line number Diff line number Diff line Loading @@ -1297,10 +1297,12 @@ int ipa3_setup_sys_pipe(struct ipa_sys_connect_params *sys_in, u32 *clnt_hdl) ep->sys->repl_hdlr = ipa3_replenish_rx_cache; ep->sys->repl->capacity = 0; kfree(ep->sys->repl); ep->sys->repl = NULL; fail_page_recycle_repl: if (ep->sys->page_recycle_repl) { ep->sys->page_recycle_repl->capacity = 0; kfree(ep->sys->page_recycle_repl); ep->sys->page_recycle_repl = NULL; } fail_gen2: ipa_pm_deregister(ep->sys->pm_hdl); Loading Loading @@ -2703,6 +2705,7 @@ static void ipa3_cleanup_rx(struct ipa3_sys_context *sys) kfree(sys->repl->cache); kfree(sys->repl); sys->repl = NULL; } if (sys->page_recycle_repl) { for (i = 0; i < sys->page_recycle_repl->capacity; i++) { Loading @@ -2721,6 +2724,7 @@ static void ipa3_cleanup_rx(struct ipa3_sys_context *sys) } kfree(sys->page_recycle_repl->cache); kfree(sys->page_recycle_repl); sys->page_recycle_repl = NULL; } } Loading drivers/platform/msm/ipa/ipa_v3/ipa_odl.c +1 −0 Original line number Diff line number Diff line Loading @@ -770,6 +770,7 @@ int ipa_odl_init(void) class_destroy(odl_cdev[0].class); create_char_dev0_fail: kfree(ipa3_odl_ctx); ipa3_odl_ctx = NULL; fail_mem_ctx: return result; } Loading drivers/platform/msm/ipa/ipa_v3/ipa_pm.c +1 −0 Original line number Diff line number Diff line Loading @@ -635,6 +635,7 @@ int ipa_pm_init(struct ipa_pm_init_params *params) if (!ipa_pm_ctx->wq) { IPA_PM_ERR("create workqueue failed\n"); kfree(ipa_pm_ctx); ipa_pm_ctx = NULL; return -ENOMEM; } Loading Loading
drivers/platform/msm/ipa/ipa_clients/ipa_uc_offload.c +3 −0 Original line number Diff line number Diff line Loading @@ -356,6 +356,7 @@ static int ipa_uc_ntn_alloc_conn_smmu_info(struct ipa_ntn_setup_info *dest, source->buff_pool_base_sgt); if (result) { kfree(dest->data_buff_list); dest->data_buff_list = NULL; return result; } Loading @@ -363,6 +364,7 @@ static int ipa_uc_ntn_alloc_conn_smmu_info(struct ipa_ntn_setup_info *dest, source->ring_base_sgt); if (result) { kfree(dest->data_buff_list); dest->data_buff_list = NULL; ipa_smmu_free_sgt(&dest->buff_pool_base_sgt); return result; } Loading @@ -373,6 +375,7 @@ static int ipa_uc_ntn_alloc_conn_smmu_info(struct ipa_ntn_setup_info *dest, static void ipa_uc_ntn_free_conn_smmu_info(struct ipa_ntn_setup_info *params) { kfree(params->data_buff_list); params->data_buff_list = NULL; ipa_smmu_free_sgt(¶ms->buff_pool_base_sgt); ipa_smmu_free_sgt(¶ms->ring_base_sgt); } Loading
drivers/platform/msm/ipa/ipa_v3/ipa.c +4 −0 Original line number Diff line number Diff line Loading @@ -393,6 +393,7 @@ static void ipa3_active_clients_log_destroy(void) kfree(active_clients_table_buf); active_clients_table_buf = NULL; kfree(ipa3_ctx->ipa3_active_clients_logging.log_buffer[0]); ipa3_ctx->ipa3_active_clients_logging.log_buffer[0] = NULL; ipa3_ctx->ipa3_active_clients_logging.log_head = 0; ipa3_ctx->ipa3_active_clients_logging.log_tail = IPA3_ACTIVE_CLIENTS_LOG_BUFFER_SIZE_LINES - 1; Loading Loading @@ -7263,8 +7264,10 @@ static int ipa3_pre_init(const struct ipa3_plat_drv_res *resource_p, fail_init_mem_partition: fail_bind: kfree(ipa3_ctx->ctrl); ipa3_ctx->ctrl = NULL; fail_mem_ctrl: kfree(ipa3_ctx->ipa_tz_unlock_reg); ipa3_ctx->ipa_tz_unlock_reg = NULL; fail_tz_unlock_reg: if (ipa3_ctx->logbuf) ipc_log_context_destroy(ipa3_ctx->logbuf); Loading Loading @@ -7703,6 +7706,7 @@ static int get_ipa_dts_configuration(struct platform_device *pdev, IPAERR("failed to read register addresses\n"); kfree(ipa_tz_unlock_reg); kfree(ipa_drv_res->ipa_tz_unlock_reg); ipa_drv_res->ipa_tz_unlock_reg = NULL; return -EFAULT; } Loading
drivers/platform/msm/ipa/ipa_v3/ipa_dp.c +4 −0 Original line number Diff line number Diff line Loading @@ -1297,10 +1297,12 @@ int ipa3_setup_sys_pipe(struct ipa_sys_connect_params *sys_in, u32 *clnt_hdl) ep->sys->repl_hdlr = ipa3_replenish_rx_cache; ep->sys->repl->capacity = 0; kfree(ep->sys->repl); ep->sys->repl = NULL; fail_page_recycle_repl: if (ep->sys->page_recycle_repl) { ep->sys->page_recycle_repl->capacity = 0; kfree(ep->sys->page_recycle_repl); ep->sys->page_recycle_repl = NULL; } fail_gen2: ipa_pm_deregister(ep->sys->pm_hdl); Loading Loading @@ -2703,6 +2705,7 @@ static void ipa3_cleanup_rx(struct ipa3_sys_context *sys) kfree(sys->repl->cache); kfree(sys->repl); sys->repl = NULL; } if (sys->page_recycle_repl) { for (i = 0; i < sys->page_recycle_repl->capacity; i++) { Loading @@ -2721,6 +2724,7 @@ static void ipa3_cleanup_rx(struct ipa3_sys_context *sys) } kfree(sys->page_recycle_repl->cache); kfree(sys->page_recycle_repl); sys->page_recycle_repl = NULL; } } Loading
drivers/platform/msm/ipa/ipa_v3/ipa_odl.c +1 −0 Original line number Diff line number Diff line Loading @@ -770,6 +770,7 @@ int ipa_odl_init(void) class_destroy(odl_cdev[0].class); create_char_dev0_fail: kfree(ipa3_odl_ctx); ipa3_odl_ctx = NULL; fail_mem_ctx: return result; } Loading
drivers/platform/msm/ipa/ipa_v3/ipa_pm.c +1 −0 Original line number Diff line number Diff line Loading @@ -635,6 +635,7 @@ int ipa_pm_init(struct ipa_pm_init_params *params) if (!ipa_pm_ctx->wq) { IPA_PM_ERR("create workqueue failed\n"); kfree(ipa_pm_ctx); ipa_pm_ctx = NULL; return -ENOMEM; } Loading