From: Dhiraj Shah <redacted>
Sent: Thursday, June 10, 2021 12:53 PM
...
Hi Dexuan,
Thanks for the feedback.
You are right saying ‘mana_hwc_destroy_wq' free’s up the queue.
However for example if function 'mana_hwc_alloc_dma_buf' fails it will goto
‘out' and call ‘mana_hwc_destroy_wq', the value 'hwc_wq->gdma_wq' is
still not assigned at this point. In the ‘mana_hwc_destroy_wq' function i see
At this point, hwc_wq->gdma_wq stays with its default value NULL.
it checks for 'hwc_wq->gdma_wq' before calling, ‘mana_gd_destroy_queue',
which makes me think queue is still not freed.
IMO the current code is not buggy, though I admit it's not very readable. :-)
If you're interested, you're welcome to help make it more readable. I'll also
try to make some time on this.
Thanks,
Dexuan