From jonny.wikstrom at genesis.se Thu May 22 01:23:08 2025 From: jonny.wikstrom at genesis.se (=?utf-8?B?Sm9ubnkgV2lrc3Ryw7Zt?=) Date: Thu, 22 May 2025 08:23:08 +0000 Subject: [webkit-help] "HeapHelper" recieved signal SIGSEGV Message-ID: Hello, We are trying to develop a linux desktop application to interact with our web application and have chosen to build it using gtk-4 and webkitgtk. I started running into seemingly random segfaults using 2.48.1 from the debian repo so I built webkitgtk-2.48.2 from the tar-ball available for download from the webkitgtk site, in hopes of it solving the issue. However, this was not the case. Still getting segfaults that to me seem to be outside of the scope of our project. I have no clue where to begin searching for a solution for this. Output of gdb bt full: Thread 77 "HeapHelper" received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7fff1a7fc6c0 (LWP 227548)] 0x00007ffff0c375dc in JSC::MethodTable::visitChildren (visitor=..., cell=0x7fffd59742e0, this=0x30) at /home/username/webkitgtk-2.48.2/Source/JavaScriptCore/runtime/ClassInfo.h:115 115??? ALWAYS_INLINE void visitChildren(JSCell* cell, SlotVisitor& visitor) const { visitChildrenWithSlotVisitor(cell, visitor); } (gdb) bt full #0 0x00007ffff0c375dc in JSC::MethodTable::visitChildren(JSC::JSCell*, JSC::SlotVisitor&) const (visitor=..., cell=0x7fffd59742e0, this=0x30) at /home/username/webkitgtk-2.48.2/Source/JavaScriptCore/runtime/ClassInfo.h:115 currentCellScope = {m_visitor = @0x7fffde184700} countdown = 95 this = 0x7fffde184700 status = locker = { = {}, m_lock = , m_isLocked = } #1 JSC::SlotVisitor::visitChildren(JSC::JSCell const*) (cell=0x7fffd59742e0, this=0x7fffde184700) at /home/username/webkitgtk-2.48.2/Source/JavaScriptCore/heap/SlotVisitor.cpp:399 currentCellScope = {m_visitor = @0x7fffde184700} countdown = 95 this = 0x7fffde184700 status = locker = { = {}, m_lock = , m_isLocked = } #2 operator()(JSC::MarkStackArray&) const (__closure=__closure at entry=0x7fff1a7fb480, stack=...) at /home/username/webkitgtk-2.48.2/Source/JavaScriptCore/heap/SlotVisitor.cpp:509 countdown = 95 this = 0x7fffde184700 status = locker = { = {}, m_lock = , m_isLocked = } #3 0x00007ffff0c39e77 in JSC::SlotVisitor::forEachMarkStack > (func=..., this=0x7fffde184700) at /home/username/webkitgtk-2.48.2/Source/JavaScriptCore/heap/SlotVisitorInlines.h:190 status = locker = { = {}, m_lock = @0x7fffde1847bc, m_isLocked = true} #4 JSC::SlotVisitor::drain(WTF::MonotonicTime) (this=this at entry=0x7fffde184700, timeout=timeout at entry=...) at /home/username/webkitgtk-2.48.2/Source/JavaScriptCore/heap/SlotVisitor.cpp:499 status = locker = { = {}, m_lock = @0x7fffde1847bc, m_isLocked = true} #5 0x00007ffff0c3a620 in JSC::SlotVisitor::drainFromShared(JSC::SlotVisitor::SharedDrainMode, WTF::MonotonicTime) (this=this at entry=0x7fffde184700, sharedDrainMode=sharedDrainMode at entry=JSC::SlotVisitor::HelperDrain, timeout=..., timeout at entry=...) at /home/username/webkitgtk-2.48.2/Source/JavaScriptCore/heap/SlotVisitor.cpp:699 bonusTask = {m_ptr = } isActive = #6 0x00007ffff0bf4c1b in operator() (__closure=0x7fffde4e80f0) at /home/username/webkitgtk-2.48.2/Source/JavaScriptCore/heap/Heap.cpp:1487 visitor = 0x7fffde184700 this = 0x7fffd55410c0 #7 WTF::SharedTaskFunctor >::run(void) (this=0x7fffde4e80e0) at /home/username/webkitgtk-2.48.2/WTF/Headers/wtf/SharedTask.h:91 #8 0x00007ffff1811cd7 in WTF::ParallelHelperClient::runTask(WTF::RefPtr, WTF::RawPtrTraits >, WTF::DefaultRefDerefTraits > > const&) (this=0x7fffd5541428, task=...) at /home/username/webkitgtk-2.48.2/Source/WTF/wtf/ParallelHelperPool.cpp:110 #9 0x00007ffff1811da1 in WTF::ParallelHelperPool::Thread::work() (this=0x7fffde4b02c0) at /home/username/webkitgtk-2.48.2/Source/WTF/wtf/ParallelHelperPool.cpp:201 #10 0x00007ffff17e60a7 in operator() (__closure=0x7fffde498788) at /home/username/webkitgtk-2.48.2/Source/WTF/wtf/AutomaticThread.cpp:225 result = stopImpl = {__thread = } this = 0x7fffde4b02c0 preserveThisForThread = {m_ptr = 0x7fffde4b02c0} #11 WTF::Detail::CallableWrapper, void>::call(void) (this=0x7fffde498780) at /home/username/webkitgtk-2.48.2/Source/WTF/wtf/Function.h:53 #12 0x00007ffff1856f16 in WTF::Function::operator()() const (this=) at /home/username/webkitgtk-2.48.2/Source/WTF/wtf/Function.h:79 function = {m_callableWrapper = std::unique_ptr> = {get() = 0x7fffde498780}} #13 WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*) (newThreadContext=0x7fffde4b04f0) at /home/username/webkitgtk-2.48.2/Source/WTF/wtf/Threading.cpp:268 function = {m_callableWrapper = std::unique_ptr> = {get() = 0x7fffde498780}} #14 0x00007ffff18b9429 in WTF::wtfThreadEntryPoint(void*) (context=) at /home/username/webkitgtk-2.48.2/Source/WTF/wtf/posix/ThreadingPOSIX.cpp:241 #15 0x00007ffff1ec81f5 in start_thread (arg=) at ./nptl/pthread_create.c:442 ret = pd = unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140733637969600, 1972617451061591819, -240, 0, 140734015439344, 140733629579264, -1973119925991817461, -1972639557268455669}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = #16 0x00007ffff1f4889c in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81 (gdb) Any help would be much appriciated. Regards, Jonny Wikstr?m -------------- next part -------------- An HTML attachment was scrubbed... URL: