Date: Tue, 6 Dec 2005 15:48:31 -0800 (PST) From: freebsd@spatula.net To: bug-followup@FreeBSD.org Cc: freebsd-java@FreeBSD.org Subject: Re: threads/84778: libpthread busy loop/hang with Java when handling signals and Runtime.exec Message-ID: <20051206154223.C2752@turing> In-Reply-To: <20051206153047.J2752@turing> References: <200512062320.jB6NK9RS075945@freefall.freebsd.org> <20051206153047.J2752@turing>
next in thread | previous in thread | raw e-mail | index | archive | help
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
--
"The aptly-named morons.org is an obscenity-laced screed..."
-- Robert P. Lockwood, Catholic League director of research
Nick Johnson, version 2.1 http://web.morons.org/
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20051206154223.C2752>
