Thanks! On 27 aug 2013, at 13:45, David Holmes <[email protected]> wrote:
> On 27/08/2013 9:41 PM, Staffan Larsen wrote: >> >> On 27 aug 2013, at 13:38, David Holmes <[email protected]> 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. > > Ah! Sorry it's getting late and I missed the sig part. Makes sense now. > > Reviewed. > > Thanks, > David > >> /Staffan >> >>> >>> David >>> >>> >>>> Thanks, >>>> /Staffan >>>> >>>> On 27 aug 2013, at 10:41, Staffan Larsen <[email protected]> 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 >>>> >>
