OSDN Git Service

android-x86/device-generic-goldfish-opengl.git
6 years agogoldfish-opengl: update to 4153dd9ab6a14 multiwindow-oreo
bohu [Tue, 29 Aug 2017 19:29:02 +0000 (12:29 -0700)]
goldfish-opengl: update to 4153dd9ab6a14

commit 4153dd9ab6a14a263e97c40faeab237b66c9f67b
Author: bohu <bohu@google.com>
Date:   Tue Aug 1 17:05:26 2017 -0700

get emulator iamge on oc-mr1-dev work with treble

Need to remove libui dependency
otherwise, libEGL wont load because it is looking for it;
but it does not seem to need it

BUG: 64401460

Change-Id: I81a77c85307524c2b075d430a84c73556f64524e
Merged-In: I6b435afce04164308767daef3586358b04021cbd

6 years agoMerge cherrypicks of [2454758, 2454859, 2454837, 2454965, 2454984, 2455001, 2454760...
android-build-team Robot [Fri, 23 Jun 2017 20:53:57 +0000 (20:53 +0000)]
Merge cherrypicks of [24547582454859245483724549652454984245500124547602454860245483824548992454970245500524550272454973245500624550612455007245491424549872454974] into oc-release

Change-Id: I3cd8a20b7940e3541c22af7cbacb71ce6eb3d0d0

6 years agoFix API 26 for public emulators, take 2
Lingfeng Yang [Mon, 5 Jun 2017 18:50:17 +0000 (11:50 -0700)]
Fix API 26 for public emulators, take 2

Bug: 37302997
Bug: 62333501

codename changed from O to REL

So add a case for API level too

Test: Build and run sdk_google_aw_x86-userdebug emulator

Change-Id: I91f3804082bc6d61922d31ce72081a2ec88bc6b0
(cherry picked from commit 256462a4a0fb181aca670fba4241e2fe0cd295f8)

6 years agogralloc ashmem hack to delay cb close
Lingfeng Yang [Sat, 6 May 2017 08:00:03 +0000 (01:00 -0700)]
gralloc ashmem hack to delay cb close

Tired of public emulators not working with O

See this CL for context:

https://android-review.googlesource.com/#/c/372376/

This CL moves that to the guest, and detects if
each gralloc cb has been opened at least once
before allowing gralloc_free to call rcCloseColorBuffer.

Images using Treble / HIDL gralloc that have this CL
should work with older emulator versions.

Bug: 37302997

Test: Build and run sdk_google_aw_x86-userdebug emulator

Change-Id: Ice72269e4295497825050385b15dbdec2258100c
(cherry picked from commit ef6676015bfec4538a552204b51e32f02d721fb0)

6 years agoEmulator: update opengl to bb8d138b
bohu [Tue, 25 Apr 2017 03:38:01 +0000 (20:38 -0700)]
Emulator: update opengl to bb8d138b

Bug: 37302997

Test: Build and run sdk_google_aw_x86-userdebug emulator

To commit
bb8d138b3e83567d68810d059d69654fa5e8a303
Merge: 7c53152 bb1f88a
Author: Josh Gao <jmgao@google.com>
Date:   Fri Apr 14 23:08:26 2017 +0000
Rename socket_loopback_server to _socket_loopback_server.

Change-Id: Id602f0c1df3be423e37af5f6c91d037d713c3b7a
(cherry picked from commit 588c0a94e384e07c8d38185710a1a968823594ba)
(cherry picked from commit 1b5d5a70fe49f2826a225878ddcd8d6ad561c886)

7 years agomerge in oc-release history after reset to master
gitbuildkicker [Thu, 23 Mar 2017 07:06:30 +0000 (00:06 -0700)]
merge in oc-release history after reset to master

7 years agomerge in oc-release history after reset to master
gitbuildkicker [Thu, 23 Mar 2017 04:22:40 +0000 (21:22 -0700)]
merge in oc-release history after reset to master

7 years ago[hwc2] Fix build
Lingfeng Yang [Thu, 23 Mar 2017 02:40:02 +0000 (19:40 -0700)]
[hwc2] Fix build

Change-Id: Ibd82639c1eb5619322e98a559f495bed36133998

7 years agomerge in oc-release history after reset to 18d4bde820d1b8b073c20f306f8cc1103174eaf6
gitbuildkicker [Thu, 23 Mar 2017 00:11:11 +0000 (17:11 -0700)]
merge in oc-release history after reset to 18d4bde820d1b8b073c20f306f8cc1103174eaf6

7 years ago[hwc2] Add surfaceInterface/goldfishHwc2
Lingfeng Yang [Tue, 21 Mar 2017 21:46:26 +0000 (14:46 -0700)]
[hwc2] Add surfaceInterface/goldfishHwc2

bug: 36439031
bug: 36375335

When HWC2 is used (even the HWC2on1 adapter), one of the most fundamental
changes is that acquireBuffer/releaseBuffer by BufferQueue consumers
is coarsened, delaying releaseBuffer until the app has finished
with its eglSwapBuffers operation and handling releaseBuffer as part of
a post process (mPendingRelease/releasePendingBuffer/et al).

This would be OK, except for the fact that an acquired, unreleased buffer
takes up a free buffer slot.

Emulator uses GLES composition currently, so each eglSwapBuffers by an app
directly causes another eglSwapBuffers, each of which attempts to
dequeueBuffer, taking up 2 slots right there. This was usually OK, since
releaseBuffer would be interleaved, but now, with the delayed releaseBuffer,
there are no free buffer slots and we have a deadlock situation.

Fortunately, we can set the swapped-to Surface to "async mode", which takes
exactly this situation into account. Async mode, which is for Surfaces but
really affects the BufferQueueCore queue size, makes it so that there
is an extra buffer slot so that dequeueBuffer doesn't have to block.

This CL adds a small static library for setting the swapped-to Surface
to async mode. Note that one does not simply add libgui to the shared
libraries of system/egl/Android.mk, since libgui itself includes EGL/GLES2
as dependencies, putting us into DLL hell and causing all sorts of trouble!

Change-Id: I6ee4f0e6d0b668d60573887751ec6b02839df5c3

7 years agoMerge "Don't validate glTexSubImage2D bounds for native buffer target"
Lingfeng Yang [Tue, 21 Mar 2017 23:41:22 +0000 (23:41 +0000)]
Merge "Don't validate glTexSubImage2D bounds for native buffer target"

7 years agoDon't validate glTexSubImage2D bounds for native buffer target
Lingfeng Yang [Tue, 21 Mar 2017 21:49:58 +0000 (14:49 -0700)]
Don't validate glTexSubImage2D bounds for native buffer target

bug: 36372213

We validate glTexSubImage2D having enough width/height/depth to work
correctly, by tracking glTexImage2D / glTexStorage2D calls,
but this breaks down once we put EGL images in the mix.

Previously we skipped validation for EGL_GL_TEXTURE_2D targets, but
it looks like for O and up, we also need to skip this validation for
EGL_NATIVE_BUFFER_ANDROID targets.

Change-Id: I68e6049a00e7f0927fc4097a36564b88aea1ff00

7 years agoMerge "Change path to gralloc.default"
Po-Chien Hsueh [Thu, 9 Mar 2017 05:15:37 +0000 (05:15 +0000)]
Merge "Change path to gralloc.default"

7 years agoDO NOT MERGE ANYWHERE goldfish-opengl: adjust to the refactored qemu_pipe am: 28494a7...
bohu [Thu, 2 Mar 2017 18:14:28 +0000 (18:14 +0000)]
DO NOT MERGE ANYWHERE goldfish-opengl: adjust to the refactored qemu_pipe am: 28494a7ff7  -s ours am: 2e4f19c1bf  -s ours
am: 0ef61727d1  -s ours

Change-Id: I37c4c0dc7055526dfaf02deef8aca3483fec431c

7 years agoDO NOT MERGE ANYWHERE goldfish-opengl: adjust to the refactored qemu_pipe am: 28494a7...
bohu [Thu, 2 Mar 2017 18:12:29 +0000 (18:12 +0000)]
DO NOT MERGE ANYWHERE goldfish-opengl: adjust to the refactored qemu_pipe am: 28494a7ff7  -s ours
am: 2e4f19c1bf  -s ours

Change-Id: Ida2024994bd063cd5d5e7f53fd8294dab4cd6f4d

7 years agoDO NOT MERGE ANYWHERE goldfish-opengl: adjust to the refactored qemu_pipe
bohu [Thu, 2 Mar 2017 18:09:30 +0000 (18:09 +0000)]
DO NOT MERGE ANYWHERE goldfish-opengl: adjust to the refactored qemu_pipe
am: 28494a7ff7  -s ours

Change-Id: I289486fcde44223c2fac33213defa5ff5ee58303

7 years agoChange path to gralloc.default
Po-Chien Hsueh [Thu, 2 Mar 2017 08:46:39 +0000 (16:46 +0800)]
Change path to gralloc.default

Libraries under /hardware/libhardware/modules should go to /vendor/.
This CL changes hardcoded path to gralloc.default.so

Bug: 35907904
Test: Compiled and checked install path. Also code searched to see
if there are hardcoded paths.

Change-Id: I6c304b048047053d782a0ed91abfbc3140bdd261

7 years agoMerge "Emulator: make qemu_pipe.h self contained in goldfish-opengl project"
Bo Hu [Thu, 2 Mar 2017 03:41:47 +0000 (03:41 +0000)]
Merge "Emulator: make qemu_pipe.h self contained in goldfish-opengl project"

7 years agoDO NOT MERGE ANYWHERE goldfish-opengl: adjust to the refactored qemu_pipe
bohu [Wed, 1 Mar 2017 06:37:11 +0000 (22:37 -0800)]
DO NOT MERGE ANYWHERE goldfish-opengl: adjust to the refactored qemu_pipe

Qemu_pipe is refactored into a library, adjust goldfish-opengl
accordingly.

Change-Id: I6fe6a98a962ac1bcfeb0395a575115054464d72e

7 years agoMerge "extern "C" unconditionally"
Lingfeng Yang [Tue, 28 Feb 2017 07:23:32 +0000 (07:23 +0000)]
Merge "extern "C" unconditionally"

7 years agoHave single macro for taking care of goldfish_dma_context alignment.
Lingfeng Yang [Mon, 27 Feb 2017 20:39:51 +0000 (12:39 -0800)]
Have single macro for taking care of goldfish_dma_context alignment.

Previously,

!defined(__aarch64__) || !defined(__x86_64__) is always true,

instead of the intended "add this field if not 64 bit."

OOPS

bug: 35711775
Change-Id: I46043c4402325845524d56d8d4f910f16add25cb

7 years agoextern "C" unconditionally
Lingfeng Yang [Mon, 27 Feb 2017 17:40:22 +0000 (09:40 -0800)]
extern "C" unconditionally

This keeps older API levels from mangling GLESv3 entry points.

Change-Id: I5e751ca9f53f510d057693d368bc15c20f66e463

7 years agoEmulator: make qemu_pipe.h self contained in goldfish-opengl project
bohu [Sat, 25 Feb 2017 06:42:03 +0000 (22:42 -0800)]
Emulator: make qemu_pipe.h self contained in goldfish-opengl project

Remove the dependency on the system/qemu_pipe.h or hardware/qemu_pipe.h;
and use the legacy qemu_pipe_open definition since goldfish-opengl is
shared accross all apis.

Change-Id: I3da10066d458a57385c408cee4d2ded0eec6e456

7 years agoMerge "Also take into account arm64 and mips64 for goldfish_dma_context aligment."
Lingfeng Yang [Wed, 22 Feb 2017 17:38:02 +0000 (17:38 +0000)]
Merge "Also take into account arm64 and mips64 for goldfish_dma_context aligment."

7 years agoAlso take into account arm64 and mips64 for goldfish_dma_context aligment.
Lingfeng Yang [Tue, 21 Feb 2017 06:17:13 +0000 (22:17 -0800)]
Also take into account arm64 and mips64 for goldfish_dma_context aligment.

bug: 35618215

Change-Id: I147aeca391f97b0bccaed0b572b2fe13e627ad00

7 years agoDon't restrict GLES 3.x based on API level nor arch.
Lingfeng Yang [Tue, 21 Feb 2017 15:29:15 +0000 (07:29 -0800)]
Don't restrict GLES 3.x based on API level nor arch.

bug: 35618215

Simpler that way, and we should be able to support all archs.

Change-Id: I77f5295047b05dc9188b15501be08b95b8f41302

7 years agoAlign goldfish_dma_context to 8 byte boundaries
Lingfeng Yang [Fri, 17 Feb 2017 22:44:20 +0000 (14:44 -0800)]
Align goldfish_dma_context to 8 byte boundaries

bug: 35465006

It looks like when Chrome is started, we are in some strange world
where sizeof(goldfish_dma_context) = 16 instead of 24,
and we get in trouble with gralloc_register buffer,
and Chrome fails to boot.

TODO: Note that youtube videos inside chrome still don't seem to work,
for some reason (this doesn't depend on whether or not goldfish_dma is
used).

Change-Id: Ibc66885434b885993025b70d957ea8e1adf524de

7 years ago[deqp] Fix state_query.string
Lingfeng Yang [Fri, 17 Feb 2017 17:56:26 +0000 (09:56 -0800)]
[deqp] Fix state_query.string

bug: 34245902

Version string needs to match the glGetIntegerv(GL_MINOR_VERSION, ...).

Change-Id: I8b51104b0347c12c93c350dda7fb03c145f8c3e2

7 years ago[deqp] Fix wrong firstIndex for non-instanced draws with nonzero divisor
Lingfeng Yang [Wed, 15 Feb 2017 16:44:21 +0000 (08:44 -0800)]
[deqp] Fix wrong firstIndex for non-instanced draws with nonzero divisor

bug: 34245909

If the vertex attribute divisor is nonzero,
that actually affects first index for non-instanced draws
at least.

TODO: Figure out if this affects the instanced draws too.

dEQP-GLES3.functional.draw.random.210 : Fail -> Pass

Change-Id: Ida45d4689e0418ad8679091556a9fcaa64bbe25e

7 years agoFix regression in fbo.completeness after GL_EXT_color_buffer_float
Lingfeng Yang [Tue, 31 Jan 2017 04:06:39 +0000 (20:06 -0800)]
Fix regression in fbo.completeness after GL_EXT_color_buffer_float

Change-Id: Ie17da0442c80b972e5a66353b3998160fe04f032

7 years ago[validation] Message on vertex attrib index out of bounds
Lingfeng Yang [Fri, 27 Jan 2017 20:26:19 +0000 (12:26 -0800)]
[validation] Message on vertex attrib index out of bounds

Change-Id: Ie7f79b63d31fbae6cb97b3ae96fa5bdb8fefca27

7 years ago[interface][fbo] Pass extensions, GL_EXT_color_buffer_float
Lingfeng Yang [Fri, 27 Jan 2017 14:50:56 +0000 (06:50 -0800)]
[interface][fbo] Pass extensions, GL_EXT_color_buffer_float

- Pass extensions from the underlying OpenGL to encoder for
validation.
- Add GL_EXT_color_buffer_float.

Change-Id: I67f8e68012bba9c5ffef24d9588a9615cf6f0e6b

7 years agoDon't crash if user specified client array of nullptr
Lingfeng Yang [Wed, 25 Jan 2017 16:09:02 +0000 (08:09 -0800)]
Don't crash if user specified client array of nullptr

3dmark can run into timing/races and do this sort of thing.

Change-Id: Ic75f78d23cb26ebe18142dc78158f5ffb05967fd

7 years ago[GLESv3] Add KHR_create_context semantics
Lingfeng Yang [Wed, 25 Jan 2017 16:05:53 +0000 (08:05 -0800)]
[GLESv3] Add KHR_create_context semantics

If the ES 3.x feature is enabled:

1. If not on GLES1, select the highest available 3.x context if
   major version was not specified.
2. If on GLES2, upgrade to highest available 3.x context.

- In this case, need to allow GL_HALF_FLOAT_OES through to
keep from regressing CTS dEQP-GLES2.functional.fbo.completeness
if the feature is enabled.

Change-Id: I92194387f09f3a531c6d39b5e2659ff62c4c77cd

7 years agoRemove extraneous ALOGD's
Lingfeng Yang [Tue, 24 Jan 2017 21:42:08 +0000 (13:42 -0800)]
Remove extraneous ALOGD's

Change-Id: Iefe7f8db7cc38f744dcc3c706963f3a9095786ca

7 years agoMerge "[fps] Flush every 200 draw calls instead of 2"
Lingfeng Yang [Tue, 24 Jan 2017 19:25:46 +0000 (19:25 +0000)]
Merge "[fps] Flush every 200 draw calls instead of 2"

7 years ago[WIP] ES 3.1 guestside changes
Lingfeng Yang [Wed, 18 Jan 2017 19:42:04 +0000 (11:42 -0800)]
[WIP] ES 3.1 guestside changes

Change-Id: Ie4619ee6e161274383b9f6b0d2922344da20f62f

7 years ago[fps] Flush every 200 draw calls instead of 2
Lingfeng Yang [Thu, 19 Jan 2017 16:04:48 +0000 (08:04 -0800)]
[fps] Flush every 200 draw calls instead of 2

Linux z840, quadro k2200 3dmark ice storm unlimited:

80k->100k

Change-Id: Ia4d68f3d096ad042e3279d5a1d848930ce4571a6

7 years ago[GLESv3] Invalidate index range cache on buffer unmap/flush
Lingfeng Yang [Wed, 18 Jan 2017 17:23:12 +0000 (09:23 -0800)]
[GLESv3] Invalidate index range cache on buffer unmap/flush

Fixes incorrect out of bounds validation messages
while playing Vector 2 (ES 3.1 game)

Change-Id: I7290b6a1ba0417d897f119d5d7695c2c16d64e39

7 years ago[validation] Check null buf before printing validation info
Lingfeng Yang [Wed, 18 Jan 2017 17:26:19 +0000 (09:26 -0800)]
[validation] Check null buf before printing validation info

Change-Id: I2ba7c4c694ad4a75a6e68722e3fd7cde05a47a0f

7 years ago[validation] Correctly compute wanted draw call size when draw count == 0.
Lingfeng Yang [Wed, 18 Jan 2017 17:17:09 +0000 (09:17 -0800)]
[validation] Correctly compute wanted draw call size when draw count == 0.

bug: 34378638

Change-Id: I9912436048c28337de40d13536246a6b9e11fc7b

7 years ago[GLESv3] Fix protocol error + build on older imgs
Lingfeng Yang [Thu, 12 Jan 2017 02:31:38 +0000 (18:31 -0800)]
[GLESv3] Fix protocol error + build on older imgs

Change-Id: I6a28dfeed1242a89f1bf8a872f9f6ebd39585d8c

7 years ago[GLESv3] Fix build
Lingfeng Yang [Thu, 12 Jan 2017 01:06:42 +0000 (17:06 -0800)]
[GLESv3] Fix build

Change-Id: I1255b2505eec7ce032992b99c20df4a1dca4394f

7 years ago[GLESv3] ES 3.x API v1
Lingfeng Yang [Mon, 9 Jan 2017 21:37:22 +0000 (13:37 -0800)]
[GLESv3] ES 3.x API v1

- ES 3.0 almost conformant (~80 dEQP-GLES3 failures)
- ES 3.1 has entry points

- This CL adds all the new entry points and updates all
  validation.

Change-Id: I8f7256d9443ecda9d7ef87580b467e711c6e8e92

7 years ago[GLESv3] Transform feedback state tracking
Lingfeng Yang [Mon, 9 Jan 2017 21:27:49 +0000 (13:27 -0800)]
[GLESv3] Transform feedback state tracking

Needed to pass some negative_api tests involving transform feedback.

Change-Id: I7be230bb6432c32641de6bb9249fd00ba3dfe926

7 years ago[GLESv3] Shader state updates
Lingfeng Yang [Mon, 9 Jan 2017 21:25:31 +0000 (13:25 -0800)]
[GLESv3] Shader state updates

- Track program pipelines
- Track separate shader programs
- Track original shader source in guest

Change-Id: I8f54089ddf12d03677275cde58ea7f267e410482

7 years ago[GLESv3] Updated validation
Lingfeng Yang [Mon, 9 Jan 2017 21:24:11 +0000 (13:24 -0800)]
[GLESv3] Updated validation

Change-Id: I0881a6bd58717964c235075e94b021e7e24be420

7 years ago[GLESv3] glUtils update for ES 3.x
Lingfeng Yang [Mon, 9 Jan 2017 21:23:42 +0000 (13:23 -0800)]
[GLESv3] glUtils update for ES 3.x

Change-Id: Iaf9b5832af0822d9f663a5365e7ae9a7cee426cc

7 years ago[GLESv3] FBO state
Lingfeng Yang [Mon, 9 Jan 2017 21:23:25 +0000 (13:23 -0800)]
[GLESv3] FBO state

- Draw/read framebuffers
- Multisampled render buffers
- Multiple color attachments
- GL_DEPTH_STENCIL attachment

Change-Id: Ic0f51633a42a14d333b6dc3fb52c6fa9de0bfe17

7 years ago[GLESv3] ES 3.x buffer state
Lingfeng Yang [Mon, 9 Jan 2017 21:12:33 +0000 (13:12 -0800)]
[GLESv3] ES 3.x buffer state

- VAOs
- indexed buffers

Change-Id: I743c3e22bdbb67ca0b6cecac6b231cd674a5061f

7 years ago[GLESv3] Texture state tracking upgrades
Lingfeng Yang [Tue, 10 Jan 2017 22:54:38 +0000 (14:54 -0800)]
[GLESv3] Texture state tracking upgrades

- TextureUtils to get the low down on all offset/size related calculations
(ripped from SwiftShader)
    - This involves track of all PBO fields
- Move TextureRec and friends to GLSharedGroup
- Implement new encoder utils to use in encoder

Change-Id: Ic6585f49d2928fe965181ec706d5fefa8713e0eb

7 years ago[GLESv3] versions, es > 2, encoder
Lingfeng Yang [Mon, 9 Jan 2017 20:04:12 +0000 (12:04 -0800)]
[GLESv3] versions, es > 2, encoder

- Encoder with ES 3.x entry points
- Allow ES versions > 2 depending on host capability

Change-Id: I71e374f1685610bb0e4f9e04f4bba87b0cbaa02b

7 years agoMerge "Revert "Fix boot for car emulator on git-master""
Lingfeng Yang [Wed, 11 Jan 2017 00:30:58 +0000 (00:30 +0000)]
Merge "Revert "Fix boot for car emulator on git-master""

7 years agoRevert "Fix boot for car emulator on git-master"
Lingfeng Yang [Wed, 11 Jan 2017 00:30:45 +0000 (00:30 +0000)]
Revert "Fix boot for car emulator on git-master"

This reverts commit 3783edd49fd2ad6f200cbf9d04978132f2e41bd2.

Change-Id: I25dab3f8c151506a84601ab0c341d5dfc7c3b2ae

7 years agoRevert "Fix git-master and sync device"
Weilun Du [Fri, 6 Jan 2017 18:37:21 +0000 (18:37 +0000)]
Revert "Fix git-master and sync device"

This reverts commit 057e300788707fca96aeb82c3cc4d1d9b475b032.

Change-Id: Ic2d2c808cf1587e839abfa7a8928792544f231ac

7 years agoFix git-master and sync device
Lingfeng Yang [Wed, 4 Jan 2017 01:35:08 +0000 (17:35 -0800)]
Fix git-master and sync device

Disable sync device for now until we fix rest of the issues

Change-Id: Ie4878b1231b481e5085d47e7525f0ae4b3c7e9db

7 years agoFix boot for car emulator on git-master
Lingfeng Yang [Tue, 3 Jan 2017 23:57:53 +0000 (15:57 -0800)]
Fix boot for car emulator on git-master

bug: 33623000

Change-Id: Ie17136f2adafdb567bf9a490cf1282f1703d4f54

7 years agoFix black screen in apps
Lingfeng Yang [Wed, 14 Dec 2016 21:13:51 +0000 (13:13 -0800)]
Fix black screen in apps

- multi-line for loop body :)
- distinguish locked vs unlocked cb width

