e980c7a4de6cc56e63fd013ce7811bcdeeabb57c |
|
12-Jan-2018 |
Lingfeng Yang <lfy@google.com> |
Feature: IgnoreHostOpenGLErrors bug: 71853717 If you use the emulator and the UI works fine, do this to make the UI faster. Change-Id: I044a46956eadb17021d6cf2c7b87c6423a328051
/device/generic/goldfish-opengl/system/OpenglSystemCommon/HostConnection.h
|
93128771111f69a6fb43eb71e28ec0dfaf93fd0d |
|
23-Jan-2017 |
Lingfeng Yang <lfy@google.com> |
[VR] EGL_KHR_wait_sync Requires native sync v3 from the host. Change-Id: Ia58351e1a4984afcb0fd2bf8d928cec567bb70e2
/device/generic/goldfish-opengl/system/OpenglSystemCommon/HostConnection.h
|
6e99bcfb949ef018726baf14585d88a30132a981 |
|
07-Apr-2017 |
Lingfeng Yang <lfy@google.com> |
[deqp] Fix dEQP-EGL.functional.thread_cleanup.single_context* bug: 37100138 1. Add a way to get a host connection for a specific thread info 2. Do all the EGL TLS cleanup as part of our TLS destructor, because the framework insists on calling eglReleaseThread as part of its TLS destructor, which can happen after our TLS destructor (in which case the TLS is reinitialized and loses all context information) Change-Id: I3a26fa1b1794a0f422e6913a5e9fc4f0fecb0ee8
/device/generic/goldfish-opengl/system/OpenglSystemCommon/HostConnection.h
|
e6556dcf96ef0b859fe04d8caf7c40fdd6d8d254 |
|
09-Jan-2017 |
Lingfeng Yang <lfy@google.com> |
[GLESv3] versions, es > 2, encoder - Encoder with ES 3.x entry points - Allow ES versions > 2 depending on host capability Change-Id: I71e374f1685610bb0e4f9e04f4bba87b0cbaa02b
/device/generic/goldfish-opengl/system/OpenglSystemCommon/HostConnection.h
|
88c170cdf4d4a3c83ea61540d25bdcf4153fb5b8 |
|
30-Nov-2016 |
Lingfeng Yang <lfy@google.com> |
Revert "Revert "DO NOT MERGE ANYWHERE: Goldfish DMA-based gralloc"" This reverts commit 9b166b966d6f03f13f65d3134f9c5e1133ec10e2. Change-Id: I9b10b45d1ebd3b51ede2f75cc8ab403914b0d777
/device/generic/goldfish-opengl/system/OpenglSystemCommon/HostConnection.h
|
9b166b966d6f03f13f65d3134f9c5e1133ec10e2 |
|
30-Nov-2016 |
Miao Wang <miaowang@google.com> |
Revert "DO NOT MERGE ANYWHERE: Goldfish DMA-based gralloc" This reverts commit df3a043b96b90d949643ddd0219fc0bf4ff68040. Change-Id: Ic87fa2f922bd61123e64fc32fc8ebb13dec4c219
/device/generic/goldfish-opengl/system/OpenglSystemCommon/HostConnection.h
|
df3a043b96b90d949643ddd0219fc0bf4ff68040 |
|
24-Sep-2016 |
Lingfeng Yang <lfy@google.com> |
DO NOT MERGE ANYWHERE: Goldfish DMA-based gralloc Also includes YV12/YUV420888 conversion on the host. Change-Id: Ie0c23f6e18ae96b2bdeadf6dbd4828ca1e7de8a0
/device/generic/goldfish-opengl/system/OpenglSystemCommon/HostConnection.h
|
b232764080666980e089d48afa23e514278980fb |
|
04-Nov-2016 |
Yurii Zubrytskyi <zyy@google.com> |
Faster HostConnection creation - Implement queryGlString in a single guest->host call for most cases: preallocate large enough buffer instead of querying for its size. - Don't copy std::string-s around when we only needs a cref Change-Id: Iffc4e9e37a1f9010ab5dfd5a4c5528f783c41137
/device/generic/goldfish-opengl/system/OpenglSystemCommon/HostConnection.h
|
e8cf63de76ea0b518b3593205ad191f51cd43292 |
|
22-Sep-2016 |
Yahan Zhou <yahan@google.com> |
Refactor pre-process GL resource management (guest) Previously we bind a process unique id (puid) to the GL encoder / decoder commands when managing process owned GL resources. This patch simplify it by telling each rendering thread its puid at the beginning, and using that puid for resource management. It will make our life easier when we need to change other resources from owned-by-thread to owned-by-process (e.g. EglContext). This CL must work with host CL: https://android-review.googlesource.com/#/c/277778 Change-Id: I94a8cb55e8619c2f0da1a5669827e89fe42660d2
/device/generic/goldfish-opengl/system/OpenglSystemCommon/HostConnection.h
|
2ce4c312eadae49c5f92fffab31dea8845a67f7e |
|
31-Aug-2016 |
Lingfeng Yang <lfy@google.com> |
+rcDestroySyncKHR, don't leak on swapBuffers This CL is part of this host CL to clean up EGL sync objects: https://android-review.googlesource.com/#/c/267892/ It does the following: - adds rcDestroySyncKHR - avoids creating an actual EGL sync object when in swapBuffers(), because it will be cumbersome to delete it from the guest. Instead, it specifically calls rcCreateSyncKHR and tells the host to clean up the object when it has become signaled. - refactors rcCreateSyncKHR / goldfish_sync_queue_work to a common function. - bumps the GLAsyncSwap version string to "ANDROID_EMU_native_sync_v2", so that the emulator can work with all combinations of old/new emulator/system-image. Change-Id: Iff9a5e226b4026b955893c6f4d6ff3266009da6b
/device/generic/goldfish-opengl/system/OpenglSystemCommon/HostConnection.h
|
4f12b8d6f5a86a51873cb65a7fcabf9f472198ec |
|
14-Jul-2016 |
Lingfeng Yang <lfy@google.com> |
ANDROID_EMU_ASYNC_SWAP extension searching + setting In order for the async frame swapping feature to work with all combinations of new/old emulators and system images, one way to do it is to introduce an emulator-specific GL extension. This is the same way the checksum calculation support works. This is a port to device/generic/goldfish-opengl, based on https://googleplex-android-review.git.corp.google.com/#/c/1065345/ This is part of a sequential, multi-CL change. There is also a corresponding multi-CL change on the host side: https://android-review.googlesource.com/#/q/topic:emu-glsync-host The changes in the system image are as follows: platform/build: https://googleplex-android-review.git.corp.google.com/1024926 device/generic/goldfish: https://googleplex-android-review.git.corp.google.com/1230942 device/generic/goldfish-opengl: https://googleplex-android-review.git.corp.google.com/1219535 <- this CL https://googleplex-android-review.git.corp.google.com/1219536 https://googleplex-android-review.git.corp.google.com/1219537 https://googleplex-android-review.git.corp.google.com/1219538 https://googleplex-android-review.git.corp.google.com/1219539 https://googleplex-android-review.git.corp.google.com/1219570 https://googleplex-android-review.git.corp.google.com/1219571 Change-Id: Id07a72e5cb3397ff9d0b55788b8ad763c15050f3
/device/generic/goldfish-opengl/system/OpenglSystemCommon/HostConnection.h
|
200c716904a03dce573add4440dd6d26c027ea14 |
|
13-Jun-2016 |
Lingfeng Yang <lfy@google.com> |
Don't leave gralloc-only host connections hanging. bug: 29318455 Memory leaks are becoming more of a problem, especially with host machines that don't have much RAM and when we use the emulator for long periods of time. This CL fixes the problem detailed in the bug link, which is that the number of render threads (and thus thread-specific storage) skyrockets when repeatedly pressing the Recents button while an app is active. The thing is that there are lots of threads that never use the EGL display, just gralloc, in order to do gralloc things like update the screenshot display of apps in recents. These threads are not cleaned up because a thread pool is often used to manage these sorts of tasks. If a new or different thread suddenly wants to update the recents screenshots through gralloc, a new connection will be established. This CL uses gralloc_unregister_buffer as a signal for when a thread might be done with gralloc in general, exiting the host connection immediately. Of course, there may be other things that the thread wants to do, but then it can just go ahead and create a new connection. We also use the heuristic that we do not exit on gralloc_unregister_buffer when the thread seems to be a bona fide rendering thread (eglInitialize has been called). There are still more leaks going on, this fixes just one source of them. After this CL, the render thread count should be held constant when repeatedly starting apps and going to recents. Change-Id: I5f57539429f149e3a938467e3b82fa911ab118c3
/device/generic/goldfish-opengl/system/OpenglSystemCommon/HostConnection.h
|
1883535b98b5979d8470ce1639fe264acf7b9969 |
|
23-May-2016 |
Lingfeng Yang <lfy@google.com> |
Refactor GL extension getting part in checksum setup. Change-Id: Ieb26ce5682a87821935a5b639e5242942d13ac21
/device/generic/goldfish-opengl/system/OpenglSystemCommon/HostConnection.h
|
b7f09089a7f736a070825d7130601d74b150d147 |
|
10-Mar-2016 |
Yahan Zhou <yahan@google.com> |
Checksum for GL pipe communication This is the guest side implementation for cl go/oag/c/207292. It initializes checksum whenever a renderControl is created. Each HostConnection owns a checksum structure. The list contains mostly auto-generated code by emugen. Change-Id: I5f7bb9ec8a0cea82f3687f8a15839081651fd841
/device/generic/goldfish-opengl/system/OpenglSystemCommon/HostConnection.h
|
b85b2756d1e247f8314bb591700fb175d7346631 |
|
08-Mar-2013 |
keunyoung <keunyoung@google.com> |
migrate opengl and system from development/tools - components under system are moved one directory up like all other HALs Change-Id: I03b870b870d83b247ac398cadfb155f03c9adfa0
/device/generic/goldfish-opengl/system/OpenglSystemCommon/HostConnection.h
|