On 27 aug 2013, at 13:38, David Holmes <david.hol...@oracle.com> wrote:
> On 27/08/2013 6:48 PM, Staffan Larsen wrote: >> I have also made a fix for hotspot. I messed up the link in the last email >> so here are both webrevs. >> >> jdk: http://cr.openjdk.java.net/~sla/8023786/webrev.00/ > > Seems okay. > >> hotspot: http://cr.openjdk.java.net/~sla/8023720/webrev.00/ > > ??? You didn't use _setjmp/_longjmp you just tried to save and restore the > current thread's sigmask. Which won't help in general if longjmp just fubar'd > the process sigmask. The effect of setting the process sigmask in a > multi-threaded process is undefined. Ah, but in this case we use sigsetjmp/siglongjmp which do not touch the signal mask if sigsetjmp is called with 0 as the second parameter. /Staffan > > David > > >> Thanks, >> /Staffan >> >> On 27 aug 2013, at 10:41, Staffan Larsen <staffan.lar...@oracle.com> wrote: >> >>> The original conversation about this problem is here: >>> http://mail.openjdk.java.net/pipermail/serviceability-dev/2013-August/011318.html >>> >>> In short, setjmp/longjmp on OS X messes up the signal mask and we should >>> use _setjmp/_longjmp instead. >>> >>> This change fixes two occurences in the jdk. There are a couple more in the >>> client and hotspot areas which I will file followup bugs about. >>> >>> webrev: http://cr.openjdk.java.net/~sla/8023720/webrev.00/ >>> >>> Thanks, >>> /Staffan >>