Change-Id: I4d978011a1b7a7aa5efb244a56353857285e3a03

7 years agoMerge "Fix out-of-bounds vertex arrays"
TreeHugger Robot [Tue, 13 Dec 2016 01:52:55 +0000 (01:52 +0000)]
Merge "Fix out-of-bounds vertex arrays"

7 years agoFix out-of-bounds vertex arrays
Lingfeng Yang [Tue, 13 Dec 2016 00:17:02 +0000 (16:17 -0800)]
Fix out-of-bounds vertex arrays

Index range cache got a bogus argument for "offset",
so it was not being invalidated properly.

When it wasn't being invalidated properly, our validation
could issue out-of-bounds errors even when the index buffer
was actually not out of bounds.

Change-Id: I9c59412bb20bd6ea16e25bf83f1e64d5889910e9

7 years agoMerge "Handle repeated swapBuffer errors"
TreeHugger Robot [Fri, 9 Dec 2016 00:36:02 +0000 (00:36 +0000)]
Merge "Handle repeated swapBuffer errors"

7 years agoHandle repeated swapBuffer errors
Joshua Lang [Thu, 8 Dec 2016 22:49:07 +0000 (14:49 -0800)]
Handle repeated swapBuffer errors

Changed eglSwapBuffers to actually signal an error when swapBuffers
fails. This was hiding an error log at the SurfaceFlinger callsite.

