threads/84778: libpthread busy loop/hang with Java when handling signals and Runtime.exec

Panagiotis Astithas past at ebs.gr
Wed Dec 7 01:25:38 PST 2005


freebsd at spatula.net wrote:
> I have found the problem, at long last.
> 
> Resin uses a custom JNI library for acceleration of some features.  In 
> their compilation process, they specify -lc_r for the threading library 
> used in their JNI library.
> 
> This in turn seems to be the cause of unexpected and erratic behaviour 
> when running Java with libpthread, and probably explains why the 
> problems completely disappear when mapping Java to use libc_r.
> 
> Modifying the makefile to link the JNI library to libpthread completely 
> alleviates the signal handling problems.  The process can be suspended 
> and resumed from the keyboard ad-nauseam.  Removing the JNI library from 
> the picture entirely has the same effect (Resin will use the native Java 
> code if the JNI library cannot be loaded.)
> 
> I will follow up with the Resin folks and submit a patch to detect the 
> thread library that is in use and use that one when compiling the JNI 
> library.
> 
> Please close this bug.
> 
>    Nick

Congratulations for your debugging work and thank you for being so 
persistent!

Panagiotis


More information about the freebsd-java mailing list