[Webkit-unassigned] [Bug 153176] New: [GTK][OSX] ThreadIdentifierData::initialize assertion fails: (m_key != PTHREAD_KEYS_MAX)

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Jan 15 19:58:08 PST 2016


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

            Bug ID: 153176
           Summary: [GTK][OSX] ThreadIdentifierData::initialize assertion
                    fails: (m_key != PTHREAD_KEYS_MAX)
    Classification: Unclassified
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: WebKit Gtk
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: jeremyhu at apple.com
                CC: bugs-noreply at webkitgtk.org

Reported on MacPorts at https://trac.macports.org/ticket/50339

After working through various build issues (bug #152641, bug #152720, bug #153117, bug #153120, bug #153138), we get a successful build, but the resulting library aborts at initialization.

The issue is in ThreadIdentifierData::initialize(ThreadIdentifier id), we're failing the RELEASE_ASSERT.  m_key is PTHREAD_KEYS_MAX for some reason.

void ThreadIdentifierData::initialize(ThreadIdentifier id)
{
    ASSERT(!identifier());
    // Ideally we'd have this as a release assert everywhere, but that would hurt performane.
    // Having this release assert here means that we will catch "didn't call
    // WTF::initializeThreading() soon enough" bugs in release mode.
    RELEASE_ASSERT(m_key != PTHREAD_KEYS_MAX);
    pthread_setspecific(m_key, new ThreadIdentifierData(id));
}

---

I didn't quite believe it, so I changed the RELEASE_ASSERT to a real assert(), and sure enough:

Assertion failed: (m_key != PTHREAD_KEYS_MAX), function identifier, file /.../webkitgtk-2.11.3/Source/WTF/wtf/ThreadIdentifierDataPthreads.cpp, line 64.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-unassigned/attachments/20160116/817c26bd/attachment.html>


More information about the webkit-unassigned mailing list