video: driver: track dma buffer leak

Track dmabuf refcount during dma_buf_get() and dma_buf_put().
So if any dmabuf present with non-zero refcount during close,
then i.e a dmabuf leak. So during session close print error
and call dma_buf_put_refcount_completely() api to recursively
reduce the count to zero and will call dma_buf_put() to avoid
dmabuf leak from video driver side.

Change-Id: I2028c18ca067977eac3cdf0ce7d6cc4200739408
Signed-off-by: Govindaraj Rajagopal <grajagop@codeaurora.org>
Cette révision appartient à :
Govindaraj Rajagopal
2021-06-18 22:15:42 +05:30
Parent 3730e55b29
révision 7f0c2442c5
5 fichiers modifiés avec 126 ajouts et 17 suppressions

Voir le fichier

@@ -131,6 +131,7 @@ struct msm_vidc_inst {
struct workqueue_struct *response_workq;
struct list_head response_works; /* list of struct response_work */
struct list_head enc_input_crs;
struct list_head dmabuf_tracker; /* list of struct msm_memory_dmabuf */
bool once_per_session_set;
bool ipsc_properties_set;
bool opsc_properties_set;