Loading drivers/platform/msm/ipa/ipa_v3/ipa_client.c +5 −5 Original line number Diff line number Diff line Loading @@ -1609,6 +1609,7 @@ int ipa3_release_gsi_channel(u32 clnt_hdl) struct ipa3_ep_context *ep; int result = -EFAULT; enum gsi_status gsi_res; unsigned long flags; IPADBG("entry\n"); if (clnt_hdl >= ipa3_ctx->ipa_num_pipes || Loading @@ -1623,10 +1624,9 @@ int ipa3_release_gsi_channel(u32 clnt_hdl) IPA_ACTIVE_CLIENTS_INC_EP(ipa3_get_client_mapping(clnt_hdl)); /* Set the disconnect in progress flag to avoid calling cb.*/ spin_lock(&ipa3_ctx->disconnect_lock); spin_lock_irqsave(&ipa3_ctx->disconnect_lock, flags); atomic_set(&ep->disconnect_in_progress, 1); spin_unlock(&ipa3_ctx->disconnect_lock); spin_unlock_irqrestore(&ipa3_ctx->disconnect_lock, flags); gsi_res = gsi_dealloc_channel(ep->gsi_chan_hdl); if (gsi_res != GSI_STATUS_SUCCESS) { Loading @@ -1646,9 +1646,9 @@ int ipa3_release_gsi_channel(u32 clnt_hdl) if (!ep->keep_ipa_awake) IPA_ACTIVE_CLIENTS_DEC_EP(ipa3_get_client_mapping(clnt_hdl)); spin_lock(&ipa3_ctx->disconnect_lock); spin_lock_irqsave(&ipa3_ctx->disconnect_lock, flags); memset(&ipa3_ctx->ep[clnt_hdl], 0, sizeof(struct ipa3_ep_context)); spin_unlock(&ipa3_ctx->disconnect_lock); spin_unlock_irqrestore(&ipa3_ctx->disconnect_lock, flags); IPADBG("exit\n"); return 0; Loading drivers/platform/msm/ipa/ipa_v3/ipa_utils.c +2 −5 Original line number Diff line number Diff line Loading @@ -7120,16 +7120,13 @@ int ipa3_alloc_counter_id(struct ipa_ioc_flt_rt_counter_alloc *header) { int i, unused_cnt, unused_max, unused_start_id; struct ipa_ioc_flt_rt_counter_alloc *counter; idr_preload(GFP_KERNEL); spin_lock(&ipa3_ctx->flt_rt_counters.hdl_lock); counter = kmem_cache_zalloc(ipa3_ctx->fnr_stats_cache, GFP_KERNEL); if (!counter) { IPAERR_RL("failed to alloc fnr stats counter object\n"); spin_unlock(&ipa3_ctx->flt_rt_counters.hdl_lock); return -ENOMEM; } idr_preload(GFP_KERNEL); spin_lock(&ipa3_ctx->flt_rt_counters.hdl_lock); memcpy(counter, header, sizeof(struct ipa_ioc_flt_rt_counter_alloc)); /* allocate hw counters */ counter->hw_counter.start_id = 0; Loading Loading
drivers/platform/msm/ipa/ipa_v3/ipa_client.c +5 −5 Original line number Diff line number Diff line Loading @@ -1609,6 +1609,7 @@ int ipa3_release_gsi_channel(u32 clnt_hdl) struct ipa3_ep_context *ep; int result = -EFAULT; enum gsi_status gsi_res; unsigned long flags; IPADBG("entry\n"); if (clnt_hdl >= ipa3_ctx->ipa_num_pipes || Loading @@ -1623,10 +1624,9 @@ int ipa3_release_gsi_channel(u32 clnt_hdl) IPA_ACTIVE_CLIENTS_INC_EP(ipa3_get_client_mapping(clnt_hdl)); /* Set the disconnect in progress flag to avoid calling cb.*/ spin_lock(&ipa3_ctx->disconnect_lock); spin_lock_irqsave(&ipa3_ctx->disconnect_lock, flags); atomic_set(&ep->disconnect_in_progress, 1); spin_unlock(&ipa3_ctx->disconnect_lock); spin_unlock_irqrestore(&ipa3_ctx->disconnect_lock, flags); gsi_res = gsi_dealloc_channel(ep->gsi_chan_hdl); if (gsi_res != GSI_STATUS_SUCCESS) { Loading @@ -1646,9 +1646,9 @@ int ipa3_release_gsi_channel(u32 clnt_hdl) if (!ep->keep_ipa_awake) IPA_ACTIVE_CLIENTS_DEC_EP(ipa3_get_client_mapping(clnt_hdl)); spin_lock(&ipa3_ctx->disconnect_lock); spin_lock_irqsave(&ipa3_ctx->disconnect_lock, flags); memset(&ipa3_ctx->ep[clnt_hdl], 0, sizeof(struct ipa3_ep_context)); spin_unlock(&ipa3_ctx->disconnect_lock); spin_unlock_irqrestore(&ipa3_ctx->disconnect_lock, flags); IPADBG("exit\n"); return 0; Loading
drivers/platform/msm/ipa/ipa_v3/ipa_utils.c +2 −5 Original line number Diff line number Diff line Loading @@ -7120,16 +7120,13 @@ int ipa3_alloc_counter_id(struct ipa_ioc_flt_rt_counter_alloc *header) { int i, unused_cnt, unused_max, unused_start_id; struct ipa_ioc_flt_rt_counter_alloc *counter; idr_preload(GFP_KERNEL); spin_lock(&ipa3_ctx->flt_rt_counters.hdl_lock); counter = kmem_cache_zalloc(ipa3_ctx->fnr_stats_cache, GFP_KERNEL); if (!counter) { IPAERR_RL("failed to alloc fnr stats counter object\n"); spin_unlock(&ipa3_ctx->flt_rt_counters.hdl_lock); return -ENOMEM; } idr_preload(GFP_KERNEL); spin_lock(&ipa3_ctx->flt_rt_counters.hdl_lock); memcpy(counter, header, sizeof(struct ipa_ioc_flt_rt_counter_alloc)); /* allocate hw counters */ counter->hw_counter.start_id = 0; Loading