On 4/4/23 00:55, Paul Cercueil wrote:
[...]
+ priv = attach->importer_priv; + list_del_init(&priv->entry);
+ iio_buffer_dmabuf_put(attach); + iio_buffer_dmabuf_put(attach);
Is this intended? Looks suspicious...
It is intended, yes. You want to release the dma_buf_attachment that's created in iio_buffer_attach_dmabuf(), and you need to call iio_buffer_find_attachment() to get a pointer to it, which also gets a second reference - so it needs to unref twice.
Let's add a comment documenting that.