<feed xmlns='http://www.w3.org/2005/Atom'>
<title>device_generic_goldfish-opengl/shared, branch master</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/AOSP/device_generic_goldfish-opengl/'/>
<entry>
<title>Don't try to do robust buffer access checks on non-linked attrib indices</title>
<updated>2020-09-17T03:33:43+00:00</updated>
<author>
<name>Lingfeng Yang</name>
<email>lfy@google.com</email>
</author>
<published>2020-09-17T01:55:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/AOSP/device_generic_goldfish-opengl/commit/?id=62054e92be714b2f17aeea2f9347cfa0139f30c2'/>
<id>62054e92be714b2f17aeea2f9347cfa0139f30c2</id>
<content type='text'>
There's no danger from allowing out of bounds access there if the shader
program does nothing with it.

Don't upload client arrays in that case either.

Change-Id: Ic356a75d28fcf880608f3d44ca123bba18913c65
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There's no danger from allowing out of bounds access there if the shader
program does nothing with it.

Don't upload client arrays in that case either.

Change-Id: Ic356a75d28fcf880608f3d44ca123bba18913c65
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge "Move host validation to guest"</title>
<updated>2020-09-10T19:55:47+00:00</updated>
<author>
<name>Lingfeng Yang</name>
<email>lfy@google.com</email>
</author>
<published>2020-09-10T19:55:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/AOSP/device_generic_goldfish-opengl/commit/?id=e96843b734bcd0e2f5ac1a06703e438a43fc7086'/>
<id>e96843b734bcd0e2f5ac1a06703e438a43fc7086</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Move host validation to guest</title>
<updated>2020-09-10T14:52:30+00:00</updated>
<author>
<name>Lingfeng Yang</name>
<email>lfy@google.com</email>
</author>
<published>2020-09-04T02:11:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/AOSP/device_generic_goldfish-opengl/commit/?id=ed069c5944c3066ea1bbb3db65e4791a96b717b5'/>
<id>ed069c5944c3066ea1bbb3db65e4791a96b717b5</id>
<content type='text'>
Test: dEQP-GLES3 no failures when not using host-side glGetError

Change-Id: If602d7c784ea12c5ae47ce56a91669e14a9ac62f
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Test: dEQP-GLES3 no failures when not using host-side glGetError

Change-Id: If602d7c784ea12c5ae47ce56a91669e14a9ac62f
</pre>
</div>
</content>
</entry>
<entry>
<title>memset all drm_virtgpu_map structs to 0 before using</title>
<updated>2020-08-27T03:09:17+00:00</updated>
<author>
<name>Lingfeng Yang</name>
<email>lfy@google.com</email>
</author>
<published>2020-08-27T00:03:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/AOSP/device_generic_goldfish-opengl/commit/?id=85dfc611a7e29547287ce31119e31c17f55dd510'/>
<id>85dfc611a7e29547287ce31119e31c17f55dd510</id>
<content type='text'>
Change-Id: I627c64d4760ca465541f2d5fec69f3c88c4fc336
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: I627c64d4760ca465541f2d5fec69f3c88c4fc336
</pre>
</div>
</content>
</entry>
<entry>
<title>Don't glMapBufferRange on the host if possible</title>
<updated>2020-08-19T22:13:07+00:00</updated>
<author>
<name>Lingfeng Yang</name>
<email>lfy@google.com</email>
</author>
<published>2020-08-19T16:07:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/AOSP/device_generic_goldfish-opengl/commit/?id=1ae08114d848824dd8bcc019b68352afa1c758a0'/>
<id>1ae08114d848824dd8bcc019b68352afa1c758a0</id>
<content type='text'>
It is expensive to

- let glMapBufferRange to the host at all
- read from the GPU mapped pointer when on the host

The second item will introduce a stall similar to
glClientWaitSync/glFinish on the host GPU.

Thus, track when the buffer is possibly dirty and only read from it
during those times. At other times, mapped buffers that are only used
for write can be implemented in a completely feed-forward way.

Change-Id: Ife9393e4eb5238411e6eae0abb49272523a8d935
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It is expensive to

- let glMapBufferRange to the host at all
- read from the GPU mapped pointer when on the host

The second item will introduce a stall similar to
glClientWaitSync/glFinish on the host GPU.

Thus, track when the buffer is possibly dirty and only read from it
during those times. At other times, mapped buffers that are only used
for write can be implemented in a completely feed-forward way.

Change-Id: Ife9393e4eb5238411e6eae0abb49272523a8d935
</pre>
</div>
</content>
</entry>
<entry>
<title>Add StateTrackingSupport that includes a class to track predicates</title>
<updated>2020-08-19T22:13:02+00:00</updated>
<author>
<name>Lingfeng Yang</name>
<email>lfy@google.com</email>
</author>
<published>2020-08-19T16:06:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/AOSP/device_generic_goldfish-opengl/commit/?id=7d677c5a14d3170396d678f5daeb8b760d350807'/>
<id>7d677c5a14d3170396d678f5daeb8b760d350807</id>
<content type='text'>
The guest-side state tracker looks like it can be sped up by using
HybridComponentManager. One of the first uses of this is going to be a
generic "predicate" structure that will be used for tracking
existence/dirtiness of objects.

