The default bug view has changed. See this FAQ.

[OGL] Accelerated layers hangs Fennec and results in a phone reboot on Nexus 1 (Adreno)

RESOLVED FIXED

Status

Fennec Graveyard
General
RESOLVED FIXED
6 years ago
5 years ago

People

(Reporter: vingtetun, Unassigned)

Tracking

Trunk
ARM
Android
Dependency tree / graph

Details

Attachments

(1 attachment, 1 obsolete attachment)

Logcat:

I/GeckoAppJava( 1008): installing extension : extensions/feedback@mobile.mozilla.org.xpi
I/GeckoAppJava( 1008): surface created
D/dalvikvm( 1008): GC_EXTERNAL_ALLOC freed 1548 objects / 120768 bytes in 73ms
I/GeckoAppJava( 1008): surfaceChanged: fmt: -1 dim: 480 762
I/ActivityManager(   97): Displayed activity org.mozilla.fennec/.App: 1243 ms (total 1429186 ms)
I/Gecko   ( 1008): Font: /system/fonts/DroidSerif-Italic.ttf
I/Gecko   ( 1008): font family: Droid Serif
I/Gecko   ( 1008): Font: /system/fonts/DroidSansFallback.ttf
I/Gecko   ( 1008): font family: Droid Sans Fallback
I/Gecko   ( 1008): Font: /system/fonts/DroidSerif-BoldItalic.ttf
I/Gecko   ( 1008): font family: Droid Serif
I/Gecko   ( 1008): Font: /system/fonts/Clockopia.ttf
I/Gecko   ( 1008): font family: Clockopia
I/Gecko   ( 1008): Font: /system/fonts/DroidSans.ttf
I/Gecko   ( 1008): font family: Droid Sans
I/Gecko   ( 1008): Font: /system/fonts/DroidSerif-Regular.ttf
I/Gecko   ( 1008): font family: Droid Serif
I/Gecko   ( 1008): Font: /system/fonts/DroidSans-Bold.ttf
I/Gecko   ( 1008): font family: Droid Sans
I/Gecko   ( 1008): Font: /system/fonts/DroidSerif-Bold.ttf
I/Gecko   ( 1008): font family: Droid Serif
I/Gecko   ( 1008): Font: /system/fonts/DroidSansMono.ttf
I/Gecko   ( 1008): font family: Droid Sans Mono
I/Gecko   ( 1008): Font: /system/fonts/DroidSansThai.ttf
I/Gecko   ( 1008): font family: Droid Sans Thai
I/Gecko   ( 1008): Font: /system/fonts/DroidSansHebrew.ttf
I/Gecko   ( 1008): font family: Droid Sans Hebrew
I/Gecko   ( 1008): Font: /system/fonts/DroidSansArabic.ttf
I/Gecko   ( 1008): font family: Droid Sans Arabic
I/GeckoDEBUG( 1008): calling show
I/Gecko   ( 1008): Detected osrelease `2.6.32.9-27240-gbca5320'
I/Gecko   ( 1008): JITs are not broken
I/GeckoDEBUG( 1008): calling show
I/GeckoDEBUG( 1008): calling bringtofront
I/GeckoDEBUG( 1008): sending deactivate
I/GeckoDEBUG( 1008): sending activate to the new window
I/GeckoDEBUG( 1008): calling bringtofront
I/GeckoDEBUG( 1008): calling show
I/GeckoDEBUG( 1008): calling show
I/GeckoDEBUG( 1008): calling show
I/GeckoDEBUG( 1008): calling show
I/GeckoDEBUG( 1008): calling bringtofront
I/GeckoDEBUG( 1008): calling show
I/GeckoDEBUG( 1008): calling show
I/GeckoDEBUG( 1008): calling bringtofront
I/Gecko   ( 1008): nsWindow::GetLayerManager
D/libEGL  ( 1008): loaded /system/lib/egl/libGLES_android.so
W/InputManagerService(   97): Got RemoteException sending setActive(false) notification to pid 709 uid 10056
D/libEGL  ( 1008): loaded /system/lib/egl/libEGL_adreno200.so
D/libEGL  ( 1008): loaded /system/lib/egl/libGLESv1_CM_adreno200.so
D/libEGL  ( 1008): loaded /system/lib/egl/libGLESv2_adreno200.so
I/Gecko   ( 1008): Extensions: EGL_KHR_image EGL_KHR_image_base EGL_KHR_image_pixmap EGL_ANDROID_image_native_buffer EGL_ANDROID_swap_rectangle EGL_ANDROID_get_render_buffer  0x45
I/Gecko   ( 1008): Extensions length: 143
I/Gecko   ( 1008): ... requesting window surface from bridge
I/Gecko   ( 1008): got surface 0x11aa98
I/Gecko   ( 1008): nsWindow::GetLayerManager
I/GeckoDEBUG( 1008): calling show
I/GeckoDEBUG( 1008): calling show
I/GeckoDEBUG( 1008): calling bringtofront
I/Gecko   ( 1032): Font: /system/fonts/DroidSerif-Italic.ttf
I/Gecko   ( 1032): font family: Droid Serif
I/Gecko   ( 1032): Font: /system/fonts/DroidSansFallback.ttf
I/Gecko   ( 1032): font family: Droid Sans Fallback
I/Gecko   ( 1032): Font: /system/fonts/DroidSerif-BoldItalic.ttf
I/Gecko   ( 1032): font family: Droid Serif
I/Gecko   ( 1032): Font: /system/fonts/Clockopia.ttf
I/Gecko   ( 1032): font family: Clockopia
I/Gecko   ( 1032): Font: /system/fonts/DroidSans.ttf
I/Gecko   ( 1032): font family: Droid Sans
I/Gecko   ( 1032): Font: /system/fonts/DroidSerif-Regular.ttf
I/Gecko   ( 1032): font family: Droid Serif
I/Gecko   ( 1032): Font: /system/fonts/DroidSans-Bold.ttf
I/Gecko   ( 1032): font family: Droid Sans
I/Gecko   ( 1032): Font: /system/fonts/DroidSerif-Bold.ttf
I/Gecko   ( 1032): font family: Droid Serif
I/Gecko   ( 1032): Font: /system/fonts/DroidSansMono.ttf
I/Gecko   ( 1032): font family: Droid Sans Mono
I/Gecko   ( 1032): Font: /system/fonts/DroidSansThai.ttf
I/Gecko   ( 1032): font family: Droid Sans Thai
I/Gecko   ( 1032): Font: /system/fonts/DroidSansHebrew.ttf
I/Gecko   ( 1032): font family: Droid Sans Hebrew
I/Gecko   ( 1032): Font: /system/fonts/DroidSansArabic.ttf
I/Gecko   ( 1032): font family: Droid Sans Arabic
I/Gecko   ( 1032): Detected osrelease `2.6.32.9-27240-gbca5320'
I/Gecko   ( 1032): JITs are not broken
I/GeckoDEBUG( 1008): calling bringtofront
D/dalvikvm(   97): GC_FOR_MALLOC freed 9460 objects / 981336 bytes in 113ms
E/Adreno200-ES20( 1008): gsl_device_waittimestamp failed in rb_timestamp_wait_on_timestamp
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
E/Adreno200-ES20(   97): gsl_device_waittimestamp failed in rb_timestamp_wait_on_timestamp
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/ActivityManager(   97): Timeout of broadcast BroadcastRecord{44db8ad0 android.intent.action.TIME_TICK} - receiver=android.app.ActivityThread$PackageInfo$ReceiverDispatcher$InnerReceiver@44bdc710
W/ActivityManager(   97): Receiver during timeout: BroadcastFilter{44c4edf0 ReceiverList{44c4ed98 97 system/1000 local:44bdc710}}
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
I/Process (   97): Sending signal. PID: 97 SIG: 3
I/dalvikvm(   97): threadid=3: reacting to signal 3
I/dalvikvm(   97): Wrote stack traces to '/data/anr/traces.txt'
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
I/Process (   97): Sending signal. PID: 97 SIG: 3
I/dalvikvm(   97): threadid=3: reacting to signal 3
I/dalvikvm(   97): Wrote stack traces to '/data/anr/traces.txt'
I/Process (   97): Sending signal. PID: 194 SIG: 3
I/dalvikvm(  194): threadid=3: reacting to signal 3
I/dalvikvm(  194): Wrote stack traces to '/data/anr/traces.txt'
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
W/SharedBufferStack( 1008): waitForCondition(LockCondition) timed out (identity=89, status=0). CPU may be pegged. trying again.
I/Watchdog_N(   97): dumpKernelStacks
E/Watchdog_N(   97): Unable to open stack of tid 97 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 98 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 99 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 100 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 101 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 102 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 103 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 104 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 109 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 114 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 115 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 116 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 117 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 138 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 140 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 141 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 142 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 143 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 144 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 145 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 146 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 147 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 148 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 149 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 151 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 152 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 153 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 154 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 156 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 157 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 158 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 160 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 167 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 169 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 183 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 184 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 187 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 188 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 190 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 220 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 222 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 223 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 224 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 252 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 259 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 263 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 264 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 265 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 267 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 272 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 280 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 281 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 288 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 289 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 292 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 767 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 768 : 13 (Permission denied)
E/Watchdog_N(   97): Unable to open stack of tid 769 : 13 (Permission denied)
D/dalvikvm(   97): GC_FOR_MALLOC freed 7353 objects / 664080 bytes in 94ms
W/SharedBufferStack(   97): waitForCondition(LockCondition) timed out (identity=2, status=0). CPU may be pegged. trying again.
D/dalvikvm(   97): GC_FOR_MALLOC freed 989 objects / 404144 bytes in 63ms
I/Process (   97): Sending signal. PID: 97 SIG: 9
W/Watchdog(   97): *** WATCHDOG KILLING SYSTEM PROCESS: null
I/ServiceManager(   53): service 'audio' died
I/ServiceManager(   53): service 'wifi' died
I/ServiceManager(   53): service 'accessibility' died
I/ServiceManager(   53): service 'notification' died
I/ServiceManager(   53): service 'uimode' died
I/ServiceManager(   53): service 'devicestoragemonitor' died
I/ServiceManager(   53): service 'location' died
I/ServiceManager(   53): service 'search' died
I/ServiceManager(   53): service 'dropbox' died
I/ServiceManager(   53): service 'wallpaper' died
I/ServiceManager(   53): service 'batteryinfo' died
I/ServiceManager(   53): service 'SurfaceFlinger' died
I/ServiceManager(   53): service 'activity' died
I/ServiceManager(   53): service 'entropy' died
I/ServiceManager(   53): service 'power' died
I/ServiceManager(   53): service 'diskstats' died
I/ServiceManager(   53): service 'telephony.registry' died
I/ServiceManager(   53): service 'hardware' died
I/ServiceManager(   53): service 'usagestats' died
I/ServiceManager(   53): service 'battery' died
I/ServiceManager(   53): service 'connectivity' died
I/ServiceManager(   53): service 'appwidget' died
I/ServiceManager(   53): service 'content' died
I/ServiceManager(   53): service 'throttle' died
I/ServiceManager(   53): service 'meminfo' died
I/ServiceManager(   53): service 'cpuinfo' died
I/ServiceManager(   53): service 'permission' died
I/ServiceManager(   53): service 'vibrator' died
I/ServiceManager(   53): service 'package' died
I/ServiceManager(   53): service 'account' died
I/ServiceManager(   53): service 'mount' died
I/ServiceManager(   53): service 'backup' died
I/ServiceManager(   53): service 'alarm' died
I/ServiceManager(   53): service 'sensor' died
I/ServiceManager(   53): service 'window' died
I/ServiceManager(   53): service 'device_policy' died
I/ServiceManager(   53): service 'bluetooth' died
I/ServiceManager(   53): service 'bluetooth_a2dp' died
I/ServiceManager(   53): service 'network_management' died
I/ServiceManager(   53): service 'statusbar' died
I/ServiceManager(   53): service 'clipboard' died
I/ServiceManager(   53): service 'input_method' died
I/ServiceManager(   53): service 'netstat' died
I/ActivityThread(  203): Removing dead content provider: settings
I/ActivityThread(  225): Removing dead content provider: settings
I/ActivityThread(  194): Removing dead content provider: settings
I/ActivityThread(  186): Removing dead content provider: settings
I/ActivityThread(  204): Removing dead content provider: setting