When eglSwapBuffers is called after a prior error, we should not try to
enqueue a NULL buffer which was causing a segfault that takes down
SurfaceFlinger.

Bug: 33432596
Change-Id: I72f3301e0adbc4ea75266c9c1c9e01d9169036e7

7 years agoMerge remote-tracking branch 'goog/stage-aosp-master' into HEAD am: 0bff4a1296 am...
Bill Yi [Tue, 6 Dec 2016 23:52:12 +0000 (23:52 +0000)]
Merge remote-tracking branch 'goog/stage-aosp-master' into HEAD am: 0bff4a1296 am: df28bb8ddf am: 4033cc718c
am: d8dad693b2

Change-Id: Ie80f047c5a8f81fbc81e8e60ba4c158022590002

7 years agoMerge remote-tracking branch 'goog/stage-aosp-master' into HEAD am: 0bff4a1296 am...
Bill Yi [Tue, 6 Dec 2016 23:48:12 +0000 (23:48 +0000)]
Merge remote-tracking branch 'goog/stage-aosp-master' into HEAD am: 0bff4a1296 am: df28bb8ddf
am: 4033cc718c

Change-Id: I3ea15643bbabf94be2fdccb2982459aa8b284f45

7 years agoMerge remote-tracking branch 'goog/stage-aosp-master' into HEAD am: 0bff4a1296
Bill Yi [Tue, 6 Dec 2016 23:44:11 +0000 (23:44 +0000)]
Merge remote-tracking branch 'goog/stage-aosp-master' into HEAD am: 0bff4a1296
am: df28bb8ddf