Change-Id: I1f4c52ba4b256a2a574196f64b0139891171c873
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The guest-side state tracker looks like it can be sped up by using
HybridComponentManager. One of the first uses of this is going to be a
generic "predicate" structure that will be used for tracking
existence/dirtiness of objects.

Change-Id: I1f4c52ba4b256a2a574196f64b0139891171c873
</pre>
</div>
</content>
</entry>
<entry>
<title>Change GOLDFISH_VULKAN macro to GFXSTREAM macro</title>
<updated>2020-08-19T22:12:33+00:00</updated>
<author>
<name>Lingfeng Yang</name>
<email>lfy@google.com</email>
</author>
<published>2020-08-17T22:46:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/AOSP/device_generic_goldfish-opengl/commit/?id=6f9871ba3a3683b3ce96f1e964c61fd69d3f834b'/>
<id>6f9871ba3a3683b3ce96f1e964c61fd69d3f834b</id>
<content type='text'>
The macro's true purpose seems to be a general "modern"
specifier like "vulkan support exists" and
"this is an env where c++11 is available" etc.

Change-Id: I9fa61c80f71be1c6d521b4963d03b6192f14c85e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The macro's true purpose seems to be a general "modern"
specifier like "vulkan support exists" and
"this is an env where c++11 is available" etc.

Change-Id: I9fa61c80f71be1c6d521b4963d03b6192f14c85e
</pre>
</div>
</content>
</entry>
<entry>
<title>fuchsia: Replace FIDL C++ bindings with LLCPP.</title>
<updated>2020-07-21T18:27:20+00:00</updated>
<author>
<name>Yilong Li</name>
<email>liyl@google.com</email>
</author>
<published>2020-07-18T04:05:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/AOSP/device_generic_goldfish-opengl/commit/?id=6dc9b5b39ac8df58e1a8077fece72f399605ea2f'/>
<id>6dc9b5b39ac8df58e1a8077fece72f399605ea2f</id>
<content type='text'>
Previously goldfish ICD uses FIDL C++ bindings which
has dependency on the default async dispatcher and
caused some binary dependency issues. This change
migrates all usages of C++ bindings to LLCPP to
eliminate that dependency.

Bug: fxbug.dev/56565
Bug: fxbug.dev/55650

TEST=gfx_unittests, escher_tests on Fuchsia

Change-Id: I0815e210b1630ce2ea9fd32222ddb4a32bbf8644
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Previously goldfish ICD uses FIDL C++ bindings which
has dependency on the default async dispatcher and
caused some binary dependency issues. This change
migrates all usages of C++ bindings to LLCPP to
eliminate that dependency.

Bug: fxbug.dev/56565
Bug: fxbug.dev/55650

TEST=gfx_unittests, escher_tests on Fuchsia

Change-Id: I0815e210b1630ce2ea9fd32222ddb4a32bbf8644
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix Fuchsia build.</title>
<updated>2020-07-01T04:20:15+00:00</updated>
<author>
<name>David Reveman</name>
<email>reveman@google.com</email>
</author>
<published>2020-07-01T03:29:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/AOSP/device_generic_goldfish-opengl/commit/?id=744cad1c13ff7bc13faa9902b0cd3edfbd51a6f3'/>
<id>744cad1c13ff7bc13faa9902b0cd3edfbd51a6f3</id>
<content type='text'>
Change-Id: Ifad3cb5a3d18568b408b98f704fe653a7d0e5b1b
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Ifad3cb5a3d18568b408b98f704fe653a7d0e5b1b
</pre>
</div>
</content>
</entry>
<entry>
<title>reland: virtio-gpu-asg transport</title>
<updated>2020-06-29T21:54:18+00:00</updated>
<author>
<name>Lingfeng Yang</name>
<email>lfy@google.com</email>
</author>
<published>2020-05-27T21:10:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/mirrors/AOSP/device_generic_goldfish-opengl/commit/?id=667e8ee06e889765f4c50b5cb55701f041023e39'/>
<id>667e8ee06e889765f4c50b5cb55701f041023e39</id>
<content type='text'>
Requires ro.boot.hardware.gltransport=virtio-gpu-asg or
ro.kernel.qemu.gltransport=virtio-gpu-asg

Bug: 160181061
Change-Id: Ia7865320ad7b3a9ec3f6971ead1cabe3fff36d27
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Requires ro.boot.hardware.gltransport=virtio-gpu-asg or
ro.kernel.qemu.gltransport=virtio-gpu-asg

Bug: 160181061
Change-Id: Ia7865320ad7b3a9ec3f6971ead1cabe3fff36d27
</pre>
</div>
</content>
</entry>
</feed>
