[Webkit-unassigned] [Bug 198093] [CMake] Build with hidden visibility by default

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue May 28 13:47:41 PDT 2019


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

--- Comment #6 from Christopher Reid <chris.reid at sony.com> ---
Thanks for those references, they have been helpful.

I edited the bss script to show duplicated bss symbols that are marked local in both shared objects.
One case of that was g_gigacageBasePtrs was being duplicated in each module which was causing failures in the cases I was looking at (and probably a large chunk of the other failures).
I didn't realize bmalloc has its own export macros switch, g_gigacageBasePtrs was supposed to be export but wasn't because BUSE_EXPORT_MACROS was off. I'll upload a new patch with that on.

The cases I was looking are now passing in minibrowser but WKTR is now deadlocking.

> std::lock_guard<Mutex> lock(Heap::mutex());
> for (unsigned i = numHeaps; i--;) {
>     if (!isActiveHeapKind(static_cast<HeapKind>(i)))
>         continue;
>     PerProcess<PerHeapKind<Heap>>::get()->at(i).scavenge(lock, decommitter, deferredDecommits);

The heap mutex is acquired in the lock_guard then acquired again in the PerProcess<>::getSlowCase.
It seems similar to the other PerProcess issues that were linked.

> $ objdump -t -j .bss -C libjavascriptcoregtk-4.0.so | grep s_object
> 0000000002649098 l     O .bss	0000000000000008              .hidden bmalloc::PerProcess<bmalloc::PerHeapKind<bmalloc::Heap> >::s_object

> $ objdump -t -j .bss -C ../bin/WebKitTestRunner | grep s_object
> 0000000000651070 l     O .bss	0000000000000008              .hidden bmalloc::PerProcess<bmalloc::PerHeapKind<bmalloc::Heap> >::s_object

Interestingly there only seems to be a duplicate instance of it in WKTR. It's  not in the minibrowser binary or libwebkit2gtk.so. The other s_object instances that are in both the jsc and wk shared objects are all marked as global with objdump.

-- 
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/20190528/f3b55fe8/attachment-0001.html>


More information about the webkit-unassigned mailing list