Change-Id: I8651d7ebd3694ac715dcaac6f46d7094c5e327eb

7 years agoMerge remote-tracking branch 'goog/stage-aosp-master' into HEAD
Bill Yi [Tue, 6 Dec 2016 23:39:41 +0000 (23:39 +0000)]
Merge remote-tracking branch 'goog/stage-aosp-master' into HEAD
am: 0bff4a1296

Change-Id: Icdff0ea2225fe1dd8e1b587f829b005810413655

7 years agoMerge remote-tracking branch 'goog/stage-aosp-master' into HEAD
Bill Yi [Tue, 6 Dec 2016 22:30:40 +0000 (14:30 -0800)]
Merge remote-tracking branch 'goog/stage-aosp-master' into HEAD

7 years agoMerge "Print more info if a draw call is out of bounds"
TreeHugger Robot [Tue, 6 Dec 2016 14:38:04 +0000 (14:38 +0000)]
Merge "Print more info if a draw call is out of bounds"

7 years agoMerge "[GLESv3][VAO] enable/pointer for vertex attribs when possible"
TreeHugger Robot [Fri, 2 Dec 2016 22:09:45 +0000 (22:09 +0000)]
Merge "[GLESv3][VAO] enable/pointer for vertex attribs when possible"

7 years agoInitial empty repository
Bill Yi [Fri, 2 Dec 2016 21:05:18 +0000 (21:05 +0000)]
Initial empty repository

