qcacmn: simplify error handling in ce_init(1)

move ce_id_to_state assignment to the end where ce_init
is guaranteed to succeed.

Change-Id: I5172eb1136dde2aad915c2497ece94150c95630f
CRs-Fixed: 2020794
This commit is contained in:
Houston Hoffman 2017-03-13 14:38:09 -07:00 • committed by Sandeep Puligilla
commit b01db18853

View file

@ -897,7 +897,6 @@ struct CE_handle *ce_init(struct hif_softc *scn,
return NULL;
}
malloc_CE_state = true;
scn->ce_id_to_state[CE_id] = CE_state;
qdf_spinlock_create(&CE_state->ce_index_lock);
CE_state->id = CE_id;
@ -942,7 +941,6 @@ struct CE_handle *ce_init(struct hif_softc *scn,
HIF_ERROR("%s: src ring has no mem", __func__);
if (malloc_CE_state) {
/* allocated CE_state locally */
scn->ce_id_to_state[CE_id] = NULL;
qdf_mem_free(CE_state);
malloc_CE_state = false;
}
@ -1011,7 +1009,6 @@ struct CE_handle *ce_init(struct hif_softc *scn,
}
if (malloc_CE_state) {
/* allocated CE_state locally */
scn->ce_id_to_state[CE_id] = NULL;
qdf_mem_free(CE_state);
malloc_CE_state = false;
}
@ -1094,6 +1091,7 @@ struct CE_handle *ce_init(struct hif_softc *scn,
/* update the htt_data attribute */
ce_mark_datapath(CE_state);
scn->ce_id_to_state[CE_id] = CE_state;
return (struct CE_handle *)CE_state;