drm/qxl: use iterator instead of dma_resv_shared_list

I'm not sure why it is useful to know the number of fences
in the reservation object, but we try to avoid exposing the
dma_resv_shared_list() function.

So use the iterator instead. If more information is desired
we could use dma_resv_describe() as well.

Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/20211129120659.1815-5-christian.koenig@amd.com
This commit is contained in:
Christian König 2021-09-24 10:04:00 +02:00
Родитель 19cf41b64e
Коммит 86baad1941
1 изменённых файлов: 9 добавлений и 6 удалений

Просмотреть файл

@ -57,13 +57,16 @@ qxl_debugfs_buffers_info(struct seq_file *m, void *data)
struct qxl_bo *bo;
list_for_each_entry(bo, &qdev->gem.objects, list) {
struct dma_resv_list *fobj;
int rel;
struct dma_resv_iter cursor;
struct dma_fence *fence;
int rel = 0;
rcu_read_lock();
fobj = dma_resv_shared_list(bo->tbo.base.resv);
rel = fobj ? fobj->shared_count : 0;
rcu_read_unlock();
dma_resv_iter_begin(&cursor, bo->tbo.base.resv, true);
dma_resv_for_each_fence_unlocked(&cursor, fence) {
if (dma_resv_iter_is_restarted(&cursor))
rel = 0;
++rel;
}
seq_printf(m, "size %ld, pc %d, num releases %d\n",
(unsigned long)bo->tbo.base.size,