7 years agoPrint more info if a draw call is out of bounds
Lingfeng Yang [Fri, 2 Dec 2016 20:32:41 +0000 (12:32 -0800)]
Print more info if a draw call is out of bounds

Change-Id: I8f35d27a76d8b023f63543f2afdd4dc9c2a18a0b

7 years ago[GLESv3][VAO] enable/pointer for vertex attribs when possible
Lingfeng Yang [Fri, 2 Dec 2016 16:02:15 +0000 (08:02 -0800)]
[GLESv3][VAO] enable/pointer for vertex attribs when possible

If we don't forward enables/pointers to the host until
right before the draw, when a nonzero VAO is bound,
it defeats the purpose of VAO usage for performance.

This CL prepares the GLES2 encoder for VAO usage by
forwarding those calls whenever possible.

It gives a flag to sendVertexAttributes to not do any
changes in GL state if all attributes are backed by VBOs.

The reason we don't forward them 100% is because of
supporting either legacy or tricky behavior:

Legacy: specifying vertex arrays from host memory directly
with a host ptr passed to glVertexAttribPointer
Tricky: Using glVertexAttrib*f*(...) instead of
glVertexAttribPointer

Change-Id: I190aab86d7dcd7e01cfac0a1f60b44fac131abd0

7 years agoMerge "Revert "GL2Encoder: Do not forward GLES API version queries""
Lingfeng Yang [Fri, 2 Dec 2016 17:43:24 +0000 (17:43 +0000)]
Merge "Revert "GL2Encoder: Do not forward GLES API version queries""

