java/openjdk7 still require mounted procfs and fdescfs filesystems.
File jdk/src/solaris/native/java/lang/UNIXProcess_md.c have this lines:
#define FD_DIR "/dev/fd"
#define dirent64 dirent
#define readdir64 readdir
#define FD_DIR "/proc/self/fd"
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
Over to maintainer (via the GNATS Auto Assign Tool)
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?
Yes, this is my mistake about procfs, I think this issue is all about
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
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.
A commit references this bug:
Date: Tue Jun 10 01:33:48 UTC 2014
New revision: 357236
. Add a pkg-message explaining that procfs and fdescfs may be required.
Submitted by: email@example.com
Added a pkg-message as suggested.