<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/gpu/drm/virtio/virtgpu_object.c, branch v5.1</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v5.1</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v5.1'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2019-02-11T04:44:10Z</updated>
<entry>
<title>drm/virtio: do NOT reuse resource ids</title>
<updated>2019-02-11T04:44:10Z</updated>
<author>
<name>Gerd Hoffmann</name>
<email>kraxel@redhat.com</email>
</author>
<published>2019-02-08T14:04:09Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=16065fcdd19ddb9e093192914ac863884f308766'/>
<id>urn:sha1:16065fcdd19ddb9e093192914ac863884f308766</id>
<content type='text'>
Bisected guest kernel changes crashing qemu.  Landed at
"6c1cd97bda drm/virtio: fix resource id handling".  Looked again, and
noticed we where not only leaking *some* ids, but *all* ids.  The old
code never ever called virtio_gpu_resource_id_put().

So, commit 6c1cd97bda effectively makes the linux kernel starting
re-using IDs after releasing them, and apparently virglrenderer can't
deal with that.  Oops.

This patch puts a temporary stopgap into place for the 5.0 release.

Signed-off-by: Gerd Hoffmann &lt;kraxel@redhat.com&gt;
Reviewed-by: Dave Airlie &lt;airlied@redhat.com&gt;
Signed-off-by: Dave Airlie &lt;airlied@redhat.com&gt;
Link: https://patchwork.freedesktop.org/patch/msgid/20190208140409.15280-1-kraxel@redhat.com
</content>
</entry>
<entry>
<title>drm/virtio: Use IDAs more efficiently</title>
<updated>2018-11-14T11:50:34Z</updated>
<author>
<name>Matthew Wilcox</name>
<email>willy@infradead.org</email>
</author>
<published>2018-10-30T16:53:52Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=2ae7f165c0b022a8ed1732f8ab2c11b2c173146e'/>
<id>urn:sha1:2ae7f165c0b022a8ed1732f8ab2c11b2c173146e</id>
<content type='text'>
0-based IDAs are more efficient than any other base.  Convert the
1-based IDAs to be 0-based.

Signed-off-by: Matthew Wilcox &lt;willy@infradead.org&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/20181030165352.13065-2-willy@infradead.org
Signed-off-by: Gerd Hoffmann &lt;kraxel@redhat.com&gt;
</content>
</entry>
<entry>
<title>drm/virtio: Handle error from virtio_gpu_resource_id_get</title>
<updated>2018-11-14T11:50:34Z</updated>
<author>
<name>Matthew Wilcox</name>
<email>willy@infradead.org</email>
</author>
<published>2018-10-30T16:53:51Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=556c62e85f9b97139c1b3f6f1585fcee0bc3eb6a'/>
<id>urn:sha1:556c62e85f9b97139c1b3f6f1585fcee0bc3eb6a</id>
<content type='text'>
ida_alloc() can return -ENOMEM in the highly unlikely case we run out
of memory.  The current code creates an object with an invalid ID.

Signed-off-by: Matthew Wilcox &lt;willy@infradead.org&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/20181030165352.13065-1-willy@infradead.org
Signed-off-by: Gerd Hoffmann &lt;kraxel@redhat.com&gt;
</content>
</entry>
<entry>
<title>drm/virtio: Replace IDRs with IDAs</title>
<updated>2018-10-29T21:50:55Z</updated>
<author>
<name>Matthew Wilcox</name>
<email>willy@infradead.org</email>
</author>
<published>2018-09-26T16:00:28Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=1938d1ae32fefa172288e3a9245ae126640c5c10'/>
<id>urn:sha1:1938d1ae32fefa172288e3a9245ae126640c5c10</id>
<content type='text'>
These IDRs were only being used to allocate unique numbers, not to look
up pointers, so they can use the more space-efficient IDA instead.

Signed-off-by: Matthew Wilcox &lt;willy@infradead.org&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/20180926160031.15721-2-willy@infradead.org

[ kraxel: resolve conflict ]

Signed-off-by: Gerd Hoffmann &lt;kraxel@redhat.com&gt;
</content>
</entry>
<entry>
<title>drm/virtio: fix resource id handling</title>
<updated>2018-10-29T21:50:55Z</updated>
<author>
<name>Gerd Hoffmann</name>
<email>kraxel@redhat.com</email>
</author>
<published>2018-10-19T06:18:47Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=6c1cd97bdaffa2ae1dbdc8a0857931308ac647cd'/>
<id>urn:sha1:6c1cd97bdaffa2ae1dbdc8a0857931308ac647cd</id>
<content type='text'>
Move virtio_gpu_resource_id_{get,put} to virtgpu_object.c and make them
static.  Allocate and free the id on creation and destroy, drop all
other calls.  That way objects have a valid handle for the whole
lifetime of the object.

Also fixes ids leaking.  Worst offender are dumb buffers, and I think
some error paths too.

