[Webkit-unassigned] [Bug 211365] New: [GTK] Tests exiting early due to TextureMapperShaderProgram variables ASSERTING isMainThread

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sun May 3 21:08:27 PDT 2020


https://bugs.webkit.org/show_bug.cgi?id=211365

            Bug ID: 211365
           Summary: [GTK] Tests exiting early due to
                    TextureMapperShaderProgram variables ASSERTING
                    isMainThread
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: WebKitGTK
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: lmoura at igalia.com
                CC: bugs-noreply at webkitgtk.org

>From bug161800:

>> Since AtomString has thread-affinity, static NeverDestroyed<const AtomString> is basically only safe for the main-thread use.
>> We should ensure that this is only used in the main-thread. To do that, this patch introduces MainThreadNeverDestroyed and
>> MainThreadLazyNeverDestroyed. They are NeverDestroyed and LazyNeverDestroyed + main-thread assertions.

The patch for that bug changed the TEXMAP_DECLARE_VARIABLE field 'name' type from NeverDestroyed to MainThreadNeverDestroyed.

Sample backtrace:

ASSERTION FAILED: isMainThread()
DerivedSources/ForwardingHeaders/wtf/NeverDestroyed.h(55) : static void WTF::MainThreadAccessTraits::assertAccess()
1   0x7efd83ffb94f WTFCrash
2   0x7efd91e1eb7a WTF::ConditionalCrashOnOverflow::setShouldCrashOnOverflow(bool)
3   0x7efd93529bcf WTF::MainThreadAccessTraits::assertAccess()
4   0x7efd9352ba49 WTF::NeverDestroyed<WTF::AtomString const, WTF::MainThreadAccessTraits>::NeverDestroyed<char const (&) [10], WTF::AtomString::ConstructFromLiteralTag>(char const (&) [10], WTF::AtomString::ConstructFromLiteralTag&&)
5   0x7efd9352a95e WebCore::TextureMapperShaderProgram::samplerLocation()
6   0x7efd9352812c WebCore::TextureMapperGL::drawTexturedQuadWithProgram(WebCore::TextureMapperShaderProgram&, unsigned int, int, WebCore::IntSize const&, WebCore::FloatRect const&, WebCore::TransformationMatrix const&, float)
7   0x7efd93526441 WebCore::TextureMapperGL::drawTexture(unsigned int, int, WebCore::IntSize const&, WebCore::FloatRect const&, WebCore::TransformationMatrix const&, float, unsigned int)
8   0x7efd935260e7 WebCore::TextureMapperGL::drawTexture(WebCore::BitmapTexture const&, WebCore::FloatRect const&, WebCore::TransformationMatrix const&, float, unsigned int)
9   0x7efd96643b2e WebCore::TextureMapperTile::paint(WebCore::TextureMapper&, WebCore::TransformationMatrix const&, float, unsigned int)
10  0x7efd9353ab45 WebCore::CoordinatedBackingStore::paintTilesToTextureMapper(WTF::Vector<WebCore::TextureMapperTile*, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&, WebCore::TextureMapper&, WebCore::TransformationMatrix const&, float, WebCore::FloatRect const&)
11  0x7efd9353afe4 WebCore::CoordinatedBackingStore::paintToTextureMapper(WebCore::TextureMapper&, WebCore::FloatRect const&, WebCore::TransformationMatrix const&, float)
12  0x7efd9351cf2c WebCore::TextureMapperLayer::paintSelf(WebCore::TextureMapperPaintOptions const&)
13  0x7efd9351d4fa WebCore::TextureMapperLayer::paintSelfAndChildren(WebCore::TextureMapperPaintOptions const&)
14  0x7efd9351dae6 WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica(WebCore::TextureMapperPaintOptions const&)
15  0x7efd9351f8c9 WebCore::TextureMapperLayer::paintRecursive(WebCore::TextureMapperPaintOptions const&)
16  0x7efd9351d77f WebCore::TextureMapperLayer::paintSelfAndChildren(WebCore::TextureMapperPaintOptions const&)
17  0x7efd9351dae6 WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica(WebCore::TextureMapperPaintOptions const&)
18  0x7efd9351f8c9 WebCore::TextureMapperLayer::paintRecursive(WebCore::TextureMapperPaintOptions const&)
19  0x7efd9351d77f WebCore::TextureMapperLayer::paintSelfAndChildren(WebCore::TextureMapperPaintOptions const&)
20  0x7efd9351dae6 WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica(WebCore::TextureMapperPaintOptions const&)
21  0x7efd9351f8c9 WebCore::TextureMapperLayer::paintRecursive(WebCore::TextureMapperPaintOptions const&)
22  0x7efd9351d77f WebCore::TextureMapperLayer::paintSelfAndChildren(WebCore::TextureMapperPaintOptions const&)
23  0x7efd9351dae6 WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica(WebCore::TextureMapperPaintOptions const&)
24  0x7efd9351f8c9 WebCore::TextureMapperLayer::paintRecursive(WebCore::TextureMapperPaintOptions const&)
25  0x7efd9351d77f WebCore::TextureMapperLayer::paintSelfAndChildren(WebCore::TextureMapperPaintOptions const&)
26  0x7efd9351dae6 WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica(WebCore::TextureMapperPaintOptions const&)
27  0x7efd9351f8c9 WebCore::TextureMapperLayer::paintRecursive(WebCore::TextureMapperPaintOptions const&)
28  0x7efd9351d77f WebCore::TextureMapperLayer::paintSelfAndChildren(WebCore::TextureMapperPaintOptions const&)
29  0x7efd9351dae6 WebCore::TextureMapperLayer::paintSelfAndChildrenWithReplica(WebCore::TextureMapperPaintOptions const&)
30  0x7efd9351f8c9 WebCore::TextureMapperLayer::paintRecursive(WebCore::TextureMapperPaintOptions const&)
31  0x7efd9351d77f WebCore::TextureMapperLayer::paintSelfAndChildren(WebCore::TextureMapperPaintOptions const&)

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20200504/bdacc609/attachment-0001.htm>


More information about the webkit-unassigned mailing list