Re: [PATCH v6 14/18] drm/virtio: rework virtio_gpu_transfer_from_host_ioctl fencing

From: Gerd Hoffmann
Date: Fri Jul 05 2019 - 05:01:18 EST


On Thu, Jul 04, 2019 at 11:55:59AM -0700, Chia-I Wu wrote:
> On Thu, Jul 4, 2019 at 4:48 AM Gerd Hoffmann <kraxel@xxxxxxxxxx> wrote:
> >
> > On Wed, Jul 03, 2019 at 01:05:12PM -0700, Chia-I Wu wrote:
> > > On Tue, Jul 2, 2019 at 7:19 AM Gerd Hoffmann <kraxel@xxxxxxxxxx> wrote:
> > > >
> > > > Switch to the virtio_gpu_array_* helper workflow.
> > > (just repeating my question on patch 6)
> > >
> > > Does this fix the obj refcount issue? When was the issue introduced?
> >
> > obj refcount should be fine in both old and new code.
> >
> > old code:
> > drm_gem_object_lookup
> > drm_gem_object_put_unlocked
> >
> > new code:
> > virtio_gpu_array_from_handles
> > virtio_gpu_array_put_free (in virtio_gpu_dequeue_ctrl_func).
> >
> > Or did I miss something?
> In the old code, drm_gem_object_put_unlocked is called before the vbuf
> using the object is retired. Isn't that what object array wants to
> fix?

I think the fence keeps the bo alive.

cheers,
Gerd