mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-25 14:13:01 -04:00
ipa: Added changes to move the hdr entry to free list
Added changes to move the hdr free offset list after deteting the hdrs from the hdr table if delted hdr is pointing to the some proc ctx. Signed-off-by: Sivakanth Vaka <quic_svaka@quicinc.com> Signed-off-by: Avinash Kumar <quic_avku@quicinc.com> Change-Id: Ic1f20fc8070ae7a45c2d7a5abd5b9c56a96c49cf
This commit is contained in:
parent
610bee83fa
commit
c8edf34ac9
1 changed files with 10 additions and 5 deletions
|
|
@ -710,7 +710,10 @@ static int __ipa3_del_hdr_proc_ctx(u32 proc_ctx_hdl,
|
|||
return 0;
|
||||
}
|
||||
|
||||
if (release_hdr)
|
||||
if (entry->hdr && entry == entry->hdr->proc_ctx)
|
||||
entry->hdr->proc_ctx = NULL;
|
||||
|
||||
if (entry->hdr && release_hdr)
|
||||
__ipa3_del_hdr(entry->hdr->id, false);
|
||||
|
||||
/* move the offset entry to appropriate free list */
|
||||
|
|
@ -774,17 +777,19 @@ int __ipa3_del_hdr(u32 hdr_hdl, bool by_user)
|
|||
return 0;
|
||||
}
|
||||
|
||||
if (entry->proc_ctx && entry == entry->proc_ctx->hdr)
|
||||
entry->proc_ctx->hdr = NULL;
|
||||
|
||||
if (entry->is_hdr_proc_ctx || entry->proc_ctx) {
|
||||
dma_unmap_single(ipa3_ctx->pdev,
|
||||
entry->phys_base,
|
||||
entry->hdr_len,
|
||||
DMA_TO_DEVICE);
|
||||
__ipa3_del_hdr_proc_ctx(entry->proc_ctx->id, false, false);
|
||||
} else {
|
||||
/* move the offset entry to appropriate free list */
|
||||
list_move(&entry->offset_entry->link,
|
||||
&htbl->head_free_offset_list[entry->offset_entry->bin]);
|
||||
}
|
||||
/* move the offset entry to appropriate free list */
|
||||
list_move(&entry->offset_entry->link,
|
||||
&htbl->head_free_offset_list[entry->offset_entry->bin]);
|
||||
list_del(&entry->link);
|
||||
htbl->hdr_cnt--;
|
||||
entry->cookie = 0;
|
||||
|
|
|
|||
Loading…
Reference in a new issue