RenderThread throws EGL_BAD_NATIVE_WINDOW on eglSwapBuffers()

1,145 views
Skip to first unread message

Damien Dejean

unread,
Dec 15, 2014, 4:39:48 PM12/15/14
to android...@googlegroups.com
Hi there :)

I'm currently porting Android 5.0 on Freescale IMX6 Quad with Vivante GC2000 GPU and I'm facing a strange issue. Each time Android boots, either the Launcher or SystemUI crashes with the following crash dump:

D/OpenGLRenderer( 3066): Render dirty regions requested: true
D/Atlas   ( 3066): Validating map...

D/PhoneStatusBar( 3066): disable: < expand icons alerts system_info back home recent clock search >

E/BluetoothAdapter( 3066): Bluetooth binder is null

D/PhoneStatusBar( 3066): heads up is enabled
I/art     ( 3066): Clamp target GC heap from 19MB to 16MB
E/BufferQueueProducer( 2274): [com.android.systemui.ImageWallpaper] dequeueBuffer: can't dequeue multiple buffers without setting the buffer count

I/Choreographer( 3066): Skipped 67 frames!  The application may be doing too much work on its main thread.

D/ViewRootImpl( 3066): changeCanvasOpacity: opaque=true

I/OpenGLRenderer( 3066): Initialized EGL, version 1.4

D/OpenGLRenderer( 3066): Enabling debug mode 0

E/BufferQueueProducer( 2274): [StatusBar] dequeueBuffer: can't dequeue multiple buffers without setting the buffer count

D/WifiService( 2834): New client listening to asynchronous messages

D/OpenGLRenderer( 3066): setting property extraRasterBucket to 0.95

D/OpenGLRenderer( 3066):     failed

D/OpenGLRenderer( 3066): setting property extraRasterBucket to 0.0

D/OpenGLRenderer( 3066):     failed

E/BufferQueueProducer( 3066): [StatusBar] dequeueBuffer: can't dequeue multiple buffers without setting the buffer count

F/OpenGLRenderer( 3066): Encountered EGL error 12299 EGL_BAD_NATIVE_WINDOW during rendering
...
I/DEBUG   ( 2501): backtrace:
I/DEBUG   ( 2501):     #00 pc 0003acc4  /system/lib/libc.so (tgkill+12)
I/DEBUG   ( 2501):     #01 pc 00016dfd  /system/lib/libc.so (pthread_kill+52)
I/DEBUG   ( 2501):     #02 pc 00017a1b  /system/lib/libc.so (raise+10)
I/DEBUG   ( 2501):     #03 pc 00014271  /system/lib/libc.so (__libc_android_abort+36)
I/DEBUG   ( 2501):     #04 pc 00012a40  /system/lib/libc.so (abort+4)
I/DEBUG   ( 2501):     #05 pc 00007b65  /system/lib/libcutils.so (__android_log_assert+88)
I/DEBUG   ( 2501):     #06 pc 0003cae5  /system/lib/libhwui.so (android::uirenderer::renderthread::EglManager::swapBuffers(void*)+72)
I/DEBUG   ( 2501):     #07 pc 0003b589  /system/lib/libhwui.so (android::uirenderer::renderthread::CanvasContext::swapBuffers()+8)
I/DEBUG   ( 2501):     #08 pc 0003b745  /system/lib/libhwui.so (android::uirenderer::renderthread::CanvasContext::draw()+248)
I/DEBUG   ( 2501):     #09 pc 0003c631  /system/lib/libhwui.so (android::uirenderer::renderthread::DrawFrameTask::run()+112)
I/DEBUG   ( 2501):     #10 pc 0003e12f  /system/lib/libhwui.so (android::uirenderer::renderthread::RenderThread::threadLoop()+66)
I/DEBUG   ( 2501):     #11 pc 00010531  /system/lib/libutils.so (android::Thread::_threadLoop(void*)+112)
I/DEBUG   ( 2501):     #12 pc 0005e035  /system/lib/libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*)+72)
I/DEBUG   ( 2501):     #13 pc 000100a1  /system/lib/libutils.so
I/DEBUG   ( 2501):     #14 pc 000165e7  /system/lib/libc.so (__pthread_start(void*)+30)
I/DEBUG   ( 2501):     #15 pc 000145db  /system/lib/libc.so (__start_thread+6)


During the investigation I found that the Renderer is able to call eglSwapBuffers on or two times and then it fails. I started from Android 4.4.2 freescale portage and I'm bringing proprietary blobs and patching as needed. The gralloc, the hwcomposer and egl/obl libs seems to be loaded correctly. The bootanimation is working, the launcher displays and then it fails.

Is there any known issue ? Does anyone already face such issue ?

Thanks,

Damien.

cheriew...@gmail.com

unread,
Sep 22, 2016, 10:25:38 AM9/22/16
to android-porting
Hi, have you solved this ?  how to solve this issue ? and is there any solution to avoid this issue? Thanks 

在 2014年12月16日星期二 UTC+8上午5:39:48,Damien Dejean写道:
Reply all
Reply to author
Forward
0 new messages