7 years agoRevert "GL2Encoder: Do not forward GLES API version queries"
Lingfeng Yang [Fri, 2 Dec 2016 17:43:01 +0000 (17:43 +0000)]
Revert "GL2Encoder: Do not forward GLES API version queries"

This reverts commit dadc6b152a14c98bb49ce9848078a6c8bce9bf9f.

dEQP-GLES2.functional.fbo.completeness.renderable.renderbuffer.color0.rgb10_a2 Pass -> Fail

I will provide a proper fix for this; since we are supporting GLESv3, adding the client version to the tracked state and selectively rejecting such formats with GL_FRAMEBUFFER_UNSUPPORTED.

Change-Id: Id7fc205b6ddd46fa72c62cd9a8c67cadee78d46d

7 years agoMerge "More accurate validation on gl vertex attributes"
Yahan Zhou [Fri, 2 Dec 2016 02:02:30 +0000 (02:02 +0000)]
Merge "More accurate validation on gl vertex attributes"

7 years agoMore accurate validation on gl vertex attributes
Yahan Zhou [Thu, 1 Dec 2016 21:49:44 +0000 (13:49 -0800)]
More accurate validation on gl vertex attributes

This CL has more accurate validation for gl vertex attributes, and is
more tolerable if the user forgot to disable some vertex attribute
arrays.

Change-Id: I6bb205add25bf51f0ba70a5cb267c3319a17a842

7 years agoMerge "GL2Encoder: Do not forward GLES API version queries"
Yahan Zhou [Thu, 1 Dec 2016 18:17:11 +0000 (18:17 +0000)]
Merge "GL2Encoder: Do not forward GLES API version queries"

7 years agoGL2Encoder: Do not forward GLES API version queries
Yu Ning [Tue, 31 May 2016 08:40:54 +0000 (16:40 +0800)]
GL2Encoder: Do not forward GLES API version queries

Original author: Chenglangjie Yang <chenglangjie.yang@intel.com>

GLESv3 adds two additional glGetIntegerv() parameters for returning
GLES API version number: GL_MAJOR_VERSION and GL_MINOR_VERSION. They
are not supported by GLESv2, though. Compare:

(v3) https://www.khronos.org/opengles/sdk/docs/man3/html/glGet.xhtml
(v2) https://www.khronos.org/opengles/sdk/docs/man/xhtml/glGet.xml

dEQP actually uses this API to determine if the device being tested
supports GLESv3. If GL2Encoder just forwards such queries to the
host, the result will be the desktop GL API version implemented by
the host GPU driver, which is almost always >= 3.0. This can mislead
dEQP into treating the emulated device as GLESv3-compatible, and
cause various GLESv2 tests to fail.

When applied to AOSP master, this patch fixes various dEQP-GLES2
failures in the following packages:

 dEQP-GLES2.functional.fbo.completeness.renderable.*
 dEQP-GLES2.functional.negative_api.*
 dEQP-GLES2.functional.draw.random
 dEQP-GLES2.functional.rasterization.primitives

