[Webkit-unassigned] [Bug 187297] [linux] ASSERT: Using an alternative signal stack is not supported. Consider disabling the concurrent GC.

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Jul 4 00:31:46 PDT 2018


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

--- Comment #5 from Mark Lam <mark.lam at apple.com> ---
(In reply to Yusuke Suzuki from comment #4)
> (In reply to Mark Lam from comment #3)
> > According to Thread::getRegisters(), OS(DARWIN) does not depend on the
> > platform registers stashed away by Thread::signalHandlerSuspendResume(). 
> > Instead, it uses a thread_get_state() to get the registers of the target
> > thread.  I quite sure that thread_get_state() does not require the target
> > thread to be the current thread.  In fact, OS(DARWIN) suspends the target
> > thread and reads its registers using thread_get_state().  Therefore,
> > thread_get_state() has to be operating on a different thread there.
> > 
> > Hence, this issue only applies to Linux.
> 
> What happens if
> 
> 1. The target thread starts executing user-defined signal handlers with an
> alternative stack
> 2. While executing this handler, we suspend this thread by using
> thread_suspend.
> 3. Read the state by using thread_get_state()
> 
> When reading the stack pointer at (3), is it pointing to an alternative
> stack?

Good point.  I don't think OS(DARWIN) uses an alternate signal stack, but I should double check.

-- 
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/20180704/08017046/attachment.html>


More information about the webkit-unassigned mailing list