Closed Bug 1239162 Opened 10 years ago Closed 10 years ago

Intermittent test_FrameSelection.html | application crashed [@ pthread_mutex_lock_impl]

Categories

(Core :: Graphics: Layers, defect)

43 Branch
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 1116473
Tracking Status
firefox45 --- affected
firefox46 --- affected

People

(Reporter: KWierso, Assigned: pchang)

References

Details

(Keywords: crash, intermittent-failure, Whiteboard: [gfx-noted])

Attachments

(1 obsolete file)

Component: Audio/Video → Audio/Video: Playback
2 libxul.so!mozilla::OffTheBooksMutex::Lock [BlockingResourceBase.cpp:672b054df145 : 382 + 0x5] 3 libxul.so!mozilla::gl::AndroidSurfaceTexture::Attach [Monitor.h:672b054df145 : 35 + 0x3] 4 libxul.so!mozilla::layers::SurfaceTextureHost::Lock [TextureHostOGL.cpp:672b054df145 : 476 + 0x5] 5 libxul.so!mozilla::layers::ImageHost::Lock [ImageHost.cpp:672b054df145 : 516 + 0x3] 6 libxul.so!mozilla::layers::AutoLockCompositableHost::AutoLockCompositableHost [CompositableHost.h:672b054df145 : 255 + 0x3] 7 libxul.so!mozilla::layers::ImageHost::Composite [ImageHost.cpp:672b054df145 : 313 + 0x7] 8 libxul.so + 0x9cf8a7 9 libxul.so!mozilla::layers::RenderWithAllMasks<mozilla::layers::ImageLayerComposite::RenderLayer(const IntRect&)::<lambda(mozilla::layers::EffectChain&, const Rect&)> > [LayerManagerComposite.h:672b054df145 : 566 + 0x9] 10 libxul.so!mozilla::layers::ImageLayerComposite::RenderLayer [ImageLayerComposite.cpp:672b054df145 : 105 + 0xd] 11 libxul.so!mozilla::layers::RenderLayers<mozilla::layers::ContainerLayerComposite> [ContainerLayerComposite.cpp:672b054df145 : 577 + 0x1] 12 libxul.so!mozilla::layers::ContainerRender<mozilla::layers::ContainerLayerComposite> [ContainerLayerComposite.cpp:672b054df145 : 741 + 0x3] 13 libxul.so!mozilla::layers::RenderLayers<mozilla::layers::ContainerLayerComposite> [ContainerLayerComposite.cpp:672b054df145 : 577 + 0x1] 14 libxul.so!mozilla::layers::ContainerRender<mozilla::layers::ContainerLayerComposite> [ContainerLayerComposite.cpp:672b054df145 : 741 + 0x3] 15 libxul.so!mozilla::layers::LayerManagerComposite::Render [LayerManagerComposite.cpp:672b054df145 : 871 + 0x1] 16 libxul.so!mozilla::layers::LayerManagerComposite::UpdateAndRender [LayerManagerComposite.cpp:672b054df145 : 445 + 0x7] 17 libxul.so!mozilla::layers::LayerManagerComposite::EndTransaction [LayerManagerComposite.cpp:672b054df145 : 367 + 0x5] 18 libxul.so!mozilla::layers::CompositorParent::CompositeToTarget [CompositorParent.cpp:672b054df145 : 1175 + 0x7] 19 libxul.so!mozilla::layers::CompositorVsyncScheduler::Composite [CompositorParent.cpp:672b054df145 : 441 + 0x5] Looks like a bug of gfx...
Component: Audio/Video: Playback → Graphics: Layers
Based on comment 2, I guess the android surface texture(mSurfTex) already got free in the client side but still be used in host side because we use raw ptr to save this texture[1]. [1]https://dxr.mozilla.org/mozilla-central/source/gfx/layers/opengl/TextureHostOGL.h#417 I will use RefPtr to save this texture to see it is still reproduced or not.
Assignee: nobody → howareyou322
(In reply to peter chang[:pchang][:peter] from comment #9) > Created attachment 8720625 [details] > MozReview Request: Bug 1239162 Keep android surfacetexture during the > lifecycle of texture host, r?nical > > Review commit: https://reviewboard.mozilla.org/r/35385/diff/#index_header > See other reviews: https://reviewboard.mozilla.org/r/35385/ With this patch, I can't reproduce this in comment 7.
(In reply to peter chang[:pchang][:peter] from comment #9) > Created attachment 8720625 [details] > MozReview Request: Bug 1239162 Keep android surfacetexture during the > lifecycle of texture host, r?nical > > Review commit: https://reviewboard.mozilla.org/r/35385/diff/#index_header > See other reviews: https://reviewboard.mozilla.org/r/35385/ I believe this crash was caused by the android surface texture got destroyed in client side(ActorDestory), but it was used during the composition. So keep this android surfacetexutre inside texture host should fix this problem.
Attachment #8720625 - Flags: review?(nical.bugzilla) → review+
Comment on attachment 8720625 [details] MozReview Request: Bug 1239162 Keep android surfacetexture during the lifecycle of texture host, r?nical https://reviewboard.mozilla.org/r/35385/#review32673 r+ with 1 modification: Please override DeallocateDeviceData so that it nulls out the RefPtr. In some rare cases, textures happen to be held alive just a bit longer than the widget during shutdown, which can cause some gpu resources to outlive the widget's gl context and that's bad. So we should avoid adding string references to gl resources that may outlive the widget and DeallocateDeviceData should take care of that.
(In reply to Nicolas Silva [:nical] from comment #13) > Comment on attachment 8720625 [details] > MozReview Request: Bug 1239162 Keep android surfacetexture during the > lifecycle of texture host, r?nical > > https://reviewboard.mozilla.org/r/35385/#review32673 > > r+ with 1 modification: Please override DeallocateDeviceData so that it > nulls out the RefPtr. In some rare cases, textures happen to be held alive > just a bit longer than the widget during shutdown, which can cause some gpu > resources to outlive the widget's gl context and that's bad. So we should > avoid adding string references to gl resources that may outlive the widget > and DeallocateDeviceData should take care of that. Just found this problem was addressed by bug 1116473. But I will create another bug to address reviewer's comment in comment 13.
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → DUPLICATE
Blocks: 1251163
Attachment #8720625 - Attachment is obsolete: true
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: