[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAPaKu7SDwR1TgFQK2XGEbRqSkCO0XZYxGhcjzsAwOH42aOHEEw@mail.gmail.com>
Date: Thu, 4 Jul 2019 12:08:14 -0700
From: Chia-I Wu <olvaffe@...il.com>
To: Gerd Hoffmann <kraxel@...hat.com>
Cc: ML dri-devel <dri-devel@...ts.freedesktop.org>,
Gurchetan Singh <gurchetansingh@...omium.org>,
David Airlie <airlied@...ux.ie>,
Daniel Vetter <daniel@...ll.ch>,
"open list:VIRTIO GPU DRIVER"
<virtualization@...ts.linux-foundation.org>,
open list <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v6 15/18] drm/virtio: rework virtio_gpu_transfer_to_host_ioctl
fencing
On Thu, Jul 4, 2019 at 4:51 AM Gerd Hoffmann <kraxel@...hat.com> wrote:
>
> Hi,
>
> > > convert_to_hw_box(&box, &args->box);
> > > if (!vgdev->has_virgl_3d) {
> > > virtio_gpu_cmd_transfer_to_host_2d
> > > - (vgdev, qobj, offset,
> > > + (vgdev, gem_to_virtio_gpu_obj(objs->objs[0]), offset,
> > > box.w, box.h, box.x, box.y, NULL);
> > > + virtio_gpu_array_put_free(objs);
> > Don't we need this in non-3D case as well?
>
> No, ...
>
> > > virtio_gpu_cmd_transfer_to_host_3d
> > > - (vgdev, qobj,
> > > + (vgdev,
> > > vfpriv ? vfpriv->ctx_id : 0, offset,
> > > - args->level, &box, fence);
> > > - reservation_object_add_excl_fence(qobj->base.base.resv,
> > > - &fence->f);
> > > + args->level, &box, objs, fence);
>
> ... 3d case passes the objs list to virtio_gpu_cmd_transfer_to_host_3d,
> so it gets added to the vbuf and released when the command is finished.
Why doesn't this apply to virtio_gpu_cmd_transfer_to_host_2d?
When object array was introduced, it was said that the object array
was to keep the objects alive until the vbuf using the objects is
retired.. That sounded applicable to any vbuf that uses objects.
>
> cheers,
> Gerd
>
Powered by blists - more mailing lists