qcacld-3.0: Fix uc_op_work->msg leak from uC ready callback

The Change-Id: I69c813047ab4b1b129e4fb057d8aacbef5cc9efea
is missed as part of UMAC IPA componentization changes.
Propagate the missed change to IPA component.

Change-Id: I2c346a266c2c767dd37b5901d8d671e475449a01
CRs-Fixed: 2233325
Tento commit je obsažen v:
Sravan Kumar Kairam
2018-04-26 15:35:47 +05:30
odevzdal nshrivas
rodič 1c5582ed1e
revize 7eb6e4c809

Zobrazit soubor

@@ -114,6 +114,13 @@ static void wlan_ipa_uc_loaded_uc_cb(void *priv_ctxt)
}
ipa_ctx = priv_ctxt;
ipa_ctx->uc_loaded = true;
uc_op_work = &ipa_ctx->uc_op_work[WLAN_IPA_UC_OPCODE_UC_READY];
if (!list_empty(&uc_op_work->work.work.entry)) {
/* uc_op_work is not initialized yet */
return;
}
msg = qdf_mem_malloc(sizeof(*msg));
if (!msg) {
@@ -123,14 +130,13 @@ static void wlan_ipa_uc_loaded_uc_cb(void *priv_ctxt)
msg->op_code = WLAN_IPA_UC_OPCODE_UC_READY;
uc_op_work = &ipa_ctx->uc_op_work[msg->op_code];
/* When the same uC OPCODE is already pended, just return */
if (uc_op_work->msg)
goto done;
uc_op_work->msg = msg;
qdf_sched_work(0, &uc_op_work->work);
/* work handler will free the msg buffer */
return;
@@ -2349,8 +2355,6 @@ static void wlan_ipa_uc_loaded_handler(struct wlan_ipa_priv *ipa_ctx)
return;
}
ipa_ctx->uc_loaded = true;
/* Connect pipe */
status = wlan_ipa_wdi_setup(ipa_ctx, qdf_dev);
if (status) {