Re: [PATCH v6 06/18] drm/virtio: remove ttm calls from in virtio_gpu_object_{reserve,unreserve}

From: Gerd Hoffmann
Date: Thu Jul 04 2019 - 07:10:47 EST


Hi,

> > - r = ttm_bo_reserve(&bo->tbo, true, false, NULL);
> > + r = reservation_object_lock_interruptible(bo->gem_base.resv, NULL);
> Can you elaborate a bit about how TTM keeps the BOs alive in, for
> example, virtio_gpu_transfer_from_host_ioctl? In that function, only
> three TTM functions are called: ttm_bo_reserve, ttm_bo_validate, and
> ttm_bo_unreserve. I am curious how they keep the BO alive.

It can't go away between reserve and unreserve, and I think it also
can't be evicted then. Havn't checked how ttm implements that.

cheers,
Gerd