GDB Stack:

(gdb) c
Continuing.

^C
Program received signal SIGINT, Interrupt.
0xafd0eb68 in __futex_syscall3 () from /home/steakdepapillon/Devel/tegra-gdb-20100902/lib/libc.so
(gdb) backtrace 
#0  0xafd0eb68 in __futex_syscall3 () from /home/steakdepapillon/Devel/tegra-gdb-20100902/lib/libc.so
#1  0xafd10634 in __pthread_cond_timedwait_relative () from /home/steakdepapillon/Devel/tegra-gdb-20100902/lib/libc.so
#2  0xafd10708 in __pthread_cond_timedwait () from /home/steakdepapillon/Devel/tegra-gdb-20100902/lib/libc.so
#3  0x8084d46a in ?? () from /home/steakdepapillon/Devel/tegra-gdb-20100902/lib/libdvm.so
#4  0x8084d46a in ?? () from /home/steakdepapillon/Devel/tegra-gdb-20100902/lib/libdvm.so
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
What device was this?
(In reply to comment #1)
> What device was this?

Good question actually, this is a Nexus One (2.2.1)
tracking-fennec: --- → ?
This stack looks like it's on the wrong thread. Can you get one from the fennec main thread?
Summary: Accelerated layers hangs fennec and result into a phone reboot → Accelerated layers hangs fennec and result into a phone reboot on nexus 1

Updated

6 years ago
Summary: Accelerated layers hangs fennec and result into a phone reboot on nexus 1 → Accelerated layers hangs Fennec and results in a phone reboot on Nexus 1
tracking-fennec: ? → 2.0b4+

Comment 4

6 years ago
Created attachment 500124 [details]
logcat of crash

I hit similar behavior to this issue today on my nexus one, 2.2.  Running nightly: Mozilla/5.0 (Android; Linux armv71; rv:2.0b9pre) Gecko/20101228 Firefox/4.0b9pre Fennec/4.0b4pre	

STR i recall:
1) enable OpenGL acceleration with nightly tester tools
2) surf around sites, visiting various websites, and panning and zooming (eg. groupon.com, msnbc.com, read a article on yahoo news)
3) fennec will show residual content and colors when panning.  eventually it will hang and the soft buttons on fennec are irresponsive.  At this point, the device shuts down and reboots itself.   This happened to me Twice, until i disabled OpenGL acceleration

