java/openjdk7 still require mounted procfs and fdescfs filesystems. File jdk/src/solaris/native/java/lang/UNIXProcess_md.c have this lines: #ifdef _ALLBSD_SOURCE #define FD_DIR "/dev/fd" #define dirent64 dirent #define readdir64 readdir #else #define FD_DIR "/proc/self/fd" #endif Fix: Add following lines to pkg-message in java/openjdk7 port: ====================================================================== This OpenJDK implementation requires fdescfs(5) mounted on /dev/fd and procfs(5) mounted on /proc. If you have not done it yet, please do the following: mount -t fdescfs fdesc /dev/fd mount -t procfs proc /proc To make it permanent, you need the following lines in /etc/fstab: fdesc /dev/fd fdescfs rw 0 0 proc /proc procfs rw 0 0 ======================================================================
Responsible Changed From-To: freebsd-ports-bugs->glewis Over to maintainer (via the GNATS Auto Assign Tool)
State Changed From-To: open->feedback You don't need /proc mounted at all. I certainly don't have it mounted and I use openjdk7 without any problems. You'll also notice that of the code snippet you provide it's in the '#else' portion (i.e. the non-BSD part). I don't have fdescfs mounted, but I can still look at /dev/fd. Have you got some concrete of examples of leaking file descriptors without it mounted?
State Changed From-To: feedback->closed Feedback timeout.
Yes, this is my mistake about procfs, I think this issue is all about fdescfs, sorry. I run Apache Hadoop cluster on top of FreeBSD and openjdk7, and after some time TaskTracker processes stale with deadlock. After some research I found some threads waiting for UNIXProcess.c termination, and after mounting fdescfs this issue is gone. I can send you jstack out and another required debug information, if you need it. Thank you!
State Changed From-To: closed->open Got some feedback.
I just spend half a day to figure out the same thing: latest openjdk7 do need fdescfs mounted to run hadoop's tasktracker. Please add this to pkg-message to save someone else's time. Thanks.
A commit references this bug: Author: glewis Date: Tue Jun 10 01:33:48 UTC 2014 New revision: 357236 URL: http://svnweb.freebsd.org/changeset/ports/357236 Log: . Add a pkg-message explaining that procfs and fdescfs may be required. PR: 177779 Submitted by: navymaker@rambler-co.ru Changes: head/java/openjdk7/pkg-message
Added a pkg-message as suggested.