When applied to Partner m-emu-dev, it causes a few regressions in
dEQP-GLES2 (actually false negatives), which will be addressed by
two other patches.

Change-Id: I801144aeee922d90af4c7dda6af68dcc0a40fb6d
Signed-off-by: Chenglangjie Yang <chenglangjie.yang@intel.com>
[Revised code and commit message]
Signed-off-by: Yu Ning <yu.ning@intel.com>
7 years agoRevert "Fix the position of qemu_pipe header" am: 94ad9fbf53 am: b0e5b30f13
Christopher Ferris [Wed, 30 Nov 2016 02:36:12 +0000 (02:36 +0000)]
Revert "Fix the position of qemu_pipe header" am: 94ad9fbf53 am: b0e5b30f13
am: f10543b3b5

Change-Id: I239c1c42ac6e92290a7319c790fdbf91e354d94b

7 years agoRevert "Fix the position of qemu_pipe header" am: 94ad9fbf53
Christopher Ferris [Wed, 30 Nov 2016 02:31:41 +0000 (02:31 +0000)]
Revert "Fix the position of qemu_pipe header" am: 94ad9fbf53
am: b0e5b30f13

Change-Id: Id43618ad8b4c83b41b0dfa709152640366071fd4

7 years agoRevert "Fix the position of qemu_pipe header"
Christopher Ferris [Wed, 30 Nov 2016 02:26:11 +0000 (02:26 +0000)]
Revert "Fix the position of qemu_pipe header"
am: 94ad9fbf53

Change-Id: I042af868b1f418b0ee5902dc928b405717808cd1

7 years agoRevert "Fix the position of qemu_pipe header"
Christopher Ferris [Sat, 22 Oct 2016 04:54:29 +0000 (04:54 +0000)]
Revert "Fix the position of qemu_pipe header"

This change should not have made it into master.

This reverts commit 3855dfbf428269d3c79dd7ba4b257ec5e9b917ff.

Test: Built full-eng, mmma -j30 device/generic/goldfish-opengl.

Change-Id: I4bffeae147464a7a158e0daa95155d87d0a9677b
(cherry picked from commit 2e11850e11ad1b8a548176a5dc8c223f252227d9)

7 years agoRevert "Revert "DO NOT MERGE ANYWHERE: Goldfish DMA-based gralloc""
Lingfeng Yang [Wed, 30 Nov 2016 00:52:35 +0000 (00:52 +0000)]
Revert "Revert "DO NOT MERGE ANYWHERE: Goldfish DMA-based gralloc""

This reverts commit 9b166b966d6f03f13f65d3134f9c5e1133ec10e2.

Change-Id: I9b10b45d1ebd3b51ede2f75cc8ab403914b0d777

7 years agoMerge "Revert "DO NOT MERGE ANYWHERE: Goldfish DMA-based gralloc""
Miao Wang [Tue, 29 Nov 2016 23:51:38 +0000 (23:51 +0000)]
Merge "Revert "DO NOT MERGE ANYWHERE: Goldfish DMA-based gralloc""

7 years agoRevert "DO NOT MERGE ANYWHERE: Goldfish DMA-based gralloc"
Miao Wang [Tue, 29 Nov 2016 23:43:24 +0000 (23:43 +0000)]
Revert "DO NOT MERGE ANYWHERE: Goldfish DMA-based gralloc"

This reverts commit df3a043b96b90d949643ddd0219fc0bf4ff68040.

Change-Id: Ic87fa2f922bd61123e64fc32fc8ebb13dec4c219

7 years agoMerge "Fix build - add LOGV->ALOGV"
Lingfeng Yang [Tue, 29 Nov 2016 22:29:29 +0000 (22:29 +0000)]
Merge "Fix build - add LOGV->ALOGV"

7 years agoFix build - add LOGV->ALOGV
Lingfeng Yang [Tue, 29 Nov 2016 22:23:14 +0000 (14:23 -0800)]
Fix build - add LOGV->ALOGV

Change-Id: I669211faa3c58488c5b9b23d900a4e6da8e5c512

7 years agoMerge "DO NOT MERGE ANYWHERE: Goldfish DMA-based gralloc"
Lingfeng Yang [Tue, 29 Nov 2016 21:55:55 +0000 (21:55 +0000)]
Merge "DO NOT MERGE ANYWHERE: Goldfish DMA-based gralloc"

7 years agoDO NOT MERGE ANYWHERE: Goldfish DMA-based gralloc
Lingfeng Yang [Sat, 24 Sep 2016 00:53:48 +0000 (17:53 -0700)]
DO NOT MERGE ANYWHERE: Goldfish DMA-based gralloc

Also includes YV12/YUV420888 conversion on the host.

Change-Id: Ie0c23f6e18ae96b2bdeadf6dbd4828ca1e7de8a0

7 years agoMerge "DO NOT MERGE ANYWHERE Accept EGL_CONTEXT_PRIORITY_LEVEL_IMG" into nyc-mr1...
Yahan Zhou [Wed, 23 Nov 2016 22:33:12 +0000 (22:33 +0000)]
Merge "DO NOT MERGE ANYWHERE Accept EGL_CONTEXT_PRIORITY_LEVEL_IMG" into nyc-mr1-dev am: ff9b220285  -s ours am: ab60271bab  -s ours am: f09bf909ad  -s ours
am: d7e8dc892b  -s ours

Change-Id: I3aa8dddf4571f482028eb873e29b3be2b2340a24