hints from logcat:

484. D/PhoneWindow(  639): couldn't save which view has focus because the focused view org.mozilla.gecko.GeckoSurfaceView@449ed3f8 has no id.
485. I/GeckoApp(  639): pause
486. I/GeckoApp(  639): stop
487. I/GeckoApp(  639): destroy
488. I/GeckoAppJava(  639): surface destroyed
489. I/UsageStats(   92): Unexpected resume of org.mozilla.fennec while already resumed in org.mozilla.fennec


full noisy log attached.
Some more bits:

I/Gecko   ( 1465): AndroidGeckoEvent: 0x461b29b8 : 9 0x0
V/snowfall(  249): WALLPAPER: onSurfaceCreated()
I/GeckoAppJava( 1465): surface destroyed
I/Gecko   ( 1465): AndroidGeckoEvent: 0x461b2a78 : 13 0x0
V/snowfall(  249): WALLPAPER: onSurfaceChanged()
W/IInputConnectionWrapper( 1465): showStatusIcon on inactive InputConnection
I/ActivityManager(  164): No longer want com.android.voicedialer (pid 1341): hidden #16
I/GeckoApp( 1465): stop
I/Gecko   ( 1465): AndroidGeckoEvent: 0x461b2c48 : 8 0x0
W/SharedBufferStack(  249): waitForCondition(LockCondition) timed out (identity=4, status=0). CPU may be pegged. trying again.
I/GPSButton(  164): Update State
I/ActivityManager(  164): Starting activity: Intent { act=android.intent.action.MAIN cat=[android.intent.category.HOME] flg=0x10200000 cmp=com.android.launcher/.Launcher }
D/dalvikvm(  269): GC_EXTERNAL_ALLOC freed 1912 objects / 113304 bytes in 40ms
D/dalvikvm(  269): GC_EXTERNAL_ALLOC freed 1570 objects / 73296 bytes in 38ms
W/SharedBufferStack(  249): waitForCondition(LockCondition) timed out (identity=4, status=0). CPU may be pegged. trying again.
I/ActivityManager(  164): Starting activity: Intent { act=android.intent.action.MAIN cat=[android.intent.category.HOME] flg=0x10200000 cmp=com.android.launcher/.Launcher }
W/SharedBufferStack(  164): waitForCondition(ReallocateCondition) timed out (identity=198, status=0). CPU may be pegged. trying again.
E/Adreno200-ES20( 1465): gsl_device_waittimestamp failed in rb_timestamp_wait_on_timestamp
E/Surface ( 1465): surface (id=1, identity=181) is invalid, err=-19 (No such device)
E/Surface ( 1465): surface (id=1, identity=181) is invalid, err=-19 (No such device)
E/Adreno200-EGL( 1465): egliSwapWindowSurface: unable to dequeue native buffer
E/Surface ( 1465): surface (id=1, identity=181) is invalid, err=-19 (No such device)
E/Adreno200-EGL( 1465): egliGetNativeWindowSize: unable to dequeue native buffer
E/Surface ( 1465): surface (id=1, identity=181) is invalid, err=-19 (No such device)
E/Adreno200-EGL( 1465): eglLockWindowSurface: unable to dequeue native buffer
E/Surface ( 1465): surface (id=1, identity=181) is invalid, err=-19 (No such device)
E/Adreno200-EGL( 1465): egliGetNativeWindowSize: unable to dequeue native buffer
Seems like our surfaces are going bad and that causes some really bad failures
A bunch of people seem to run into this style of problem with other applications. I've not seen any good solutions yet...