Signed-off-by: Gerd Hoffmann &lt;kraxel@redhat.com&gt;
Reviewed-by: Dave Airlie &lt;airlied@redhat.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/20181019061847.18958-7-kraxel@redhat.com
</content>
</entry>
<entry>
<title>drm/virtio: track created object state</title>
<updated>2018-10-29T21:50:55Z</updated>
<author>
<name>Gerd Hoffmann</name>
<email>kraxel@redhat.com</email>
</author>
<published>2018-10-19T06:18:42Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=23c897d72ca8064c626be0ef73fe671488d584bb'/>
<id>urn:sha1:23c897d72ca8064c626be0ef73fe671488d584bb</id>
<content type='text'>
Track whenever the virtio_gpu_object is already created (i.e. host knows
about it) in a new variable.  Add checks to virtio_gpu_object_attach()
to do nothing on objects not created yet.

Make virtio_gpu_ttm_bo_destroy() use the new variable too, instead of
expecting hw_res_handle indicating the object state.

Signed-off-by: Gerd Hoffmann &lt;kraxel@redhat.com&gt;
Reviewed-by: Dave Airlie &lt;airlied@redhat.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/20181019061847.18958-2-kraxel@redhat.com
</content>
</entry>
<entry>
<title>virtio: Rework virtio_gpu_object_kmap()</title>
<updated>2018-09-26T06:05:06Z</updated>
<author>
<name>Ezequiel Garcia</name>
<email>ezequiel@collabora.com</email>
</author>
<published>2018-09-25T16:16:05Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=a20c4173c4219d85ba7775fde584cd34305a0b3d'/>
<id>urn:sha1:a20c4173c4219d85ba7775fde584cd34305a0b3d</id>
<content type='text'>
Currently, virtio_gpu_object_kmap() is only called by
virtio_gpufb_create(), when a DRM framebuffer is created.

Thus, instead of returning the vmap'ed address, emit a warning
if virtio_gpu_object_kmap is called on an already mapped
object. With this change, kmap/kunmap calls are now balanced.

Signed-off-by: Ezequiel Garcia &lt;ezequiel@collabora.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/20180925161606.17980-3-ezequiel@collabora.com
Signed-off-by: Gerd Hoffmann &lt;kraxel@redhat.com&gt;
</content>
</entry>
<entry>
<title>virtio: Add virtio_gpu_object_kunmap()</title>
<updated>2018-09-26T06:05:05Z</updated>
<author>
<name>Ezequiel Garcia</name>
<email>ezequiel@collabora.com</email>
</author>
<published>2018-09-25T16:16:04Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=02c87cabd6f1a6de151f999690393c3b8ad07b90'/>
<id>urn:sha1:02c87cabd6f1a6de151f999690393c3b8ad07b90</id>
<content type='text'>
Implement a virtio_gpu_object_kunmap() to unmap the kernel
mapping, and use it in the TTM object destroy path.

Signed-off-by: Ezequiel Garcia &lt;ezequiel@collabora.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/20180925161606.17980-2-ezequiel@collabora.com
Signed-off-by: Gerd Hoffmann &lt;kraxel@redhat.com&gt;
</content>
</entry>
<entry>
<title>drm/ttm: drop persistent_swap_storage from ttm_bo_init and co</title>
<updated>2018-02-27T04:09:45Z</updated>
<author>
<name>Christian König</name>
<email>christian.koenig@amd.com</email>
</author>
<published>2018-02-22T14:52:31Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=724daa4fd65d927e406f2cc0661c9a329876267b'/>
<id>urn:sha1:724daa4fd65d927e406f2cc0661c9a329876267b</id>
<content type='text'>
Never used as parameter, the only driver actually using this is nouveau
and there it is initialized after the BO is initialized.

Signed-off-by: Christian König &lt;christian.koenig@amd.com&gt;
Reviewed-by: Michel Dänzer &lt;michel.daenzer@amd.com&gt;
Signed-off-by: Alex Deucher &lt;alexander.deucher@amd.com&gt;
</content>
</entry>
<entry>
<title>drm/ttm: use an operation ctx for ttm_tt_populate in ttm_bo_driver (v2)</title>
<updated>2017-12-28T14:48:19Z</updated>
<author>
<name>Roger He</name>
<email>Hongbo.He@amd.com</email>
</author>
<published>2017-12-21T09:42:50Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=d0cef9fa4411eb17dd350cced3336ca58f465ff1'/>
<id>urn:sha1:d0cef9fa4411eb17dd350cced3336ca58f465ff1</id>
<content type='text'>
forward the operation context to ttm_tt_populate as well,
and the ultimate goal is swapout enablement for reserved BOs.

v2: squash in fix for vboxvideo

Reviewed-by: Christian König &lt;christian.koenig@amd.com&gt;
Signed-off-by: Roger He &lt;Hongbo.He@amd.com&gt;
Signed-off-by: Alex Deucher &lt;alexander.deucher@amd.com&gt;
</content>
</entry>
</feed>