7 years agoDO NOT MERGE ANYWHERE Accept EGL_CONTEXT_PRIORITY_LEVEL_IMG am: 3a6d7c961e -s ours...
Yahan Zhou [Wed, 23 Nov 2016 22:33:01 +0000 (22:33 +0000)]
DO NOT MERGE ANYWHERE Accept EGL_CONTEXT_PRIORITY_LEVEL_IMG am: 3a6d7c961e  -s ours am: db334bed50  -s ours am: 2737782b4d  -s ours
am: 1e5fd1e94e  -s ours

Change-Id: I1503e08d50a799e17c4f6bcb2a6d6a9ed5e6eb0b

7 years agoMerge "DO NOT MERGE ANYWHERE Accept EGL_CONTEXT_PRIORITY_LEVEL_IMG" into nyc-mr1...
Yahan Zhou [Wed, 23 Nov 2016 22:30:42 +0000 (22:30 +0000)]
Merge "DO NOT MERGE ANYWHERE Accept EGL_CONTEXT_PRIORITY_LEVEL_IMG" into nyc-mr1-dev am: ff9b220285  -s ours am: ab60271bab  -s ours
am: f09bf909ad  -s ours

Change-Id: I8247229fbca72d4a6b759935909f2e99c21e03b4

7 years agoDO NOT MERGE ANYWHERE Accept EGL_CONTEXT_PRIORITY_LEVEL_IMG am: 3a6d7c961e -s ours...
Yahan Zhou [Wed, 23 Nov 2016 22:30:33 +0000 (22:30 +0000)]
DO NOT MERGE ANYWHERE Accept EGL_CONTEXT_PRIORITY_LEVEL_IMG am: 3a6d7c961e  -s ours am: db334bed50  -s ours
am: 2737782b4d  -s ours

Change-Id: I4d55d909a22f5b9cf3298ef48d2aa00f6a0a8916

7 years agoMerge "DO NOT MERGE ANYWHERE Accept EGL_CONTEXT_PRIORITY_LEVEL_IMG" into nyc-mr1...
Yahan Zhou [Wed, 23 Nov 2016 22:28:28 +0000 (22:28 +0000)]
Merge "DO NOT MERGE ANYWHERE Accept EGL_CONTEXT_PRIORITY_LEVEL_IMG" into nyc-mr1-dev am: ff9b220285  -s ours
am: ab60271bab  -s ours

Change-Id: I14b8e7ee8e7e7a263ed170c3e595ac51b39bd6c5

7 years agoDO NOT MERGE ANYWHERE Accept EGL_CONTEXT_PRIORITY_LEVEL_IMG am: 3a6d7c961e -s ours
Yahan Zhou [Wed, 23 Nov 2016 22:28:17 +0000 (22:28 +0000)]
DO NOT MERGE ANYWHERE Accept EGL_CONTEXT_PRIORITY_LEVEL_IMG am: 3a6d7c961e  -s ours
am: db334bed50  -s ours

Change-Id: Id2246625716dad271de3dc9ce9f2ba0aff2a3df9

7 years agoFix glLinkProgram with invalid program name
Yahan Zhou [Tue, 22 Nov 2016 22:03:56 +0000 (14:03 -0800)]
Fix glLinkProgram with invalid program name

glLinkProgram might try setting up program attributes even when an
invalid program name is passed to it. This patch fixes it.

BUG: 33069416
Change-Id: I93ed140095b67df47b158ba837c4aac8eb9e8e50

7 years agoFix a typo in HostConnection.cpp
Yurii Zubrytskyi [Thu, 17 Nov 2016 23:44:03 +0000 (15:44 -0800)]
Fix a typo in HostConnection.cpp

Change-Id: I76217f256e2a80ef12be6cdbef5d2846da4323b0

7 years agoMerge "DO NOT MERGE ANYWHERE Accept EGL_CONTEXT_PRIORITY_LEVEL_IMG" into nyc-mr1...
Yahan Zhou [Fri, 11 Nov 2016 22:24:30 +0000 (22:24 +0000)]
Merge "DO NOT MERGE ANYWHERE Accept EGL_CONTEXT_PRIORITY_LEVEL_IMG" into nyc-mr1-dev am: ff9b220285  -s ours am: ab60271bab  -s ours am: 78454be75a  -s ours
am: 0913dec00d  -s ours

Change-Id: I37ac6d6e71a1b0e5de8407e99ed483ffd45f2913

7 years agoDO NOT MERGE ANYWHERE Accept EGL_CONTEXT_PRIORITY_LEVEL_IMG am: 3a6d7c961e -s ours...
Yahan Zhou [Fri, 11 Nov 2016 22:24:21 +0000 (22:24 +0000)]
DO NOT MERGE ANYWHERE Accept EGL_CONTEXT_PRIORITY_LEVEL_IMG am: 3a6d7c961e  -s ours am: db334bed50  -s ours am: 096235db73  -s ours
am: 984acc9061  -s ours

Change-Id: I94e1c2dd22c4bac7cc2f478b3bf975c1efa6fc82

7 years agoMerge "DO NOT MERGE ANYWHERE Accept EGL_CONTEXT_PRIORITY_LEVEL_IMG" into nyc-mr1...
Yahan Zhou [Fri, 11 Nov 2016 22:17:30 +0000 (22:17 +0000)]
Merge "DO NOT MERGE ANYWHERE Accept EGL_CONTEXT_PRIORITY_LEVEL_IMG" into nyc-mr1-dev am: ff9b220285  -s ours am: ab60271bab  -s ours
am: 78454be75a  -s ours

Change-Id: I3e7a223d68cd9c09d3a89e09cfe6ee778136e72c