Updated

6 years ago
Summary: Accelerated layers hangs Fennec and results in a phone reboot on Nexus 1 → [OGL] Accelerated layers hangs Fennec and results in a phone reboot on Nexus 1

Updated

6 years ago
tracking-fennec: 2.0b4+ → 2.0next+
tracking-fennec: 2.0next+ → ?
tracking-fennec: ? → 7+

Comment 8

6 years ago
Is this still happening with more recent builds?
It is, at least on today's Aurora.
Today's Aurora crash is bug 672787.

Comment 11

6 years ago
(In reply to comment #10)
> Today's Aurora crash is bug 672787.

It doesn't appear to be the case that the user had enabled accelerated layers during that crash.
Well I am not 100% sure but after enabling acc layers, scrolling is super smooth but I get corruption and/or a crash after a few seconds

Comment 13

6 years ago
(In reply to comment #12)
> Well I am not 100% sure but after enabling acc layers, scrolling is super
> smooth but I get corruption and/or a crash after a few seconds

Please post the crash ID for this crash (from about:crashes).
2645ead2-f1d6-e71b-5eec7350-690e3876

Comment 15

6 years ago
(In reply to comment #14)
> 2645ead2-f1d6-e71b-5eec7350-690e3876

Thanks. Is this the most recent crash ID? It doesn't match any crashes at https://crash-stats.mozilla.com, which only gives access to crashes within the last 30 days.
Yes I just made it before submitting it here.

I make another one: bp-003c41b3-b291-475e-994f-58e922110720

Comment 17

6 years ago
Thanks! This one indeed seems related to accelerated layers. Any additional details would be most helpful (e.g. does this happen repeatedly on a particular site).
I can reproduce this within a few seconds on planet mozilla... havn't really tested anything else. The crash happens after scrolling (5-6 posts is usually enough) or zooming

Comment 19

6 years ago
On a Nexus S, I can reproduce this on the latest Aurora (simply by visiting http://planet.mozilla.org). Crash report: bp-f109b4f5-59a1-46b4-be75-e2e492110720


But I cannot reproduce this crash on the latest nightly build.
Tested with latest central (nightly 8.x) builds, I still get crashes and corruption on the N1

3274df1f-3ac4-875e-7dbe6664-4149e15d
14a6ea45-413d-7881-0c99db51-6e816c4e
tracking-fennec: 7+ → +

Updated

6 years ago
OS: All → Android
Hardware: All → ARM
Michael can you try again with today's nightly? You crash IDs are no longer valid. I want to investigate this problem.
(In reply to Benoit Girard (:BenWa) from comment #21)
> Michael can you try again with today's nightly? You crash IDs are no longer
> valid. I want to investigate this problem.

bp-7fc85e01-3d04-4d92-a3b0-bb7042111031 => today's 10.x nighly crashing on planet mozilla just like before
Thanks, from the crash signature were crashing during an memcopy part of what I would bet is an upload. Ajuma's patches should land (or atleast a try build will be ready soon) which you can test on again.

Can you give me steps to reproduce so I can try it with the Nexus One we have in Toronto?
Summary: [OGL] Accelerated layers hangs Fennec and results in a phone reboot on Nexus 1 → [OGL] Accelerated layers hangs Fennec and results in a phone reboot on Nexus 1 (Adreno)
(In reply to Benoit Girard (:BenWa) from comment #23)
> Ajuma's patches should land (or atleast a try
> build will be ready soon) which you can test on again.

Please post here again when such a build is ready.

> Can you give me steps to reproduce so I can try it 
> with the Nexus One we have in Toronto?

For the crash today I just went to planet.mozilla.org and scrolled around a bit. In the past I also tested with just zooming in and out which produces a similar crash. The crash is not bound to p.m.o but that page seems to trigger it very quickly.

Updated

6 years ago
Duplicate of this bug: 683026

Comment 26

6 years ago
(In reply to Michael Monreal [:monreal] from comment #24)

> Please post here again when such a build is ready.

The build is now ready: https://ftp.mozilla.org/pub/mozilla.org/firefox/try-builds/ajuma@mozilla.com-0a600a84edf8/try-android/fennec-10.0a1.en-US.android-arm.apk

Updated

6 years ago
Blocks: 698673
No longer blocks: 607684
Tested with this build:

- first, I just opened the page (p.m.o) and scrolled up and down about 10 times. seemed stable
- then, I double clicked to zoom in and scrolled down. it crashed after a few articles: bp-386f96bb-1e7a-43ba-b856-342492111101
Alright, it's the same crash signature so this doesn't fix the issue. Thanks.
George is going to see if he can reproduce this.
I can reproduce this; full backtrace is:

[Switching to Thread 2440]
0xafd0cd88 in memcpy () from /home/george/dev/moz-gdb/lib/HT018P803942/system/lib/libc.so
(gdb) bt
#0  0xafd0cd88 in memcpy () from /home/george/dev/moz-gdb/lib/HT018P803942/system/lib/libc.so
#1  0x8147caf2 in ?? () from /home/george/dev/android/out/target/product/passion/system/lib/egl/libGLESv2_adreno200.so
#2  0x8147cd5a in ?? () from /home/george/dev/android/out/target/product/passion/system/lib/egl/libGLESv2_adreno200.so
#3  0x8147d550 in ?? () from /home/george/dev/android/out/target/product/passion/system/lib/egl/libGLESv2_adreno200.so
#4  0x8147eb5a in rb_texture_create_hw_image_from_sw () from /home/george/dev/android/out/target/product/passion/system/lib/egl/libGLESv2_adreno200.so
#5  0x8147ec48 in rb_texture_update_hw_subimage () from /home/george/dev/android/out/target/product/passion/system/lib/egl/libGLESv2_adreno200.so
#6  0x8147f900 in rb_texture_loadsubimage () from /home/george/dev/android/out/target/product/passion/system/lib/egl/libGLESv2_adreno200.so
#7  0x8146a638 in TexSubImageLoad () from /home/george/dev/android/out/target/product/passion/system/lib/egl/libGLESv2_adreno200.so
#8  0x8146a86c in qgl2DrvAPI_glTexSubImage2D () from /home/george/dev/android/out/target/product/passion/system/lib/egl/libGLESv2_adreno200.so
#9  0x8145b342 in glTexSubImage2D () from /home/george/dev/android/out/target/product/passion/system/lib/egl/libGLESv2_adreno200.so
#10 0x8267e5b4 in mozilla::gl::GLContext::fTexSubImage2D(unsigned int, int, int, int, int, int, unsigned int, unsigned int, void const*) () from /home/george/dev/mozilla-central/obj-android/dist/bin/libxul.so
#11 0x82f2f310 in mozilla::gl::GLContext::TexSubImage2DWithoutUnpackSubimage (this=0x4a954c00, target=<optimized out>, level=<optimized out>, xoffset=<optimized out>, yoffset=0, width=110, height=110, stride=440, pixelsize=4, format=6408, type=5121, pixels=0x488be000)
    at /home/george/dev/mozilla-central/gfx/gl/GLContext.cpp:2241
#12 0x82f2f426 in mozilla::gl::GLContext::TexSubImage2D (this=0x4a954c00, target=3553, level=0, xoffset=0, yoffset=0, width=110, height=110, stride=440, pixelsize=4, format=6408, type=5121, pixels=0x488be000) at /home/george/dev/mozilla-central/gfx/gl/GLContext.cpp:2146
#13 0x82f31f96 in mozilla::gl::GLContext::UploadSurfaceToTexture (this=0x4a954c00, aSurface=<optimized out>, aDstRegion=<optimized out>, aTexture=<optimized out>, aOverwrite=false, aSrcPoint=..., aPixelBuffer=<optimized out>)
    at /home/george/dev/mozilla-central/gfx/gl/GLContext.cpp:2049
#14 0x82f389b8 in mozilla::gl::TextureImageEGL::DirectUpdate(gfxASurface*, nsIntRegion const&, nsIntPoint const&) () from /home/george/dev/mozilla-central/obj-android/dist/bin/libxul.so
#15 0x82f2fbe4 in mozilla::gl::TiledTextureImage::DirectUpdate (this=0x4ac95310, aSurf=<optimized out>, aRegion=<optimized out>, aFrom=...) at /home/george/dev/mozilla-central/gfx/gl/GLContext.cpp:855
#16 0x82f235ce in mozilla::layers::ShadowImageLayerOGL::Swap (this=<optimized out>, aNewFront=..., aNewBack=0x472feb80) at /home/george/dev/mozilla-central/gfx/layers/opengl/ImageLayerOGL.cpp:892
#17 0x82f2ec0e in mozilla::layers::ShadowLayersParent::RecvUpdate (this=0x4a95f400, cset=<optimized out>, reply=<optimized out>) at /home/george/dev/mozilla-central/gfx/layers/ipc/ShadowLayersParent.cpp:361
#18 0x82dd7688 in mozilla::layers::PLayersParent::OnMessageReceived (this=0x4a95f400, __msg=..., __reply=@0x472ff3f4) at /home/george/dev/mozilla-central/obj-android/ipc/ipdl/PLayersParent.cpp:220
#19 0x82dc8a72 in mozilla::dom::PContentParent::OnMessageReceived (this=0x4ae71c00, __msg=..., __reply=@0x472ff3f4) at /home/george/dev/mozilla-central/obj-android/ipc/ipdl/PContentParent.cpp:1551
#20 0x82d9f128 in mozilla::ipc::SyncChannel::OnDispatchMessage (this=0x4ae71c08, msg=...) at /home/george/dev/mozilla-central/ipc/glue/SyncChannel.cpp:175
#21 0x82d9bdfe in mozilla::ipc::RPCChannel::OnMaybeDequeueOne (this=0x4ae71c08) at /home/george/dev/mozilla-central/ipc/glue/RPCChannel.cpp:432
#22 0x82d9c87c in DispatchToMethod<mozilla::ipc::RPCChannel, bool (mozilla::ipc::RPCChannel::*)()> (arg=<optimized out>, method=<optimized out>, obj=<optimized out>) at /home/george/dev/mozilla-central/ipc/chromium/src/base/tuple.h:383
#23 RunnableMethod<mozilla::ipc::RPCChannel, bool (mozilla::ipc::RPCChannel::*)(), Tuple0>::Run (this=<optimized out>) at /home/george/dev/mozilla-central/ipc/chromium/src/base/task.h:307
#24 0x82d9c8be in Run (this=<optimized out>) at ../../dist/include/mozilla/ipc/RPCChannel.h:462
#25 mozilla::ipc::RPCChannel::DequeueTask::Run (this=0x4ddb1100) at ../../dist/include/mozilla/ipc/RPCChannel.h:485
#26 0x82ebf9ae in MessageLoop::RunTask (this=0x470330e0, task=0x4ddb1100) at /home/george/dev/mozilla-central/ipc/chromium/src/base/message_loop.cc:318
#27 0x82ebffe0 in MessageLoop::DeferOrRunPendingTask (this=0x0, pending_task=<optimized out>) at /home/george/dev/mozilla-central/ipc/chromium/src/base/message_loop.cc:326
#28 0x82ec0372 in MessageLoop::DoWork (this=0x470330e0) at /home/george/dev/mozilla-central/ipc/chromium/src/base/message_loop.cc:426
#29 0x82d9a290 in mozilla::ipc::DoWorkRunnable::Run (this=<optimized out>) at /home/george/dev/mozilla-central/ipc/glue/MessagePump.cpp:70
#30 0x82e8b3de in nsThread::ProcessNextEvent (this=0x4701e100, mayWait=<optimized out>, result=<optimized out>) at /home/george/dev/mozilla-central/xpcom/threads/nsThread.cpp:660
#31 0x82e5224c in NS_ProcessNextEvent_P (thread=0x0, mayWait=false) at /home/george/dev/mozilla-central/obj-android/xpcom/build/nsThreadUtils.cpp:245
#32 0x82d99fda in mozilla::ipc::MessagePump::Run (this=0x4701d1c0, aDelegate=0x470330e0) at /home/george/dev/mozilla-central/ipc/glue/MessagePump.cpp:110
#33 0x82ebfdbe in MessageLoop::RunInternal (this=0x470330e0) at /home/george/dev/mozilla-central/ipc/chromium/src/base/message_loop.cc:208
#34 0x82ebfe1e in RunHandler (this=<optimized out>) at /home/george/dev/mozilla-central/ipc/chromium/src/base/message_loop.cc:201
#35 MessageLoop::Run (this=0x470330e0) at /home/george/dev/mozilla-central/ipc/chromium/src/base/message_loop.cc:175
#36 0x82ce405a in nsBaseAppShell::Run (this=0x4707f340) at /home/george/dev/mozilla-central/widget/xpwidgets/nsBaseAppShell.cpp:189
#37 0x82b95b82 in nsAppStartup::Run (this=0x470cc160) at /home/george/dev/mozilla-central/toolkit/components/startup/nsAppStartup.cpp:220
#38 0x8226efc8 in XRE_main (argc=<optimized out>, argv=<optimized out>, aAppData=<optimized out>) at /home/george/dev/mozilla-central/toolkit/xre/nsAppRunner.cpp:3537
#39 0x82274f78 in GeckoStart (data=<optimized out>) at /home/george/dev/mozilla-central/toolkit/xre/nsAndroidStartup.cpp:103
#40 Java_org_mozilla_gecko_GeckoAppShell_nativeRun (jenv=<optimized out>, jc=<optimized out>, jargs=<optimized out>) at /home/george/dev/mozilla-central/toolkit/xre/nsAndroidStartup.cpp:132
#41 0x8031536c in Java_org_mozilla_gecko_GeckoAppShell_nativeRun (jenv=0x0, jc=0x3fdc88, one=0x3fc0) at /home/george/dev/mozilla-central/other-licenses/android/APKOpen.cpp:286
#42 0xaca11e38 in dvmPlatformInvoke () from /home/george/dev/moz-gdb/lib/HT018P803942/system/lib/libdvm.so
#43 0xaca436e2 in dvmCallJNIMethod_general () from /home/george/dev/moz-gdb/lib/HT018P803942/system/lib/libdvm.so
#44 0xaca48e64 in dvmResolveNativeMethod () from /home/george/dev/moz-gdb/lib/HT018P803942/system/lib/libdvm.so
#45 0xaca17038 in dvmJitToInterpNoChain () from /home/george/dev/moz-gdb/lib/HT018P803942/system/lib/libdvm.so
#46 0xaca17038 in dvmJitToInterpNoChain () from /home/george/dev/moz-gdb/lib/HT018P803942/system/lib/libdvm.so
I'm using falling leaves css for a testcase:

http://people.mozilla.com/~gwright/falling_leaves/falling_leaves.html

I find it's much more easily reproducible on an optimised build. On an optimised build I reckon it crashes > 50% of the time, but on a non-optimised build it can take lots of page loads (20-30 sometimes) before it crashes, but the backtrace is the same in both cases.
This is a test binary for Android that will guarantee segfault if the driver tries to access beyond the bounds of the pixel buffer we pass in at mozilla::gl::GLContext::TexSubImage2DWithoutUnpackSubimage

http://people.mozilla.org/~gwright/files/fennec-12.0a1.en-US.android-arm.apk

It seems that sometimes the driver is accessing beyond the bounds of the pixel buffer, but I am not able to find a reliable way to reproduce this. I do, however, have a non-optimised stacktrace now which may be of more use:

#0  memcpy () at bionic/libc/arch-arm/bionic/memcpy.S:101
#1  0x8147caf2 in ?? () from /home/george/dev/android/out/target/product/passion/system/lib/egl/libGLESv2_adreno200.so
#2  0x8147cd5a in ?? () from /home/george/dev/android/out/target/product/passion/system/lib/egl/libGLESv2_adreno200.so
#3  0x8147d550 in ?? () from /home/george/dev/android/out/target/product/passion/system/lib/egl/libGLESv2_adreno200.so
#4  0x8147eb5a in rb_texture_create_hw_image_from_sw () from /home/george/dev/android/out/target/product/passion/system/lib/egl/libGLESv2_adreno200.so
#5  0x8147ec48 in rb_texture_update_hw_subimage () from /home/george/dev/android/out/target/product/passion/system/lib/egl/libGLESv2_adreno200.so
#6  0x8147f900 in rb_texture_loadsubimage () from /home/george/dev/android/out/target/product/passion/system/lib/egl/libGLESv2_adreno200.so
#7  0x8146a638 in TexSubImageLoad () from /home/george/dev/android/out/target/product/passion/system/lib/egl/libGLESv2_adreno200.so
#8  0x8146a86c in qgl2DrvAPI_glTexSubImage2D () from /home/george/dev/android/out/target/product/passion/system/lib/egl/libGLESv2_adreno200.so
#9  0x8145b342 in glTexSubImage2D () from /home/george/dev/android/out/target/product/passion/system/lib/egl/libGLESv2_adreno200.so
#10 0x827e9ed2 in mozilla::gl::GLContext::fTexSubImage2D (this=0x4a03fc00, target=3553, level=0, xoffset=0, yoffset=0, width=110, height=110, format=6408, type=5121, pixels=0x46dd92f0) at ../../../dist/include/GLContext.h:2168
#11 0x83457f0a in mozilla::gl::GLContext::TexSubImage2DWithoutUnpackSubimage (this=0x4a03fc00, target=3553, level=0, xoffset=0, yoffset=0, width=110, height=110, stride=440, pixelsize=4, format=6408, type=5121, pixels=0x4612d000)
    at /home/george/dev/mozilla-central/gfx/gl/GLContext.cpp:2259
#12 0x83457cb8 in mozilla::gl::GLContext::TexSubImage2D (this=0x4a03fc00, target=3553, level=0, xoffset=0, yoffset=0, width=110, height=110, stride=440, pixelsize=4, format=6408, type=5121, pixels=0x4612d000) at /home/george/dev/mozilla-central/gfx/gl/GLContext.cpp:2148
#13 0x83457ada in mozilla::gl::GLContext::UploadSurfaceToTexture (this=0x4a03fc00, aSurface=0x4a7a5580, aDstRegion=..., aTexture=@0x4a0ca1a8, aOverwrite=false, aSrcPoint=..., aPixelBuffer=false) at /home/george/dev/mozilla-central/gfx/gl/GLContext.cpp:2051
#14 0x8345da60 in mozilla::gl::TextureImageEGL::DirectUpdate(gfxASurface*, nsIntRegion const&, nsIntPoint const&) () from /home/george/dev/mozilla-central/obj-android/dist/bin/libxul.so
#15 0x83454d9e in mozilla::gl::TiledTextureImage::DirectUpdate (this=0x468a4780, aSurf=0x4a7a5580, aRegion=..., aFrom=...) at /home/george/dev/mozilla-central/gfx/gl/GLContext.cpp:857
#16 0x8343eb30 in mozilla::layers::ShadowImageLayerOGL::Swap (this=0x485ead60, aNewFront=..., aNewBack=0x46fe5b18) at /home/george/dev/mozilla-central/gfx/layers/opengl/ImageLayerOGL.cpp:892
#17 0x834504d0 in mozilla::layers::ShadowLayersParent::RecvUpdate (this=0x4a327c70, cset=..., reply=0x46fe608c) at /home/george/dev/mozilla-central/gfx/layers/ipc/ShadowLayersParent.cpp:361
#18 0x8322f60c in mozilla::layers::PLayersParent::OnMessageReceived (this=0x4a327c70, __msg=..., __reply=@0x46fe657c) at /home/george/dev/mozilla-central/obj-android/ipc/ipdl/PLayersParent.cpp:220
#19 0x832145b0 in mozilla::dom::PContentParent::OnMessageReceived (this=0x485e6900, __msg=..., __reply=@0x46fe657c) at /home/george/dev/mozilla-central/obj-android/ipc/ipdl/PContentParent.cpp:1551
#20 0x831d0eea in mozilla::ipc::SyncChannel::OnDispatchMessage (this=0x485e6908, msg=...) at /home/george/dev/mozilla-central/ipc/glue/SyncChannel.cpp:175
#21 0x831c9574 in mozilla::ipc::RPCChannel::OnMaybeDequeueOne (this=0x485e6908) at /home/george/dev/mozilla-central/ipc/glue/RPCChannel.cpp:432
#22 0x831ce73e in DispatchToMethod<mozilla::ipc::RPCChannel, bool (mozilla::ipc::RPCChannel::*)()> (obj=0x485e6908, method=(bool (mozilla::ipc::RPCChannel::*)(mozilla::ipc::RPCChannel * const)) 0x831c93cd <mozilla::ipc::RPCChannel::OnMaybeDequeueOne()>, arg=...)
    at /home/george/dev/mozilla-central/ipc/chromium/src/base/tuple.h:383
#23 0x831ce6b0 in RunnableMethod<mozilla::ipc::RPCChannel, bool (mozilla::ipc::RPCChannel::*)(), Tuple0>::Run (this=0x4aa32f40) at /home/george/dev/mozilla-central/ipc/chromium/src/base/task.h:307
#24 0x831caac8 in mozilla::ipc::RPCChannel::RefCountedTask::Run (this=0x4a823f40) at ../../dist/include/mozilla/ipc/RPCChannel.h:462
#25 0x831cabac in mozilla::ipc::RPCChannel::DequeueTask::Run (this=0x4ab75da8) at ../../dist/include/mozilla/ipc/RPCChannel.h:485
#26 0x833865b6 in MessageLoop::RunTask (this=0x463330e0, task=0x4ab75da8) at /home/george/dev/mozilla-central/ipc/chromium/src/base/message_loop.cc:318
#27 0x83386606 in MessageLoop::DeferOrRunPendingTask (this=0x463330e0, pending_task=...) at /home/george/dev/mozilla-central/ipc/chromium/src/base/message_loop.cc:326
#28 0x83386932 in MessageLoop::DoWork (this=0x463330e0) at /home/george/dev/mozilla-central/ipc/chromium/src/base/message_loop.cc:426
#29 0x831c6e92 in mozilla::ipc::MessagePump::Run (this=0x4631d1c0, aDelegate=0x463330e0) at /home/george/dev/mozilla-central/ipc/glue/MessagePump.cpp:114
#30 0x8338628c in MessageLoop::RunInternal (this=0x463330e0) at /home/george/dev/mozilla-central/ipc/chromium/src/base/message_loop.cc:208
#31 0x8338625e in MessageLoop::RunHandler (this=0x463330e0) at /home/george/dev/mozilla-central/ipc/chromium/src/base/message_loop.cc:201
#32 0x83386206 in MessageLoop::Run (this=0x463330e0) at /home/george/dev/mozilla-central/ipc/chromium/src/base/message_loop.cc:175
#33 0x830be88a in nsBaseAppShell::Run (this=0x4631f580) at /home/george/dev/mozilla-central/widget/xpwidgets/nsBaseAppShell.cpp:189
#34 0x82f18a88 in nsAppStartup::Run (this=0x48556a30) at /home/george/dev/mozilla-central/toolkit/components/startup/nsAppStartup.cpp:220
#35 0x82274470 in XRE_main (argc=3, argv=0x463131e8, aAppData=0x83d3a864) at /home/george/dev/mozilla-central/toolkit/xre/nsAppRunner.cpp:3537
#36 0x8227daba in GeckoStart (data=0x46312400) at /home/george/dev/mozilla-central/toolkit/xre/nsAndroidStartup.cpp:103
#37 0x8227dbb8 in Java_org_mozilla_gecko_GeckoAppShell_nativeRun (jenv=0x29e178, jc=0x4051e770, jargs=0x405317e0) at /home/george/dev/mozilla-central/toolkit/xre/nsAndroidStartup.cpp:132
#38 0x8032286a in Java_org_mozilla_gecko_GeckoAppShell_nativeRun (jenv=0x29e178, jc=0x4051e770, one=0x405317e0) at /home/george/dev/mozilla-central/other-licenses/android/APKOpen.cpp:286
#39 0xaca11e38 in dvmPlatformInvoke () at dalvik/vm/arch/arm/CallEABI.S:243
#40 0xaca436e2 in dvmCallJNIMethod_general (args=0x44849f7c, pResult=0x46fe6c10, method=0x4232c3dc, self=0x2964b0) at dalvik/vm/Jni.c:1729
#41 0xaca48e64 in dvmResolveNativeMethod (args=0x44849f7c, pResult=0x46fe6c10, method=0x4232c3dc, self=0x2964b0) at dalvik/vm/Native.c:116
#42 0xaca17038 in dalvik_mterp () at dalvik/vm/mterp/out/InterpAsm-armv7-a-neon.S:10017
#43 0xaca1c0e8 in dvmMterpStd (self=<optimized out>, glue=0x46fe6c08) at dalvik/vm/mterp/Mterp.c:105
#44 0xaca1afe0 in dvmInterpret (self=0x2964b0, method=0x42332fa0, pResult=<optimized out>) at dalvik/vm/interp/Interp.c:1345
#45 0xaca59c42 in dvmCallMethodV (self=0x2964b0, method=0x42332fa0, obj=0x405302b8, fromJni=false, pResult=0x46fe6ed8, args=...) at dalvik/vm/interp/Stack.c:529
#46 0xaca59e58 in dvmCallMethod (self=0x2964b0, method=0x42332fa0, obj=0x405302b8, pResult=0x2964b0) at dalvik/vm/interp/Stack.c:434
#47 0xaca4e1ae in interpThreadStart (arg=<optimized out>) at dalvik/vm/Thread.c:1712
#48 0xafd118e8 in __thread_entry (func=0xaca4e115 <interpThreadStart>, arg=0x2964b0, tls=<optimized out>) at bionic/libc/bionic/pthread.c:207
#49 0xafd114b4 in pthread_create (thread_out=<optimized out>, attr=0xbecec49c, start_routine=0xaca4e115 <interpThreadStart>, arg=0x2964b0) at bionic/libc/bionic/pthread.c:343
So this only happens when we're using format=GL_RGB and type=GL_UNSIGNED_SHORT_5_6_5. It looks like even though that's the case, the Adreno driver is reading beyond the memory bounds as if the pixel buffer is using a 4 bytes per pixel format.

Allocating a new memory area that is 4*width*height bytes, memcpying the stride*height (2*width*height) to the beginning of that memory area and using that seems to workaround this crash.
(In reply to George Wright (:gw280) from comment #33)
> So this only happens when we're using format=GL_RGB and
> type=GL_UNSIGNED_SHORT_5_6_5. It looks like even though that's the case, the
> Adreno driver is reading beyond the memory bounds as if the pixel buffer is
> using a 4 bytes per pixel format.
> 
> Allocating a new memory area that is 4*width*height bytes, memcpying the
> stride*height (2*width*height) to the beginning of that memory area and
> using that seems to workaround this crash.

Just to be clear, what I meant to say is that the crash with the 110x110 texture in my testcase (which is RGBA8888) was worked around by using glTexImage2D instead of glTexSubImage2D, but that use of glTexImage2D caused the above crash to manifest.
Created attachment 591494 [details] [diff] [review]
fallback to glTexImage2D on adreno 200

Quick patch for review. Not intended to be landed in its current state (specifically the memcpy in TexImage2D - I'm not entirely sure whether it's us or the Adreno drivers doing something crazy).
Attachment #591494 - Flags: review?(bgirard)
Attachment #591494 - Flags: review?(bgirard)
Depends on: 721467
Attachment #591494 - Attachment is obsolete: true
Depends on: 721489
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.